このトピックでは、Insightsの概念、シナリオ、使用法のメモ、およびInsightsによって収集される関数メトリックについて説明します。 このトピックでは、Insightsのログをクエリする方法についても説明します。
インサイトとは
コンセプト
- パフォーマンスメトリクス: メモリ使用量、関数実行時間、初期化時間、コールドスタート
- 例外メトリック: 実行失敗とエラーの詳細
- メトリックのトレース: トレースの詳細とサンプリングが実行されるかどうか
Insightsは、関数の各呼び出しを監視して、関数の実行に関する情報を提供します。
シナリオ
- 関数の実行の詳細、パフォーマンスメトリック、およびエラー情報を表示します。
- 関数実行ログを使用してカスタムモニタリングダッシュボードを作成します。
サービスログを関数に記録し、サービスログと分析ログを使用してカスタム監視ダッシュボードを作成できます。 詳細については、「リクエストレベルのメトリックに基づいてGrafanaダッシュボードを作成する」をご参照ください。
使用上の注意
- 有効範囲
Insightsはサービスの構成項目です。 サービスに対してInsightsを有効にすると、Insightsはサービス内のすべての関数に適用されます。 ログエントリは、各機能の実行毎に記録される。
- 前提条件
Insightsを有効にする前に、ログを設定する必要があります。 Insightsのログは、指定したLogstoreに保存されます。 詳細については、「Log Serviceリソースの設定と機能実行ログの表示」をご参照ください。
- 料金
ログがlog Serviceに配信されると、ログストレージに対して課金されます。 Log Serviceの料金の詳細については、「」「料金」をご参照ください。
関数メトリック
Insightsを有効にすると、システムは関数の各実行に関するメトリクスを収集します。 これらのメトリクスは、ロギングの設定時に指定したLogstoreに配信されます。 ログが設定されていない場合、Insightsを有効にできません。
次の表に、Insightsによって収集されるメトリックを示します。
メトリック | 説明 | 例 | 呼び出しごとに記録される |
---|---|---|---|
serviceName | サービスの名前を設定します。 | 私のサービス | 必須 |
functionName | 関数の名前。 | my-function | 必須 |
versionId | バージョンのID。 | 12 | 必須 |
修飾子 | サービスのエイリアス。 | prod | 選択されている場合、 デフォルト値: LATEST。 |
requestId | リクエストの ID です。 | db72ce53-ccbe-4216-af55-642622e01494 | 必須 |
operation | 操作の名前。 | 呼び出し | 必須 |
memoryMB | 関数の最大メモリ。 | 512 | 必須 |
memoryUsageMB | 関数の実行に使用されるメモリ。 | 410 | 必須 |
durationMs | 関数が実行される期間。 | 20.20 | 必須 |
isColdStart | コールドスタートが存在するかどうかを示します。 | false | 選択されている場合、 規定値: false |
hasFunctionError | 関数の実行エラーが発生したかどうかを示します。 | false | 選択されている場合、 規定値: false |
errorType | 関数エラーのタイプ。 設定可能な値は以下のとおりです。
|
FunctionUnhandledError | No. このメトリックは、関数の実行エラーが発生した場合にのみ記録されます。 つまり、hasFunctionError メトリックの値はtrueです。
|
initializationDurationMs | 初期化子関数が実行される期間。 | 99.00 | No. このメトリックは、コールドスタートが発生し、初期化機能が設定されている場合にのみ記録されます。 |
traceContext | Tracing Analysisコンテキスト。 | 371d3ff242fcee9:371d3ff242fcee9:0:1 | No. このメトリックは、Tracing Analysisが設定されている場合にのみ記録されます。 |
isSampled | リクエストがTracing Analysisによってサンプリングされるかどうかを示します。 | true | No. このメトリックは、Tracing Analysisが設定されている場合にのみ記録されます。 |
ログのクエリ
Insightsのログエントリのトピックは、FCInsights:serviceName/functionName
の形式です。
Log Serviceでは、次のクエリ条件を設定して、Insightsのすべてのログを取得できます。__topic __: "FCInsights:test-insights/test"
詳細については、「ログを照会」をご参照ください。