ログ - AWS IoT Greengrass

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ログ

logs コマンドを使用して、コアデバイスの Greengrass ログを分析します。

サブコマンド

get

Greengrass ログファイルを収集、フィルタリング、視覚化します。このコマンドは JSON 形式のログファイルのみをサポートします。nucleus 設定のログ記録形式を指定できます。

概要
greengrass-cli logs get [--log-dir path/to/a/log/folder] [--log-file path/to/a/log/file] [--follow true | false ] [--filter <filter> ] [--time-window <start-time>,<end-time> ] [--verbose ] [--no-color ] [--before <value> ] [--after <value> ] [--syslog ] [--max-long-queue-size <value> ]
引数
  • --log-dir-ld。ログファイルをチェックするディレクトリのパス (例: /greengrass/v2/logs)。--syslog と併用しないでください。指定する追加ディレクトリに個別の引数を使用します。少なくくとも --log-dir--log-file の内いずれかを指定する必要があります。1 つのコマンドで 両方の引数を使用することもできます。

  • --log-file-lf。使用するログディレクトリへのパス。指定する追加ディレクトリに個別の引数を使用します。少なくくとも --log-dir--log-file の内いずれかを指定する必要があります。1 つのコマンドで 両方の引数を使用することもできます。

  • --follow-fol。発生するに従って、ログの更新を表示します。Greengrass CLI は引き続き実行され、指定されたログから読み取られます。時間ウィンドウを指定している場合、Greengrass CLI はすべての時間ウィンドウが終了した後にログのモニタリングを停止します。

  • --filter-f。フィルターとして使用するキーワード、正規表現、またはキーと値のペア。この値は、文字列、正規表現、またはキーと値のペアとして指定します。指定する追加フィルターごとに個別の引数を使用します。

    評価後、単一の引数内に指定されている複数のフィルターは OR 演算子で区切られ、追加の引数で指定されたフィルターは AND 演算子で結合されます。たとえば、コマンドに --filter "installed" --filter "name=alpha,name=beta" を含めた場合、Greengrass CLI は、alpha または beta を値に持つ installed キーワードと name キーの両方が含まれるログメッセージをフィルタリングして表示します。

  • --time-window-t。ログ情報を表示する時間ウィンドウ。正確なタイムスタンプと相対オフセットの両方を使用できます。<begin-time>,<end-time> 形式でこの情報を提供する必要があります。開始時間または終了時間を指定しなかった場合、そのオプションの値はデフォルトで、現在のシステムの日付と時刻に設定されます。指定する追加時間ウィンドウごとに個別の引数を使用します。

    Greengrass CLI では、次の形式のタイムスタンプがサポートされています。

    • yyyy-MM-DD、例えば 2020-06-30 など。この形式を使用すると、時間のデフォルトは 00:00:00 になります。

      yyyyMMDD、例えば 20200630 など。この形式を使用すると、時間のデフォルトは 00:00:00 になります。

      HH:mm:ss、例えば 15:30:45 など。この形式を使用すると、日付は現在のシステム日付にデフォルト設定されます。

      HH:mm:ssSSS、例えば 15:30:45 など。この形式を使用すると、日付は現在のシステム日付にデフォルト設定されます。

      YYYY-MM-DD'T'HH:mm:ss'Z'、例えば 2020-06-30T15:30:45Z など。

      YYYY-MM-DD'T'HH:mm:ss、例えば 2020-06-30T15:30:45 など。

      yyyy-MM-dd'T'HH:mm:ss.SSS、例えば 2020-06-30T15:30:45.250 など。

    相対オフセットは、現在のシステム時刻からの時間オフセットを指定します。Greengrass CLI は、相対オフセットに次の形式をサポートしています:+|-[<value>h|hr|hours][valuem|min|minutes][value]s|sec|seconds

    例えば、現在時刻の 1 時間前から 2 時間 15 分前までの時間帯を指定する以下の引数は、--time-window -2h15min,-1hr です。

  • --verbose。 ログメッセージのすべてのフィールドを表示します。--syslog と併用しないでください。

  • --no-color-nc。カラーコーディングを削除します。ログメッセージのデフォルトのカラーコードでは、太字の赤いテキストが使用されます。ANSI エスケープシーケンスを使用するため、UNIX 互換の端末のみをサポートします。

  • --before-b。一致したログエントリの前に表示する行数。デフォルトは0です。

  • --after-a。一致したログエントリの後に表示する行数。デフォルトは0です。

  • --syslog。RFC3164 で定義された syslog プロトコルを使用して、すべてのログファイルを処理します。--log-dir および--verbose と併用しないでください。syslog プロトコルでは、次の形式を使用します: "<$Priority>$Timestamp $Host $Logger ($Class): $Message"。ログファイルを指定しなかった場合、Greengrass CLI は次の場所からログメッセージを読み取ります: /var/log/messages/var/log/syslog、または/var/log/system.log

    AWS IoT Greengrass は、現在 Windows コアデバイスにこの機能をサポートしていません。

  • --max-log-queue-size-m。メモリに割り当てるログエントリの最大数。このオプションを使用して、メモリ使用量を最適化します。デフォルトは 100 です。

出力

次の例は、このコマンドを実行したときに生成される出力を示しています。

$ sudo greengrass-cli logs get --verbose \ --log-file /greengrass/v2/logs/greengrass.log \ --filter deployment,serviceName=DeploymentService \ --filter level=INFO \ --time-window 2020-12-08T01:11:17,2020-12-08T01:11:22 2020-12-08T01:11:17.615Z [INFO] (pool-2-thread-14) com.aws.greengrass.deployment.DeploymentService: Current deployment finished. {DeploymentId=44d89f46-1a29-4044-ad89-5151213dfcbc, serviceName=DeploymentService, currentState=RUNNING} 2020-12-08T01:11:17.675Z [INFO] (pool-2-thread-14) com.aws.greengrass.deployment.IotJobsHelper: Updating status of persisted deployment. {Status=SUCCEEDED, StatusDetails={detailed-deployment-status=SUCCESSFUL}, ThingName=MyThing, JobId=22d89f46-1a29-4044-ad89-5151213dfcbc

list-keywords

ログファイルのフィルタリングに使用できる推奨キーワードを表示します。

概要
greengrass-cli logs list-keywords [arguments]
引数

なし

出力

次の例は、このコマンドを実行したときに生成される出力を示しています。

$ sudo greengrass-cli logs list-keywords Here is a list of suggested keywords for Greengrass log: level=$str thread=$str loggerName=$str eventType=$str serviceName=$str error=$str
$ sudo greengrass-cli logs list-keywords --syslog Here is a list of suggested keywords for syslog: priority=$int host=$str logger=$str class=$str

list-log-files

指定したディレクトリにあるログファイルを表示します。

概要
greengrass-cli logs list-log-files [arguments]
引数

--log-dir-ld。ログファイルをチェックするディレクトリのパス。

出力

次の例は、このコマンドを実行したときに生成される出力を示しています。

$ sudo greengrass-cli logs list-log-files -ld /greengrass/v2/logs/ /greengrass/v2/logs/aws.greengrass.Nucleus.log /greengrass/v2/logs/main.log /greengrass/v2/logs/greengrass.log Total 3 files found.