この記事は英語の原文を日本語に翻訳したものです。原文: 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)。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.invoke_durationHistograms関数のロジックの実行時間を計測します。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: 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)。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.init_durationHistograms関数の初期化(コールドスタートなど)の実行時間を計測します。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: faas.coldstarts

このメトリクスはrecommendedです。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.coldstartsCounter{coldstart}呼び出しのコールドスタート数。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: faas.errors

このメトリクスはrecommendedです。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.errorsCounter{error}呼び出しエラー数。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: faas.invocations

このメトリクスはrecommendedです。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.invocationsCounter{invocation}呼び出しの成功数。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: faas.timeouts

このメトリクスはrecommendedです。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.timeoutsCounter{timeout}呼び出しのタイムアウト数。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: faas.mem_usage

このメトリクスはrecommendedです。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.mem_usageHistogramBy呼び出しごとの最大メモリ使用量の分布。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: 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)。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.cpu_usageHistograms呼び出しごとのCPU使用量の分布。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

メトリクス: faas.net_io

このメトリクスはrecommendedです。

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
faas.net_ioHistogramBy呼び出しごとのネットワークI/O使用量の分布。Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
faas.triggerDevelopmentRecommendedstringこの関数呼び出しの原因となったトリガーの種類。datasource; http; pubsub

faas.triggerには、次のよく知られた値の一覧があります。これらのいずれかが該当する場合は、対応する値を使用しなければなりません(MUST)。そうでない場合は、独自の値を使用してもかまいません(MAY)。

ValueDescriptionStability
datasourceデータベースやファイルシステムの読み書きなど、データソースの操作に対する応答。Development
http受信したHTTPリクエストへの応答を提供する。Development
other他のいずれにも当てはまらない場合。Development
pubsubメッセージングシステムにメッセージが送信されたときに実行されるよう設定された関数。Development
timer定期的に実行されるようスケジュールされた関数。Development

参考文献

メトリクスの参考文献

以下は、さまざまなFaaSプロバイダーで利用可能なメトリクスに関する文書へのリンクです。これは網羅的な一覧ではありません。