BillingView

Eventstream を介して請求リクエストを報告するためのメッセージ。

JSON 表現
{
  "reportRequests": [
    {
      object (ReportRequest)
    }
  ]
}
フィールド
reportRequests[]

object (ReportRequest)

cloud.eventstream.v2.ResourceEvent で報告される課金リクエスト

ReportRequest

services.report メソッドに対するリクエスト メッセージ。

JSON 表現
{
  "serviceName": string,
  "operations": [
    {
      object (Operation)
    }
  ],
  "serviceConfigId": string
}
フィールド
serviceName

string

サービス設定で指定されているサービス名。例: "pubsub.googleapis.com"

サービス名の定義については、google.api.Service をご覧ください。

operations[]

object (Operation)

報告対象となるオペレーション。

通常、サービスではリクエストごとに 1 つのオペレーションを報告する必要があります。1 つのリクエストに複数のオペレーションを組み込むことも可能ですが、報告時に複数のオペレーションが存在しても不自然でない場合だけにしてください。

同じ ReportRequest 内のオペレーションの数に上限はありませんが、ReportRequest のサイズは 1 MB 以下にする必要があります。部分的な障害の動作については、ReportResponse.report_errors をご覧ください。

serviceConfigId

string

リクエストの処理に使用するサービス設定のバージョンを指定します。

未指定か一致するバージョンが見つからない場合は、最新のバージョンが使用されます。

オペレーション

オペレーションに関する情報を表します。

JSON 表現
{
  "operationId": string,
  "operationName": string,
  "consumerId": string,
  "startTime": string,
  "endTime": string,
  "labels": {
    string: string,
    ...
  },
  "metricValueSets": [
    {
      object (MetricValueSet)
    }
  ],
  "logEntries": [
    {
      object (LogEntry)
    }
  ],
  "quotaProperties": {
    object (QuotaProperties)
  },
  "importance": enum (Importance),
  "userLabels": {
    string: string,
    ...
  },
  "resources": [
    {
      object (ResourceInfo)
    }
  ],
  "traceSpans": [
    {
      object (TraceSpan)
    }
  ]
}
項目
operationId

string

オペレーションの ID。オペレーションを生成したサービスのスコープ内で一意である必要があります。services.check() と services.report() を同じオペレーションに対して呼び出す場合、この 2 つの呼び出しでは同じ ID を使用する必要があります。

UUID バージョン 4 をおすすめしますが、必須ではありません。既存の情報からオペレーションを計算し、重複を除外するためべき等 ID を使用するのが適切である場合には、UUID バージョン 5 をおすすめします。詳しくは、RFC 4122 をご覧ください。

operationName

string

オペレーションの完全修飾名。将来の使用のために予約。

consumerId

string

サービスを使用しているユーザーの ID。この項目は、ユーザーが開始したオペレーションに対しては入力しますが、サービスによって開始され、特定のユーザーには関連しないオペレーションに対しては入力しません。

  • 次のいずれかの形式になります。
    • project:PROJECT_ID,
    • project_number:PROJECT_NUMBER,
    • projects/PROJECT_ID または PROJECT_NUMBER。
    • folders/FOLDER_NUMBER、
    • organizations/ORGANIZATION_NUMBER、
    • api_key:API_KEY。
startTime

string (Timestamp format)

必須。オペレーションの開始時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

endTime

string (Timestamp format)

オペレーションの終了時刻。オペレーションが ServiceController.Report で使用される場合は必須ですが、ServiceController.Check で使用される場合は省略可能です。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

labels

map (key: string, value: string)

オペレーションを表すラベル。次のラベルのみを使用できます。

  • サービス設定で定義されているモニタリング対象リソースを表すラベル。
  • 指標値のデフォルト ラベル。指定した場合、このデフォルト値は指標値に定義されているラベルでオーバーライドされます。
  • Google Cloud Platform で定義されている次のラベル:
    • cloud.googleapis.com/location: オペレーションが発生した場所を説明します。
    • API リクエストのユーザー エージェントを記述する servicecontrol.googleapis.com/userAgent
    • API リクエストの処理に使用されるサービス(ESP など)を説明する servicecontrol.googleapis.com/service_agent
    • API が提供されるプラットフォーム(App Engine、Compute Engine、Kubernetes Engine など)を説明する servicecontrol.googleapis.com/platform

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

metricValueSets[]

object (MetricValueSet)

該当するオペレーションに関する情報を表します。各 MetricValueSet はサービス設定で定義されている指標に対応しています。MetricValueSet で使用されるデータ型は、指標定義で指定されているデータ型と一致する必要があります。

1 つのオペレーション内で、同じ指標名および同じラベル値の組み合わせを持つ複数の MetricValue インスタンスを扱うことはできません。リクエストにこのような重複した MetricValue インスタンスが含まれていると、引数無効エラーが発生し、リクエスト全体が拒否されます。

logEntries[]

object (LogEntry)

ログに記録される情報を表します。

quotaProperties

object (QuotaProperties)

割り当てチェックに必要なプロパティを表します。このオペレーションが割り当てチェック リクエストの場合にのみ適用されます。指定しない場合、割り当てチェックは実行されません。

importance

enum (Importance)

使用しないでください。これは試験運用版のフィールドです。

userLabels

map (key: string, value: string)

限定公開プレビュー。この機能は、承認済みのサービスでのみ使用できます。

このオペレーションに関連付けられているリソースのユーザー定義ラベル。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

resources[]

object (ResourceInfo)

オペレーションに関与するリソース。このフィールドでサポートされるエントリの最大数は 100 です。

traceSpans[]

object (TraceSpan)

未実装。Cloud Trace スパンのリスト。スパン名には、宛先プロジェクトの ID(プロデューサー プロジェクトまたはコンシューマー プロジェクト)が含まれます。

MetricValueSet

同じ指標に属する指標値のセットを表します。セット内の各指標値は、開始時刻、終了時刻、ラベルを組み合わせた一意の値を持つ必要があります。

JSON 表現
{
  "metricName": string,
  "metricValues": [
    {
      object (MetricValue)
    }
  ]
}
フィールド
metricName

string

サービス構成で定義された指標名。

metricValues[]

object (MetricValue)

この指標の値。

MetricValue

単一の指標値を表します。

JSON 表現
{
  "labels": {
    string: string,
    ...
  },
  "startTime": string,
  "endTime": string,

  // Union field value can be only one of the following:
  "boolValue": boolean,
  "int64Value": string,
  "doubleValue": number,
  "stringValue": string,
  "distributionValue": {
    object (Distribution)
  },
  "moneyValue": {
    object (Money)
  }
  // End of list of possible types for union field value.
}
項目
labels

map (key: string, value: string)

指標値を表すラベル。オーバーライド関係については、google.api.servicecontrol.v1.Operation.labels のコメントを参照してください。このマップにモニタリング対象リソースラベルを含めることはできません。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

startTime

string (Timestamp format)

該当する指標値の測定が適用される期間の開始。指標の意味は、指標のタイプ(累積、デルタ、ゲージ)によって異なります。詳細については、サービス構成の指標定義ドキュメントをご覧ください。指定しない場合は、google.api.servicecontrol.v1.Operation.start_time が使用されます。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

endTime

string (Timestamp format)

この指標値の測定が適用される期間の終了。指定しない場合は、google.api.servicecontrol.v1.Operation.end_time が使用されます。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

共用体フィールド value。値です。リクエストで使用される値の型は、サービス構成の指標定義と一致している必要があります。一致していない場合、MetricValue は拒否されます。value は次のいずれかになります。
boolValue

boolean

ブール値。

int64Value

string (int64 format)

符号付き 64 ビット整数値。

doubleValue

number

倍精度浮動小数点値。

stringValue

string

テキスト文字列値。

distributionValue

object (Distribution)

分布値。

moneyValue

object (Money)

金銭の値。

分布

Distribution は 2 値サンプル点の頻度分布を表します。これには、サンプル点の母集団の規模に加え、次に示すオプションの追加情報が含まれています。

  • サンプルの算術平均
  • サンプルの最小値と最大値
  • 分散を計算するために使用されるサンプルの偏差平方和
  • サンプル点の値のヒストグラム
JSON 表現
{
  "count": string,
  "mean": number,
  "minimum": number,
  "maximum": number,
  "sumOfSquaredDeviation": number,
  "bucketCounts": [
    string
  ],
  "exemplars": [
    {
      object (Exemplar)
    }
  ],

  // Union field bucket_option can be only one of the following:
  "linearBuckets": {
    object (LinearBuckets)
  },
  "exponentialBuckets": {
    object (ExponentialBuckets)
  },
  "explicitBuckets": {
    object (ExplicitBuckets)
  }
  // End of list of possible types for union field bucket_option.
}
フィールド
count

string (int64 format)

分布内のサンプル数の合計。0 以上である必要があります。

mean

number

分布内のサンプルの算術平均。count が 0 の場合は、このフィールドも 0 にする必要があります。

minimum

number

値の母集団の最小値。count が 0 の場合は無視されます。

maximum

number

値の母集団の最大値。count が 0 の場合は無視されます。

sumOfSquaredDeviation

number

平均値からの偏差平方和: Sum[i=1..count]((x_i - mean)^2)。各 x_i はサンプル値です。count が 0 の場合は、このフィールドも 0 にする必要があります。そうしないと、リクエストの検証が失敗します。

bucketCounts[]

string (int64 format)

各ヒストグラム バケット内のサンプル数。bucketCounts は省略可能です。存在する場合、それらの合計は count 値と一致する必要があります。

バケットは、以下の bucket_option で定義されています。N 個のバケットがあります。bucketCounts[0] は、アンダーフロー バケット内のサンプル数です。bucketCounts[1] から bucketCounts[N-1] は、各有限バケット内のサンプル数です。bucketCounts[N] は、オーバーフロー バケット内のサンプル数です。詳しくは、以下の bucket_option のコメントをご覧ください。

末尾の 0 のサフィックスは省略してもかまいません。

exemplars[]

object (Exemplar)

ポイントの例。value フィールドの昇順で並べ替える必要があります。

共用体フィールド bucket_option。ヒストグラムのバケットを定義します。bucket_optionbucket_counts は、両方とも設定するか、両方とも設定しない必要があります。

バケットには [0, N] の範囲で番号が付けられ、バケットの合計数は N+1 個になります。バケットは 2 つ以上必要です(単一バケットのヒストグラムでは、count で提供される情報以外の情報は得られません)。

最初のバケットは下限が無限(-inf)のアンダーフロー バケットです。最後のバケットは上限が無限(+inf)のオーバーフロー バケットです。その他のバケット(存在する場合)はすべて、下限と上限が有限であることから、「有限」バケットと呼ばれます。下記のとおり、有限バケットは 3 つの方法で定義できます。

(1)幅が一定のバケット。(2)幅が指数関数的に増大するバケット。(3)ユーザーが任意に幅を指定するバケット。

いずれの場合も、バケットは実数行全体(-inf、+inf)をカバーしています。バケットの上限は含まれず、下限は含まれます。アンダーフロー バケットの上限は、最小の有限バケットの下限と同じです。オーバーフロー バケットの下限は、最大の有限バケットの上限と同じです。bucket_option は次のいずれかになります。

linearBuckets

object (LinearBuckets)

一定の幅のバケット。

exponentialBuckets

object (ExponentialBuckets)

幅が指数関数的に増加するバケット。

explicitBuckets

object (ExplicitBuckets)

ユーザーが指定した任意の幅のバケット。

LinearBuckets

幅が一定のバケットを表します。

JSON 表現
{
  "numFiniteBuckets": integer,
  "width": number,
  "offset": number
}
フィールド
numFiniteBuckets

integer

有限バケットの数。アンダーフロー バケットとオーバーフロー バケットを含めると、バケットの合計数は numFiniteBuckets + 2 になります。詳しくは、bucketOptions のコメントをご覧ください。

width

number

i 番目の線形バケットは、[offset + (i-1) * width, offset + i * width) の間隔をカバーします。ここで、i は 1 から numFiniteBuckets までの範囲(両端を含む)です。真に正である必要があります。

offset

number

i 番目の線形バケットは、[offset + (i-1) * width, offset + i * width) の間隔をカバーします。ここで、i は 1 から numFiniteBuckets までの範囲(両端を含む)です。

ExponentialBuckets

幅が指数関数的に増大するバケットを表します。

JSON 表現
{
  "numFiniteBuckets": integer,
  "growthFactor": number,
  "scale": number
}
フィールド
numFiniteBuckets

integer

有限バケットの数。アンダーフロー バケットとオーバーフロー バケットを含めると、バケットの合計数は numFiniteBuckets + 2 になります。詳しくは、bucketOptions のコメントをご覧ください。

growthFactor

number

i 番目の指数バケットは、[scale * growthFactor^(i-1), scale * growthFactor^i) の間隔をカバーします。ここで、i は 1 から numFiniteBuckets までの範囲です。1.0 より大きくする必要があります。

scale

number

i 番目の指数バケットは、[scale * growthFactor^(i-1), scale * growthFactor^i) の間隔をカバーします。ここで、i は 1 から numFiniteBuckets までの範囲です。0 より大きくする必要があります。

ExplicitBuckets

ユーザーが任意に幅を指定するバケットを表します。

JSON 表現
{
  "bounds": [
    number
  ]
}
項目
bounds[]

number

「bound」はバケット間の狭義単調増加境界のリストです。植木算になるので、N 個のバケットを定義するには長さ N-1 を使用することに注意してください。詳しくは、bucketOptions のコメントをご覧ください。

i 番目の有限バケットは区間 [bound[i-1], bound[i]] をカバーしています。i の範囲は 1~bound_size() - 1 です。「bound」の要素が 1 つのみの場合、有限バケットはまったく存在しないことに留意してください。このような特殊なケースでは、1 つの bound でアンダーフロー バケットとオーバーフロー バケットの間の境界を定義します。

バケット番号 下限 上限 i == 0(アンダーフロー)-inf bound[i] 0 < i < bound_size() bound[i-1] bound[i] i == bound_size()(オーバーフロー)bound[i-1] +inf

エグザンプラ

エグザンプラは、集計された分布値にアノテーションを付けるために使用できるサンプル ポイントです。これらは、値が追加されたときにアクティブだったトレース ID など、分布バケットに追加された特定の値に関する情報を提供するメタデータです。サンプル値、タイムスタンプ、送信元などの追加情報が含まれる場合があります。

JSON 表現
{
  "value": number,
  "timestamp": string,
  "attachments": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
フィールド
value

number

エグザンプラ ポイントの値。この値は、エグザンプラがどのバケットに属するかを決定します。

timestamp

string (Timestamp format)

上記の値の観測(サンプリング)時間。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

attachments[]

object

サンプル値に関するコンテキスト情報。例:

トレース: type.googleapis.com/google.monitoring.v3.SpanContext

リテラル文字列: type.googleapis.com/google.protobuf.StringValue

集計中にドロップされたラベル: type.googleapis.com/google.monitoring.v3.DroppedLabels

1 つのメッセージの種類につき、1 つのエグザンプラに 1 つのアタッチメントしか存在できません。これはシステムによって強制されます。

任意の型のフィールドを含むオブジェクト。型を識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

金額

金額をその通貨タイプで表します。

JSON 表現
{
  "currencyCode": string,
  "units": string,
  "nanos": integer
}
フィールド
currencyCode

string

ISO 4217 で定義されている 3 文字の通貨コード。

units

string (int64 format)

金額の整数部分。たとえば、currencyCode"USD" の場合、1 単位は 1 米ドルです。

nanos

integer

金額の小数部分をナノ(10^-9)単位で表した数。値は -999,999,999 以上 +999,999,999 以下でなければなりません。units が正の場合、nanos には正数または 0 を指定します。units がゼロの場合、nanos には正数、0、または負数を指定できます。units が負の場合、nanos は負数または 0 を指定します。たとえば、$-1.75 は units = -1、nanos = -750,000,000 と表されます。

LogEntry

個々のログエントリです。

JSON 表現
{
  "name": string,
  "timestamp": string,
  "severity": enum (LogSeverity),
  "httpRequest": {
    object (HttpRequest)
  },
  "trace": string,
  "insertId": string,
  "labels": {
    string: string,
    ...
  },
  "operation": {
    object (LogEntryOperation)
  },
  "sourceLocation": {
    object (LogEntrySourceLocation)
  },

  // Union field payload can be only one of the following:
  "protoPayload": {
    "@type": string,
    field1: ...,
    ...
  },
  "textPayload": string,
  "structPayload": {
    object
  }
  // End of list of possible types for union field payload.
}
フィールド
name

string

必須。該当するログエントリが属するログ。例: "syslog""book_log"

timestamp

string (Timestamp format)

ログエントリが表すイベントの発生日時。省略した場合、オペレーションの開始時刻がデフォルト値として設定されます。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

severity

enum (LogSeverity)

ログエントリの重大度。デフォルト値は LogSeverity.DEFAULT です。

httpRequest

object (HttpRequest)

省略可。このログエントリに関連付けられた HTTP リクエストに関する情報(該当する場合)。

trace

string

省略可。ログエントリに関連するリソースの名前(存在する場合)。このフィールドに相対リソース名が含まれている場合、名前は //tracing.googleapis.com を基準とした相対的な名前になります。例: projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824

insertId

string

重複除去に使用されるログエントリの一意の ID。省略した場合、実装では operationId に基づいて ID が生成されます。

labels

map (key: string, value: string)

ログエントリに関する追加情報を提供するユーザー定義データ(キーと値)のセット。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

operation

object (LogEntryOperation)

省略可。このログエントリに関連付けられた操作に関する情報(該当する場合)。

sourceLocation

object (LogEntrySourceLocation)

省略可。ログエントリに関連するソースコードの位置情報(存在する場合)。

共用体フィールド payload。ログエントリのペイロード。複数のタイプのいずれかになります。payload は次のいずれかになります。
protoPayload

object

ログエントリのペイロードを表すプロトコル バッファを JSON オブジェクトで記述したもの。現在、受け入れられるタイプは AuditLog のみです。

任意のデータ型のフィールドを含むオブジェクト。型を識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

textPayload

string

ログエントリのペイロードを表す Unicode 文字列(UTF-8)。

structPayload

object (Struct format)

ログエントリのペイロードを表す構造体を JSON オブジェクトで記述したもの。

HttpRequest

HTTP リクエストをロギングするための共通プロトコルです。HTTP 仕様で定義された意味のみが含まれます。プロダクト固有のログ情報は、別のメッセージで定義する必要があります。

JSON 表現
{
  "requestMethod": string,
  "requestUrl": string,
  "requestSize": string,
  "status": integer,
  "responseSize": string,
  "userAgent": string,
  "remoteIp": string,
  "serverIp": string,
  "referer": string,
  "latency": string,
  "cacheLookup": boolean,
  "cacheHit": boolean,
  "cacheValidatedWithOriginServer": boolean,
  "cacheFillBytes": string,
  "protocol": string
}
フィールド
requestMethod

string

リクエスト メソッド。例: "GET""HEAD""PUT""POST"

requestUrl

string

リクエストされた URL のスキーム(http、https)、ホスト名、パス、クエリ部分。例: "http://example.com/some/info?color=red"

requestSize

string (int64 format)

HTTP リクエスト メッセージのバイトサイズ(各リクエスト ヘッダーと、リクエスト ボディを含む)。

status

integer

レスポンスのステータスを示すレスポンス コード。例: 200, 404

responseSize

string (int64 format)

クライアントに返された HTTP レスポンス メッセージのバイトサイズ(各レスポンス ヘッダーと、レスポンス ボディを含む)。

userAgent

string

クライアントが送信したユーザー エージェント。例: "Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)"

remoteIp

string

HTTP リクエストを発行したクライアントの IP アドレス(IPv4 または IPv6)。 例: "192.168.1.1""FE80::0202:B3FF:FE1E:8329"

serverIp

string

リクエストが送信された配信元サーバーの IP アドレス(IPv4 または IPv6)。

referer

string

リクエストのリファラー URL(HTTP/1.1 Header Field Definitions で規定されている)。

latency

string (Duration format)

サーバー上でのリクエスト処理のレイテンシ。サーバーがリクエストを受信してからレスポンスを送信するまでの時間です。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

cacheLookup

boolean

キャッシュ検索を試行したかどうか。

cacheHit

boolean

キャッシュ内のエンティティを利用したかどうか(検証あり / 検証なし)。

cacheValidatedWithOriginServer

boolean

キャッシュを利用する前に配信元サーバーでレスポンスを検証したかどうか。このフィールドは、cacheHit が True の場合にのみ意味を持ちます。

cacheFillBytes

string (int64 format)

キャッシュに挿入された HTTP レスポンスのバイト数。キャッシュ フィルの試行時にのみ設定されます。

protocol

string

リクエストに使用されるプロトコル。 例: 「HTTP/1.1」、「HTTP/2」、「websocket」

LogEntryOperation

ログエントリが関連付けられた長時間実行する可能性のある操作に関する追加情報。

JSON 表現
{
  "id": string,
  "producer": string,
  "first": boolean,
  "last": boolean
}
フィールド
id

string

省略可。任意の操作識別子。同じ識別子を持つログエントリは、同じ操作の部分とみなされます。

producer

string

省略可。任意のプロデューサー識別子。idproducer の組み合わせはグローバルに一意である必要があります。producer の例: "MyDivision.MyBigCompany.com""github.com/MyProject/MyApplication"

first

boolean

省略可。これが操作の最初のログエントリである場合は、True に設定します。

last

boolean

省略可。これが操作の最後のログエントリである場合は、True に設定します。

LogEntrySourceLocation

ログエントリを生成したソースコードの場所に関する追加情報。

JSON 表現
{
  "file": string,
  "line": string,
  "function": string
}
フィールド
file

string

省略可。ソースファイル名。ランタイム環境に応じて、これは単純名または完全修飾名を指定できます。

line

string (int64 format)

省略可。ソースファイル内の行。1 ベース。0 は行番号が利用できないことを示します。

function

string

省略可。呼び出される関数名またはメソッド名。人が判読可能な形式になります。コンテキスト(クラスやパッケージ名など)を指定することもできます。この情報が使用されるのは、ログビューアのように、ファイルと行番号があまり意味を持たない場合です。形式は、言語によって異なります。例: qual.if.ied.Class.method(Java)、dir/package.func(Go)、function(Python)。

QuotaProperties

割り当てオペレーションに必要なプロパティを表します。

JSON 表現
{
  "quotaMode": enum (QuotaMode)
}
フィールド
quotaMode

enum (QuotaMode)

このオペレーションの割り当てモード。

ResourceInfo

このオペレーションに関連付けられているリソースを記述します。

JSON 表現
{
  "resourceContainer": string,
  "resourceName": string,
  "resourceLocation": string,
  "permission": string
}
フィールド
resourceContainer

string

このリソース インスタンスの親の識別子。projects/<project-id or project-number>folders/<folder-id>organizations/<organization-id> のいずれかの形式にする必要があります。

resourceName

string

リソースの名前。これは監査の目的で使用されます。

resourceLocation

string

リソースのロケーション。空でない場合、リソースはロケーション ポリシーに対してチェックされます。値は有効なゾーン、リージョン、マルチリージョンである必要があります。例:「europe-west4」、「northamerica-northeast1-a」

permission

string

このリクエストに必要なリソース権限。

TraceSpan

スパンは、トレース内の単一のオペレーションを表します。スパンをネストしてトレースツリーを形成できます。多くの場合、トレースにはエンドツーエンドのレイテンシを表すルートスパンと、サブ オペレーションの 1 つ以上のサブスパンが含まれます。トレースには複数のルートスパンを含めることも、ルートスパンをまったく含めないこともできます。スパンは連続している必要はありません。トレース内のスパン間にギャップや重複がある場合があります。

JSON 表現
{
  "name": string,
  "spanId": string,
  "parentSpanId": string,
  "displayName": {
    object (TruncatableString)
  },
  "startTime": string,
  "endTime": string,
  "attributes": {
    object (Attributes)
  },
  "status": {
    object (Status)
  },
  "sameProcessAsParentSpan": boolean,
  "childSpanCount": integer,
  "spanKind": enum (SpanKind)
}
フィールド
name

string

スパンのリソース名(次の形式)。

projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/[SPAN_ID]

[TRACE_ID] は、プロジェクト内のトレースの一意の識別子です。16 バイトの配列を 32 文字の 16 進数にエンコードした値です。

[SPAN_ID] は、トレース内のスパンの一意の識別子です。8 バイトの配列を 16 文字の 16 進数にエンコードした値です。

spanId

string

スパンのリソース名の [SPAN_ID] 部分。

parentSpanId

string

このスパンの親スパンの [SPAN_ID]。ルートスパンの場合、このフィールドは空にする必要があります。

displayName

object (TruncatableString)

スパンのオペレーションの説明(最大 128 バイト)。Stackdriver Trace は、Google Cloud Platform Console に説明を表示します。たとえば、表示名は、完全修飾メソッド名、またはオペレーションが呼び出されるファイル名と行番号にすることができます。アプリケーション内および同じ呼び出しポイントで同じ表示名を使用することをおすすめします。これにより、異なるトレース内のスパンを簡単に関連付けることができます。

startTime

string (Timestamp format)

スパンの開始時間。クライアント側では、これはスパン実行が開始されるローカルマシンで保持される時間です。サーバー側では、これはサーバーのアプリケーション ハンドラが実行を開始した時刻です。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

endTime

string (Timestamp format)

スパンの終了時刻。クライアント側では、これはスパンの実行が終了するローカルマシンで保持される時間です。サーバー側では、サーバー アプリケーション ハンドラが実行を停止する時間です。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

attributes

object (Attributes)

スパンの属性のセット。スパンあたりの属性の最大数は 32 です。

status

object (Status)

このスパンの最終ステータス(省略可)。

sameProcessAsParentSpan

boolean

(省略可)このパラメータを設定して、このスパンが親と同じプロセスにあるかどうかを示します。このパラメータを設定しないと、Stackdriver Trace はこの有用な情報を活用できません。

childSpanCount

integer

このスパンがアクティブな間に生成された子スパンの数(省略可)。設定されている場合、実装で子スパンの欠落を検出できます。

spanKind

enum (SpanKind)

特定のコンテキストで生成されたスパンを区別します。たとえば、同じ名前の 2 つのスパンを CLIENT(呼び出し元)と SERVER(呼び出し先)で区別して、RPC 呼び出しを識別できます。

TruncatableString

指定された長さに短縮される可能性のある文字列を表します。

JSON 表現
{
  "value": string,
  "truncatedByteCount": integer
}
フィールド
value

string

短縮された文字列。たとえば、元の文字列の長さが 500 バイトで、文字列の制限が 128 バイトの場合、value には 500 バイトの文字列の最初の 128 バイトが含まれます。

切り捨ては常に UTF8 文字の境界で行われます。文字列にマルチバイト文字が含まれている場合、短縮された文字列の長さがサイズ上限を下回る可能性があります。

truncatedByteCount

integer

元の文字列から削除されたバイト数。この値が 0 の場合、文字列は短縮されていません。

属性

属性のセット。各属性は [KEY]:[VALUE] 形式です。

JSON 表現
{
  "attributeMap": {
    string: {
      object (AttributeValue)
    },
    ...
  },
  "droppedAttributesCount": integer
}
フィールド
attributeMap

map (key: string, value: object (AttributeValue))

属性のセット。各属性のキーの長さは最大 128 バイトです。値は、最大 256 バイトの文字列、符号付き 64 ビット整数、またはブール値 truefalse にできます。次に例を示します。

"/instance_id": "my-instance"
"/http/userAgent": ""
"/http/request_bytes": 300
"example.com/myattribute": true

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

droppedAttributesCount

integer

破棄された属性の数。属性のキーが長すぎるか、属性が多すぎるため、属性が破棄されることがあります。この値が 0 の場合、すべての属性が有効です。

AttributeValue

[KEY]:[VALUE] 属性の [VALUE] で使用できる型。

JSON 表現
{

  // Union field value can be only one of the following:
  "stringValue": {
    object (TruncatableString)
  },
  "intValue": string,
  "boolValue": boolean
  // End of list of possible types for union field value.
}
フィールド
共用体フィールド value。値の型。value は次のいずれかになります。
stringValue

object (TruncatableString)

最大 256 バイトの文字列。

intValue

string (int64 format)

64 ビット符号付き整数。

boolValue

boolean

true または false で表されるブール値。