翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS Panorama ログを表示する
AWS Panorama は、アプリケーションイベントとシステムイベントを Amazon CloudWatch Logs にレポートします。問題が発生した場合は、イベントログを使用して AWS Panorama アプリケーションのデバッグやアプリケーション設定のトラブルシューティングを行うことができます。
CloudWatch Logs でログを表示する
-
CloudWatch Logs コンソールの [[ロググループ] ページ
] を開きます。 -
次のグループで AWS Panorama アプリケーションログとアプライアンスログを検索します:
-
デバイスログ —
/aws/panorama/devices/
device-id
-
アプリケーションログ –
/aws/panorama/devices/
device-id
/applications/instance-id
-
システムソフトウェアの更新後にアプライアンスを再プロビジョニングすると、プロビジョニング USB ドライブのログも表示できます。
デバイスログの表示
AWS Panorama アプライアンス は、デバイスのロググループと、デプロイする各アプリケーションインスタンスのグループを作成します。デバイスログには、アプリケーションのステータス、ソフトウェアのアップグレード、システム設定に関する情報が含まれます。
デバイスログ — /aws/panorama/devices/device-id
device-id
-
occ_log
— コントローラープロセスからの出力。このプロセスは、アプリケーションのデプロイを調整し、各アプリケーションインスタンスのノードの状態をレポートします。 -
ota_log
— 無線通信 (OTA) ソフトウェアアップグレードを調整するプロセスから出力されます。 -
syslog
— プロセス間で送信されたメッセージをキャプチャする、デバイスの syslog プロセスからの出力。 -
kern_log
— デバイスの Linux カーネルからのイベント。 -
logging_setup_logs
— CloudWatch Logs エージェントを設定するプロセスからの出力。 -
cloudwatch_agent_logs
— CloudWatch Logs エージェントからの出力。 -
shadow_log
— AWS IoT デバイスシャドウからの出力。
アプリケーションログの表示
アプリケーションインスタンスのロググループには、ノードにちなんで名付けられた各ノードのログストリームが含まれます。
アプリケーションログ – /aws/panorama/devices/device-id
/applications/instance-id
device-id
/applications/instance-id
-
コード — アプリケーションコードと AWS Panorama アプリケーション SDK からの出力。
/opt/aws/panorama/logs
からのアプリケーションログを集約します。 -
モデル — 推論リクエストをモデルと連携させるプロセスからの出力。
-
ストリーム — カメラストリームからのビデオをデコードするプロセスからの出力。
-
ディスプレイ — HDMI ポートのビデオ出力をレンダリングするプロセスからの出力。
-
mds
— アプライアンスメタデータサーバーからのログ。 -
console_output
— 標準出力ストリームとエラーストリームをコードコンテナからキャプチャします。
CloudWatch Logs にログが表示されない場合は、正しい AWS リージョンにあることを確認します。その場合は、アプライアンスの AWS への接続またはアプライアンスの AWS Identity and Access Management (IAM) ロールに対するアクセス許可に問題がある可能性があります。
アプリケーションログの設定をする
/opt/aws/panorama/logs
にログファイルを書き込むための Python ロガーを設定します。アプライアンスはこの場所から CloudWatch Logs にログをストリーミングします。ディスク容量を過剰に使用しないようにするには、最大ファイルサイズを 10 MiB、バックアップ数を 1 にします。次の例は、ロガーを作成する方法を示しています。
例 application.py — ロガー設定
def get_logger(name=__name__,level=logging.INFO): logger = logging.getLogger(name) logger.setLevel(level)
LOG_PATH = '/opt/aws/panorama/logs'
handler = RotatingFileHandler("{}/app.log".format(LOG_PATH), maxBytes=10000000, backupCount=1)
formatter = logging.Formatter(fmt='%(asctime)s %(levelname)-8s %(message)s', datefmt='%Y-%m-%d %H:%M:%S') handler.setFormatter(formatter) logger.addHandler(handler) return logger
ロガーをグローバルスコープで初期化し、アプリケーションコード全体で使用します。
例 application.py — ロガーを初期化します
def main(): try: logger.info("INITIALIZING APPLICATION") app = Application() logger.info("PROCESSING STREAMS") while True: app.process_streams() # turn off debug logging after 150 loops if logger.getEffectiveLevel() == logging.DEBUG and app.frame_num == 150: logger.setLevel(logging.INFO) except: logger.exception('Exception during processing loop.')
logger = get_logger(level=logging.INFO)
main()
プロビジョニングログの表示
プロビジョニング中、AWS Panorama アプライアンスは設定アーカイブをアプライアンスに転送するために使用する USB ドライブにログをコピーします。これらのログを使用して、最新のソフトウェアバージョンのアプライアンスのプロビジョニングに関する問題のトラブルシューティングを行います。
重要
プロビジョニングログは、ソフトウェアバージョン 4.3.23 以降に更新されたアプライアンスで使用できます。
アプリケーションログ
-
/panorama/occ.log
— AWS Panorama コントローラーのソフトウェアログ。 -
/panorama/ota_agent.log
— AWS Panorama 無線通信経由 (OTA) 更新エージェントのログ。 -
/panorama/syslog.log
— Linux システムログ。 -
/panorama/kern.log
– Linux カーネルログ。
デバイスからのログ出力
デバイスとアプリケーションのログが CloudWatch Logs に表示されない場合は、USB ドライブを使用して暗号化されたログイメージをデバイスから取得できます。AWS Panorama サービスチームが代わりにログを復号し、デバッグを支援します。
前提条件
手順を実行するには、次のハードウェアが必要になります:
-
USB ドライブ — AWS Panorama アプライアンスからログファイルを転送するための、少なくとも 1 GB のストレージを備えた FAT32 形式の USB フラッシュメモリドライブ。
デバイスからログを出力する
-
panorama
フォルダー内にあるmanaged_logs
フォルダーが入った USB ドライブを用意します。/ └── panorama └── managed_logs
-
USB ドライブをデバイスに接続します。
-
AWS Panorama アプライアンスの電源を切ります。
-
AWS Panorama アプライアンスの電源を入れます。
-
デバイスがログをデバイスにコピーします。この処理中は、ステータス LED が青色に点滅します。
-
その後、ログファイルは
managed_logs
ディレクトリ内にpanorama_device_log_
フォーマットで見つけることができますv1
_dd_hh_mm
.img
ログイメージを自分で復号化することはできません。カスタマーサポート、AWS Panorama のテクニカルアカウントマネージャー、またはソリューションアーキテクトと協力してサービスチームとの調整を行ってください。