索引
Distribution(消息)Distribution.BucketOptions(消息)Distribution.BucketOptions.Explicit(消息)Distribution.BucketOptions.Exponential(消息)Distribution.BucketOptions.Linear(消息)Distribution.Exemplar(消息)Distribution.Range(消息)HttpBody(消息)Metric(消息)MetricDescriptor(消息)MetricDescriptor.MetricKind(枚举)MetricDescriptor.ValueType(枚举)MonitoredResource(消息)MonitoredResourceMetadata(消息)
分布
Distribution 包含总体值的汇总统计信息。它还可以根据需要包含一个直方图,用于表示这些值在一组分桶中的分布情况。
汇总统计信息是总体值集的数量、平均值、与平均值的平方偏差之和、最小值和最大值。直方图基于一系列分桶,并提供每个分桶中值的数量。分桶的边界以明确方式指定,也可以通过公式为宽度固定或呈指数增长的分桶指定。
虽然系统并不禁止在总体值中包含非有限值(无穷大或 NaN),但通常不建议这样做,因为这会导致 mean 和 sum_of_squared_deviation 字段失去意义。
| 字段 | |
|---|---|
count |
总体中值的数量。必须为非负数。 如果提供了直方图,则此值必须等于 |
mean |
总体中值的算术平均值。如果 |
sum_of_squared_deviation |
总体中各值与平均值的平方差之和。对于值 x_i,方法为: Knuth 的《计算机程序设计艺术》第 2 卷第 232 页(第 3 版)介绍了 Welford 的方法,该方法可在一次遍历中累积此总和。 如果 |
range |
如果指定,则包含总体值的范围。如果 |
bucket_options |
定义直方图分桶边界。如果分布不包含直方图,则省略此字段。 |
bucket_counts[] |
直方图中每个分桶的值的数量,如 如果存在,
|
exemplars[] |
必须按 |
BucketOptions
BucketOptions 描述了用于为分布创建直方图的分桶边界。分桶可以按线性序列或指数序列排列,也可以明确指定每个分桶。BucketOptions 不包含每个分桶中的值的数量。
分桶的下限值(含)和上限值(不含)之间的值会被计入该分桶。分桶的上限必须严格大于下限。分布的 N 个分桶的序列包括一个下溢分桶(编号为 0)、零个或多个有限分桶(编号为 1 到 N - 2)和一个上溢分桶(编号为 N - 1)。分桶是连续的:分桶 i(i > 0)的下限与分桶 i - 1 的上限相同。分桶涵盖了整个有限值范围:下溢分桶的下限为 -infinity,上溢分桶的上限为 +infinity。之所以称为有限分桶,是因为其上下限都是有限的。
| 字段 | |
|---|---|
联合字段 options。以下三个字段中,必须且只能设置一个。options 只能是下列其中一项: |
|
linear_buckets |
线性分桶。 |
exponential_buckets |
指数分桶。 |
explicit_buckets |
显式分桶。 |
露骨内容
指定一组宽度任意的分桶。
有 size(bounds) + 1 (= N) 个分桶。分桶 i 的边界如下:
上限 (0 <= i < N-1):bounds[i] 下限 (1 <= i < N);bounds[i - 1]
bounds 字段必须至少包含一个元素。如果 bounds 只有一个元素,则没有有限分桶,并且该单个元素是上溢分桶和下溢分桶的共同边界。
| 字段 | |
|---|---|
bounds[] |
值必须单调递增。 |
指数
指定一个指数分桶序列,其宽度与下限值成正比。每个分桶都表示其内部特定值的一个恒定相对不确定性。
有 num_finite_buckets + 2 (= N) 个分桶。分桶 i 的边界如下:
上限 (0 <= i < N-1):scale * (growth_factor ^ i).
下限 (1 <= i < N):scale * (growth_factor ^ (i - 1)).
| 字段 | |
|---|---|
num_finite_buckets |
必须大于 0。 |
growth_factor |
必须大于 1。 |
scale |
必须大于 0。 |
线性
指定一个线性分桶序列,这些分桶都具有相同的宽度(上溢分桶和下溢分桶除外)。每个分桶都表示其内部特定值的一个恒定绝对不确定性。
有 num_finite_buckets + 2 (= N) 个分桶。分桶 i 的边界如下:
上限 (0 <= i < N-1):offset + (width * i)。
下限 (1 <= i < N):offset + (width * (i - 1))。
| 字段 | |
|---|---|
num_finite_buckets |
必须大于 0。 |
width |
必须大于 0。 |
offset |
第一个分桶的下限。 |
Exemplar
Exemplar 是可用于为汇总分布值添加注解的示例点。它们是元数据,可提供有关添加到分布分桶中的特定值的信息,例如添加值时处于活跃状态的跟踪 ID。它们可能包含更多信息,例如示例值和时间戳、来源等。
| 字段 | |
|---|---|
value |
范例点的值。此值用于确定范例属于哪个分桶。 |
timestamp |
上述值的观测(采样)时间。 |
attachments[] |
有关示例值的上下文信息。示例包括: 跟踪记录:type.googleapis.com/google.monitoring.v3.SpanContext 字面量字符串:type.googleapis.com/google.protobuf.StringValue 在汇总期间丢弃的标签:type.googleapis.com/google.monitoring.v3.DroppedLabels 在单个范例中,任何给定的消息类型都只能有一个附件,此为系统强制性要求。 |
范围
总体值的范围。
| 字段 | |
|---|---|
min |
总体值的最小值。 |
max |
总体值的最大值。 |
HttpBody
表示任意 HTTP 正文的消息。它应仅用于无法表示为 JSON 的负载格式,例如原始二进制文件或 HTML 网页。
此消息可同时用于请求和响应中的流式传输和非流式传输 API 方法。
它可以用作顶级请求字段,如果想要将网址或 HTTP 模板中的参数提取到请求字段中,并且还希望访问原始 HTTP 正文,这会很方便。
示例:
message GetResourceRequest {
// A unique request id.
string request_id = 1;
// The raw HTTP body is bound to this field.
google.api.HttpBody http_body = 2;
}
service ResourceService {
rpc GetResource(GetResourceRequest)
returns (google.api.HttpBody);
rpc UpdateResource(google.api.HttpBody)
returns (google.protobuf.Empty);
}
流式传输方法示例:
service CaldavService {
rpc GetCalendar(stream google.api.HttpBody)
returns (stream google.api.HttpBody);
rpc UpdateCalendar(stream google.api.HttpBody)
returns (stream google.api.HttpBody);
}
使用此类型仅会更改请求和响应正文的处理方式,所有其他功能将继续保持不变。
| 字段 | |
|---|---|
content_type |
指定正文内容类型的 HTTP Content-Type 标头值。 |
data |
作为原始二进制文件的 HTTP 请求/响应正文。 |
extensions[] |
应用专用响应元数据。必须在流式传输 API 的第一个响应中设置。 |
指标
一种特定指标,通过为 的所有标签指定值来标识。MetricDescriptor
| 字段 | |
|---|---|
type |
现有指标类型,请参阅 |
labels |
可唯一标识相应指标的一组标签值。 |
MetricDescriptor
此类型没有字段。
定义指标类型及其架构。创建指标描述符后,删除或更改该指标描述符会使系统停止收集数据,并使得该指标类型的现有数据不可用。
MetricKind
测量种类。它描述了如何报告数据。 如需了解如何根据 MetricKind 设置开始时间和结束时间,请参阅 TimeInterval。
| 枚举 | |
|---|---|
METRIC_KIND_UNSPECIFIED |
请勿使用此默认值。 |
GAUGE |
值的瞬时测量。 |
DELTA |
某个时间间隔内值的变化。 |
CUMULATIVE |
某个时间间隔内累积的值。时间序列中的累积测量应具有相同的开始时间和递增的结束时间,直到某个事件将累积值重置为零并为后续的点设置新的开始时间为止。 |
ValueType
指标的值类型。
| 枚举 | |
|---|---|
VALUE_TYPE_UNSPECIFIED |
请勿使用此默认值。 |
BOOL |
该值是布尔值。仅当指标种类是 GAUGE 时,才能使用此值类型。 |
INT64 |
该值是有符号的 64 位整数。 |
DOUBLE |
该值是双精度浮点数。 |
STRING |
该值是文本字符串。仅当指标种类是 GAUGE 时,才能使用此值类型。 |
DISTRIBUTION |
该值为 类型。 |
MONEY |
该值是金额。 |
MonitoredResource
表示可用于监控、日志记录、结算或其他目的的资源的对象。示例包括虚拟机实例、数据库和存储设备(例如磁盘)。type 字段用于标识描述资源架构的 MonitoredResourceDescriptor 对象。labels 字段中的信息根据架构标识实际资源及其属性。例如,以下对象可表示一个特定的 Compute Engine 虚拟机实例,因为 "gce_instance" 的 MonitoredResourceDescriptor 具有标签 "project_id"、"instance_id" 和 "zone":
{ "type": "gce_instance",
"labels": { "project_id": "my-project",
"instance_id": "12345678901234",
"zone": "us-central1-a" }}
| 字段 | |
|---|---|
type |
必需。受监控的资源类型。此字段必须与 |
labels |
必需。关联的受监控资源描述符中列出的所有标签的值。例如,Compute Engine 虚拟机实例使用标签 |
MonitoredResourceMetadata
MonitoredResource 对象的辅助元数据。MonitoredResource 对象包含用于唯一地标识受监控资源实例的最小信息集。还有一些其他的有用辅助元数据。Monitoring 和 Logging 使用提取流水线提取所有类型的云端资源的元数据,并将元数据存储在此消息中。
| 字段 | |
|---|---|
system_labels |
仅限输出。预定义系统元数据标签的值。系统标签是 Google 提取的一种元数据,包括“machine_image”、“vpc”、“subnet_id”、“security_group”、“name”等。系统标签值只能是字符串、布尔值或字符串列表。例如: |
user_labels |
仅限输出。用户定义的元数据标签的映射。 |