この記事は英語の原文を日本語に翻訳したものです。原文: https://opentelemetry.io/docs/specs/semconv/faas/faas-metrics/
翻訳元: open-telemetry/semantic-conventions v1.44.0(コミット e10a930)
FaaSメトリクスに関するセマンティック規約
ステータス: Development
この文書では、サーバーのプロビジョニングや管理を伴わずに実行される関数のインスタンス(サーバーレス関数、Function as a Service(FaaS)とも呼ばれます)をメトリクスで記述する方法を定義します。
この節で説明する規約は、FaaS(Function as a Service)に固有のものです。FaaSの操作が発生すると、その操作についての洞察を提供するために、その操作についてのメトリクスイベントが生成され報告されます。メトリクスイベントにFaaS属性を追加することで、きめ細かいフィルタリングが可能になります。
メトリクスInstrument
次のメトリクスInstrumentは、FaaSの操作を記述します。
FaaSインスタンス
次のメトリクスは、FaaSインスタンスによって記録されます。
メトリクス: faas.invoke_duration
このメトリクスはrecommendedです。
このメトリクスは、[ 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10 ] のExplicitBucketBoundaries advisoryパラメータを指定すべきです(SHOULD)。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.invoke_duration | Histogram | s | 関数のロジックの実行時間を計測します。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.init_duration
このメトリクスはrecommendedです。
このメトリクスは、[ 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10 ] のExplicitBucketBoundaries advisoryパラメータを指定すべきです(SHOULD)。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.init_duration | Histogram | s | 関数の初期化(コールドスタートなど)の実行時間を計測します。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.coldstarts
このメトリクスはrecommendedです。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.coldstarts | Counter | {coldstart} | 呼び出しのコールドスタート数。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.errors
このメトリクスはrecommendedです。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.errors | Counter | {error} | 呼び出しエラー数。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.invocations
このメトリクスはrecommendedです。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.invocations | Counter | {invocation} | 呼び出しの成功数。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.timeouts
このメトリクスはrecommendedです。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.timeouts | Counter | {timeout} | 呼び出しのタイムアウト数。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.mem_usage
このメトリクスはrecommendedです。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.mem_usage | Histogram | By | 呼び出しごとの最大メモリ使用量の分布。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.cpu_usage
このメトリクスはrecommendedです。
このメトリクスは、[ 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10 ] のExplicitBucketBoundaries advisoryパラメータを指定すべきです(SHOULD)。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.cpu_usage | Histogram | s | 呼び出しごとのCPU使用量の分布。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
メトリクス: faas.net_io
このメトリクスはrecommendedです。
| Name | Instrument Type | Unit (UCUM) | Description | Stability | Entity Associations |
|---|---|---|---|---|---|
faas.net_io | Histogram | By | 呼び出しごとのネットワークI/O使用量の分布。 |
Attributes:
| Key | Stability | Requirement Level | Value Type | Description | Example Values |
|---|---|---|---|---|---|
faas.trigger | Recommended | string | この関数呼び出しの原因となったトリガーの種類。 | datasource; http; pubsub |
faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。
| Value | Description | Stability |
|---|---|---|
datasource | データベースやファイルシステムの読み書きなど、データソースの操作に対する応答。 | |
http | 受信したHTTPリクエストへの応答を提供する。 | |
other | 他のいずれにも当てはまらない場合。 | |
pubsub | メッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。 | |
timer | 定期的に実行されるようスケジュールされた関数。 |
参考文献
メトリクスの参考文献
以下は、さまざまなFaaSプロバイダーで利用可能なメトリクスに関する文書へのリンクです。これは網羅的な一覧ではありません。