google.cloud.gcp_logging_metric 模块 – 创建一个 GCP 指标
注意
此模块是 google.cloud 集合(版本 1.4.1)的一部分。
如果您正在使用 ansible
包,您可能已经安装了此集合。 它不包含在 ansible-core
中。 要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install google.cloud
。 您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。
要在 playbook 中使用它,请指定:google.cloud.gcp_logging_metric
。
注意
由于违反了 Ansible 包含要求,google.cloud 集合将从 Ansible 12 中移除。该集合有 未解决的健全性测试失败。 有关更多信息,请参阅 讨论线程。
概要
基于日志的指标也可用于从日志中提取值并创建值的分布。该分布记录提取值的统计信息以及由存储桶选项指定的的可选值直方图。
要求
执行此模块的主机需要以下要求。
python >= 2.6
requests >= 2.18.4
google-auth >= 1.3.0
参数
参数 |
注释 |
---|---|
如果凭据类型为 accesstoken,则为 OAuth2 访问令牌。 |
|
使用的凭据类型。 选择
|
|
当基于日志的指标使用 DISTRIBUTION 值类型时,需要 bucketOptions,它描述了用于创建提取值直方图的存储桶边界。 |
|
指定一组具有任意宽度的存储桶。 |
|
这些值必须单调递增。 |
|
指定指数存储桶序列,其宽度与下限值成正比。每个存储桶表示存储桶中特定值的恒定相对不确定性。 |
|
必须大于 1。 |
|
必须大于 0。 |
|
必须大于 0。 |
|
指定线性存储桶序列,这些存储桶都具有相同的宽度(除了溢出和下溢)。 每个存储桶表示存储桶中特定值的恒定绝对不确定性。 |
|
必须大于 0。 |
|
第一个存储桶的下限。 |
|
必须大于 0。 |
|
此指标的描述,用于文档中。描述的最大长度为 8000 个字符。 |
|
指定您在其中运行此模块的 Ansible 环境。 除非您知道自己在做什么,否则不应设置此项。 这只会更改任何 API 请求的 User Agent 字符串。 |
|
用于匹配日志条目的高级日志过滤器(https://cloud.google.com/logging/docs/view/advanced-filters)。 |
|
从标签键字符串到提取器表达式的映射,该表达式用于从日志条目字段提取数据并分配为标签值。 LabelDescriptor 中指定的每个标签键都必须在此映射中具有关联的提取器表达式。提取器表达式的语法与 valueExtractor 字段的语法相同。 |
|
与基于日志的指标关联的指标描述符。 |
|
指标的简洁名称,可以显示在用户界面中。使用句子大小写,不带结尾句点,例如“请求计数”。此字段是可选的,但建议为与用户可见概念(例如配额)关联的任何指标设置此字段。 |
|
可用于描述此指标类型特定实例的标签集。例如,appengine.googleapis.com/http/server/response_latencies 指标类型具有 HTTP 响应代码的标签 response_code,因此您可以查看成功响应的延迟或仅查看失败的响应的延迟。 |
|
标签的人工可读描述。 |
|
标签键。 |
|
可以分配给标签的数据类型。 一些有效的选择包括:“BOOL”、“INT64”、“STRING” 默认值: |
|
指标是记录瞬时值、值更改等。 metricKind 和 valueType 的某些组合可能不受支持。 对于计数器指标,请将其设置为 DELTA。 一些有效的选择包括:“DELTA”、“GAUGE”、“CUMULATIVE” |
|
报告指标值的单位。仅当 valueType 为 `INT64`、`DOUBLE` 或 `DISTRIBUTION` 时适用。支持的单位是 [统一计量单位代码](http://unitsofmeasure.org/ucum.html) 标准的子集。 默认值: |
|
衡量值是整数、浮点数等类型。 metricKind 和 valueType 的某些组合可能不受支持。 对于计数器指标,请将其设置为 INT64。 一些有效选项包括:“BOOL”、“INT64”、“DOUBLE”、“STRING”、“DISTRIBUTION”、“MONEY” |
|
客户端分配的指标标识符。示例 - “error_count”、“nginx/requests”。 指标标识符限制为 100 个字符,并且只能包含以下字符:A-Z、a-z、0-9 以及特殊字符 _-.,+!*’()%/。正斜杠字符 (/) 表示名称片段的层次结构,并且不能作为名称的第一个字符。 |
|
要使用的 Google Cloud Platform 项目。 |
|
要使用的作用域数组 |
|
服务帐户 JSON 文件的内容,可以是字典形式或表示它的 JSON 字符串。 |
|
如果选择了 machineaccount 并且用户不希望使用默认电子邮件,则可选的服务帐户电子邮件地址。 |
|
如果选择了 serviceaccount 作为类型,则为服务帐户 JSON 文件的路径。 |
|
给定对象是否应存在于 GCP 中 选择
|
|
当使用基于分布日志的指标从日志条目中提取要记录的值时,需要 valueExtractor。支持两种用于值提取的函数 - EXTRACT(field) 或 REGEXP_EXTRACT(field, regex)。参数是:1. field - 从中提取值的日志条目字段的名称。2. regex - 使用 Google RE2 语法的正则表达式(https://github.com/google/re2/wiki/Syntax),其中包含单个捕获组,用于从指定的日志条目字段中提取数据。在应用正则表达式之前,字段的值会转换为字符串。指定不包含恰好一个捕获组的正则表达式是错误的。 |
注释
注意
API 参考:https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.metrics/create
对于身份验证,您可以使用
GCP_SERVICE_ACCOUNT_FILE
环境变量设置 service_account_file。对于身份验证,您可以使用
GCP_SERVICE_ACCOUNT_CONTENTS
环境变量设置 service_account_contents。对于身份验证,您可以使用
GCP_SERVICE_ACCOUNT_EMAIL
环境变量设置 service_account_email。对于身份验证,您可以使用
GCP_ACCESS_TOKEN
环境变量设置 access_token。对于身份验证,您可以使用
GCP_AUTH_KIND
环境变量设置 auth_kind。对于身份验证,您可以使用
GCP_SCOPES
环境变量设置 scopes。仅当未设置 playbook 值时,才会使用环境变量值。
service_account_email 和 service_account_file 选项是互斥的。
示例
- name: create a metric
google.cloud.gcp_logging_metric:
name: test_object
filter: resource.type=gae_app AND severity>=ERROR
metric_descriptor:
metric_kind: DELTA
value_type: DISTRIBUTION
unit: '1'
labels:
- key: mass
value_type: STRING
description: amount of matter
value_extractor: EXTRACT(jsonPayload.request)
label_extractors:
mass: EXTRACT(jsonPayload.request)
bucket_options:
linear_buckets:
num_finite_buckets: 3
width: 1
offset: 1
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
返回值
通用返回值记录在此处,以下是此模块特有的字段
键 |
描述 |
---|---|
当基于日志的指标使用 DISTRIBUTION 值类型时,需要 bucketOptions,它描述了用于创建提取值直方图的存储桶边界。 返回:成功 |
|
指定一组具有任意宽度的存储桶。 返回:成功 |
|
这些值必须单调递增。 返回:成功 |
|
指定指数存储桶序列,其宽度与下限值成正比。每个存储桶表示存储桶中特定值的恒定相对不确定性。 返回:成功 |
|
必须大于 1。 返回:成功 |
|
必须大于 0。 返回:成功 |
|
必须大于 0。 返回:成功 |
|
指定线性存储桶序列,这些存储桶都具有相同的宽度(除了溢出和下溢)。 每个存储桶表示存储桶中特定值的恒定绝对不确定性。 返回:成功 |
|
必须大于 0。 返回:成功 |
|
第一个存储桶的下限。 返回:成功 |
|
必须大于 0。 返回:成功 |
|
此指标的描述,用于文档中。描述的最大长度为 8000 个字符。 返回:成功 |
|
用于匹配日志条目的高级日志过滤器(https://cloud.google.com/logging/docs/view/advanced-filters)。 返回:成功 |
|
从标签键字符串到提取器表达式的映射,该表达式用于从日志条目字段提取数据并分配为标签值。 LabelDescriptor 中指定的每个标签键都必须在此映射中具有关联的提取器表达式。提取器表达式的语法与 valueExtractor 字段的语法相同。 返回:成功 |
|
与基于日志的指标关联的指标描述符。 返回:成功 |
|
指标的简洁名称,可以显示在用户界面中。使用句子大小写,不带结尾句点,例如“请求计数”。此字段是可选的,但建议为与用户可见概念(例如配额)关联的任何指标设置此字段。 返回:成功 |
|
可用于描述此指标类型特定实例的标签集。例如,appengine.googleapis.com/http/server/response_latencies 指标类型具有 HTTP 响应代码的标签 response_code,因此您可以查看成功响应的延迟或仅查看失败的响应的延迟。 返回:成功 |
|
标签的人工可读描述。 返回:成功 |
|
标签键。 返回:成功 |
|
可以分配给标签的数据类型。 返回:成功 |
|
指标是记录瞬时值、值更改等。 metricKind 和 valueType 的某些组合可能不受支持。 对于计数器指标,请将其设置为 DELTA。 返回:成功 |
|
指标类型,包括其 DNS 名称前缀。该类型未进行 URL 编码。 所有用户定义的指标类型都具有 DNS 名称 `custom.googleapis.com` 或 `external.googleapis.com`。 返回:成功 |
|
报告指标值的单位。仅当 valueType 为 `INT64`、`DOUBLE` 或 `DISTRIBUTION` 时适用。支持的单位是 [统一计量单位代码](http://unitsofmeasure.org/ucum.html) 标准的子集。 返回:成功 |
|
衡量值是整数、浮点数等类型。 metricKind 和 valueType 的某些组合可能不受支持。 对于计数器指标,请将其设置为 INT64。 返回:成功 |
|
客户端分配的指标标识符。示例 - “error_count”、“nginx/requests”。 指标标识符限制为 100 个字符,并且只能包含以下字符:A-Z、a-z、0-9 以及特殊字符 _-.,+!*’()%/。正斜杠字符 (/) 表示名称片段的层次结构,并且不能作为名称的第一个字符。 返回:成功 |
|
当使用基于分布日志的指标从日志条目中提取要记录的值时,需要 valueExtractor。支持两种用于值提取的函数 - EXTRACT(field) 或 REGEXP_EXTRACT(field, regex)。参数是:1. field - 从中提取值的日志条目字段的名称。2. regex - 使用 Google RE2 语法的正则表达式(https://github.com/google/re2/wiki/Syntax),其中包含单个捕获组,用于从指定的日志条目字段中提取数据。在应用正则表达式之前,字段的值会转换为字符串。指定不包含恰好一个捕获组的正则表达式是错误的。 返回:成功 |