Function Computeは、CPU使用率、メモリ使用量、インスタンスのネットワーク状態、インスタンスが同時に処理するリクエスト数などのコアメトリックを表示できるインスタンスレベルのメトリックを提供します。 このトピックでは、インスタンスレベルのメトリックの背景情報、定義、および詳細について説明します。 このトピックでは、インスタンスレベルのメトリックの収集を有効にする方法についても説明します。
このタスクについて
- CPU集約型のシナリオで特定のCPU使用率を表示する方法。
- 単一インスタンスの複数の同時実行を使用するときに、適切な単一インスタンスの並列処理を設定する方法。
- 実行中に関数が失敗した場合は、実行失敗の原因となるコード例外や関数インスタンスのパフォーマンス例外など、関数の実行失敗の原因を確認します。
Function Computeが提供するインスタンスレベルのメトリックは、上記の問題を解決し、Function Computeの各インスタンスの正常性ステータスを理解するのに役立ちます。
インスタンスレベルのメトリックとは
インスタンスレベルのメトリックは、関数の実行に使用されるインスタンスのパフォーマンスメトリックです。 インスタンスが監視され、そのパフォーマンスメトリックがリアルタイムで収集されます。 メトリックは視覚化された方法で表示され、インスタンスのエンドツーエンドのモニタリングとトラブルシューティングパスを提供します。
インスタンスレベルのメトリックは、次のディメンションで表示できます。
- 関数または関数修飾子: インスタンスの関数固有のメトリック。 たとえば、関数Aが2つのインスタンスによって同時に実行される場合、関数固有のCPUメトリックは、これら2つのインスタンスの最大CPU使用率です。
- インスタンス: 特定のインスタンスのメトリック。
注
- 修飾子は、関数が呼び出されたときに渡されるバージョン情報を示します。 バージョン番号またはエイリアスにすることができます。
- インスタンスは、Function Computeによって動的に作成および再利用されます。 各インスタンスは短期間のみ存在します。 インスタンスは管理できません。
メトリクス
インスタンスレベルのメトリクスの収集を有効にすると、Function Computeは関数実行のメトリクスを収集します。 次の方法でインスタンスレベルのメトリックを表示できます。
- 監視センター: Function Computeの監視センターモジュールには、インスタンスレベルのメトリックを視覚化して表示する組み込みのダッシュボードがあります。
Function Computeコンソールにログインし、[モニタリングセンター] ページのダッシュボードで次のメトリクスを表示できます。
- 同じ関数を実行するインスタンスのメトリック
- すべてのインスタンスのメトリックMetrics of all instances
- 指定されたインスタンスのメトリック
- Log Service: Function ComputeはインスタンスレベルのメトリクスをLog Serviceにインポートします。 Log Serviceの分析機能とApplication
Real-Time Monitoring Service (ARMS) のログ収集機能を使用して、カスタムビジュアルダッシュボードを作成できます。
各インスタンスのインスタンスレベルのメトリックは、次の形式で間隔を置いてログに記録されます。
次の表に、インスタンスレベルのメトリックを示します。
GUI 要素 | 説明 | 例 |
---|---|---|
cpuPercent | CPU使用率。 使用されているCPUコアの数を示します。 値は100% を超える場合があります。 | 120% |
cpuQuotaPercent | 推定最大CPU使用率。 関数の実行に使用するメモリとCPUの関係は次のとおりです。
|
50% |
memoryUsageMB | インスタンスによって使用されるメモリの量。 (単位:MB) | 16.87 |
memoryLimitMB | インスタンスで使用できるメモリの最大量。 (単位:MB) | 1024 |
rxBytes | ログが生成される時間間隔でインスタンスが受信したトラフィック。 単位:バイト | 158 |
txBytes | ログが生成される時間間隔でインスタンスによって送信されたトラフィック。 単位:バイト | 1598 |
rxTotalBytes | インスタンスの開始以降にインスタンスが受信したトラフィック。 単位:バイト | 158875 |
txTotalBytes | インスタンスが開始されてからインスタンスによって送信されたトラフィック。 単位:バイト | 36123 |
concurrentRequests | インスタンスが同時に処理するリクエストの数。 | 10 |
hostname | インスタンスが実行されているホストの名前。 | 36123 |
注
- cpuQuotaPercentメトリックは理論的です。 cpuPercentメトリックの値がcpuQuotaPercentメトリックの値を超える場合があります。 この場合、インスタンスは同じホスト上の他のインスタンスのリソースをプリエンプションします。
- インスタンスとシステムモジュール間の通信では、少量のトラフィックが発生します。 したがって、機能内にネットワークアクセスが存在しない場合、少量の送受信トラフィックが生成される。
- インスタンスのトラフィックは、インスタンスのインバウンドトラフィックとアウトバウンドトラフィックのみを表します。 インターネットトラフィックとプライベートネットワークのトラフィックは一緒にカウントされ、この監視チャートに基づいてトラフィック料金を計算することはできません。