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.
Описание
- Метрики, основанные на логах, также могут использоваться для извлечения значений из логов и создания распределения этих значений. Распределение записывает статистику извлечённых значений вместе с необязательной гистограммой значений, как указано в параметрах корзины.
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен доступа OAuth2, если тип учетных данных — accesstoken. |
auth_kind строка / обязательно | Тип используемых учетных данных. Варианты:
|
bucket_options словарь | bucketOptions необходимы, когда метрика, основанная на журналах, использует тип значения DISTRIBUTION, и описывает границы ведер, используемые для создания гистограммы извлеченных значений. |
|
explicit_buckets словарь |
Указывает набор ведер с произвольными ширинами. |
|
bounds список / элементы=строка / обязательно |
Значения должны быть монотонно возрастающими. |
|
exponential_buckets словарь |
Указывает экспоненциальную последовательность ведер, ширина которых пропорциональна значению нижней границы. Каждое ведро представляет собой постоянную относительную неопределенность конкретного значения в ведре. |
|
growth_factor строка |
Должно быть больше 1. |
|
num_finite_buckets целое число |
Должно быть больше 0. |
|
scale строка |
Должно быть больше 0. |
|
linear_buckets словарь |
Указывает линейную последовательность ведер, все из которых имеют одинаковую ширину (за исключением переполнения и недолива). Каждое ведро представляет собой постоянную абсолютную неопределенность конкретного значения в ведре. |
|
num_finite_buckets целое число |
Должно быть больше 0. |
|
offset строка |
Нижняя граница первого ведра. |
|
width целое число |
Должно быть больше 0. |
description строка | Описание этой метрики, используемое в документации. Максимальная длина описания составляет 8000 символов. |
env_type строка | Указывает, в какой среде Ansible вы выполняете этот модуль. Это не следует устанавливать, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов API. |
filter строка / обязательно | Расширенный фильтр журналов (https://cloud.google.com/logging/docs/view/advanced-filters), используемый для сопоставления записей журналов. |
label_extractors словарь | Отображение строки ключа метки на выражение экстрактора, которое используется для извлечения данных из поля записи журнала и назначения в качестве значения метки. Каждый ключ метки, указанный в LabelDescriptor, должен иметь соответствующее выражение экстрактора в этом отображении. Синтаксис выражения экстрактора такой же, как и для поля valueExtractor. |
metric_descriptor словарь / обязательно | Дескриптор метрики, связанный с метрикой на основе журналов. |
|
display_name строка |
Краткое имя метрики, которое может отображаться в пользовательских интерфейсах. Используйте строчную форму без точки в конце, например, «Количество запросов». Это поле необязательно, но рекомендуется для всех метрик, связанных с понятными пользователю концепциями, такими как квота. |
|
labels список / элементы=словарь |
Набор меток, которые могут использоваться для описания конкретного экземпляра этого типа метрики. Например, тип метрики appengine.googleapis.com/http/server/response_latencies имеет метку для кода HTTP-ответа, response_code, поэтому вы можете посмотреть задержки для успешных ответов или только для ответов, которые завершились ошибкой. |
|
description строка |
Описание метки для пользователя. |
|
key строка / обязательно |
Ключ метки. |
|
value_type string |
Тип данных, которые могут быть назначены метке. Некоторые допустимые значения: “BOOL”, “INT64”, “STRING” По умолчанию: |
|
metric_kind string / обязательно |
Указывает, записываются ли метрикой мгновенные значения, изменения значений и т.д. Некоторые комбинации metricKind и valueType могут быть не поддерживаемыми. Для счетчиков метрик установите это значение в DELTA. Некоторые допустимые значения: “DELTA”, “GAUGE”, “CUMULATIVE” |
|
unit string |
Единица измерения значения метрики. Применимо только если valueType — `INT64`, `DOUBLE` или `DISTRIBUTION`. Поддерживаемые единицы измерения — подмножество стандарта [Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html). По умолчанию: |
|
value_type string / обязательно |
Тип измерения — целое число, число с плавающей точкой и т.д. Некоторые комбинации metricKind и valueType могут быть не поддерживаемыми. Для счетчиков метрик установите это значение в INT64. Некоторые допустимые значения: “BOOL”, “INT64”, “DOUBLE”, “STRING”, “DISTRIBUTION”, “MONEY” |
name string / обязательно | Идентификатор метрики, назначенный клиентом. Примеры: “error_count”, “nginx/requests”. Идентификаторы метрик ограничены 100 символами и могут содержать только следующие символы: A-Z, a-z, 0-9, и специальные символы _-.,+!*’,()%/. Символ слеша (/) обозначает иерархию элементов имени и не может быть первым символом имени. |
project string | Проект Google Cloud Platform для использования. |
scopes list / elements=string | Массив используемых областей. |
service_account_contents jsonarg | Содержимое файла JSON учетной записи службы, либо в виде словаря, либо как JSON-строка, которая его представляет. |
service_account_email string | Дополнительный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. |
service_account_file path | Путь к файлу JSON учетной записи службы, если serviceaccount выбран в качестве типа. |
state string | Указывает, должен ли данный объект существовать в GCP. Варианты:
|
value_extractor string | valueExtractor необходим при использовании метрики распределения на основе журналов, чтобы извлечь значения для записи из записи журнала. Поддерживаются две функции для извлечения значений — EXTRACT(поле) или REGEXP_EXTRACT(поле, регулярное выражение). Аргументы: 1. поле — имя поля записи журнала, из которого нужно извлечь значение. 2. регулярное выражение — регулярное выражение с использованием синтаксиса Google RE2 (https://github.com/google/re2/wiki/Syntax) с одной группой захвата для извлечения данных из указанного поля записи журнала. Значение поля преобразуется в строку перед применением регулярного выражения. Ошибка возникает при указании регулярного выражения, которое не содержит ровно одной группы захвата. |
Примечания
Примечание
- Ссылка на API: https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.metrics/create
- Официальная документация: https://cloud.google.com/logging/docs/apis
- для аутентификации можно установить service_account_file, используя переменную среды
GCP_SERVICE_ACCOUNT_FILE. - для аутентификации можно установить service_account_contents, используя переменную среды
GCP_SERVICE_ACCOUNT_CONTENTS. - для аутентификации можно установить service_account_email, используя переменную среды
GCP_SERVICE_ACCOUNT_EMAIL. - для аутентификации можно установить access_token, используя переменную среды
GCP_ACCESS_TOKEN. - для аутентификации можно установить auth_kind, используя переменную среды
GCP_AUTH_KIND. - для аутентификации можно установить scopes, используя переменную среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в книге сценариев не заданы.
- Параметры 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
Значения возврата
Общие значения возврата описаны в здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
bucketOptions complex | Параметр bucketOptions обязателен, когда метрика на основе журналов использует тип значения DISTRIBUTION, и он описывает границы корзины, используемые для создания гистограммы извлеченных значений. Возвращено: success |
|
explicitBuckets complex |
Задает набор корзин с произвольными ширинами. Возвращено: success |
|
bounds list / elements=string |
Значения должны монотонно возрастать. Возвращено: success |
|
exponentialBuckets complex |
Задает экспоненциальную последовательность корзин, ширина которых пропорциональна значению нижней границы. Каждая корзина представляет собой постоянную относительную неопределенность для конкретного значения в корзине. Возвращено: success |
|
growthFactor string |
Должно быть больше 1. Возвращено: success |
|
numFiniteBuckets integer |
Должно быть больше 0. Возвращено: success |
|
scale string |
Должно быть больше 0. Возвращено: success |
|
linearBuckets complex |
Задает линейную последовательность корзин, которые все имеют одинаковую ширину (за исключением переполнения и недополнения). Каждая корзина представляет собой постоянную абсолютную неопределенность для конкретного значения в корзине. Возвращено: success |
|
numFiniteBuckets integer |
Должно быть больше 0. Возвращено: success |
|
offset string |
Нижняя граница первой корзины. Возвращено: success |
|
width integer |
Должно быть больше 0. Возвращено: success |
description string | Описание этой метрики, которое используется в документации. Максимальная длина описания составляет 8000 символов. Возвращено: success |
filter string | Расширенный фильтр журналов (https://cloud.google.com/logging/docs/view/advanced-filters), который используется для сопоставления записей журнала. Возвращено: success |
labelExtractors dictionary | Карта из строки ключа метки в выражение извлекателя, которое используется для извлечения данных из поля записи журнала и присвоения в качестве значения метки. Для каждого ключа метки, указанного в LabelDescriptor, должно быть связанное выражение извлекателя в этой карте. Синтаксис выражения извлекателя такой же, как и для поля valueExtractor. Возвращено: success |
metricDescriptor complex | Дескриптор метрики, связанный с метрикой на основе журналов. Возвращено: success |
|
displayName string |
Краткое имя метрики, которое может отображаться в пользовательских интерфейсах. Используйте предложение без точки в конце, например «Количество запросов». Это поле необязательно, но рекомендуется устанавливать его для всех метрик, связанных с видимыми пользователями понятиями, такими как квота. Возвращено: success |
|
labels complex |
Набор меток, которые могут использоваться для описания конкретного экземпляра этого типа метрики. Например, тип метрики appengine.googleapis.com/http/server/response_latencies имеет метку для кода HTTP-ответа, response_code, поэтому вы можете просматривать задержки для успешных ответов или только для ответов, которые завершились неудачей. Возвращено: success |
|
description string |
Чёткие описание метки. Возвращено: success |
|
key string |
Ключ метки. Возвращено: success |
|
valueType string |
Тип данных, которые могут быть присвоены метке. Возвращаемое значение: успех |
|
metricKind string |
Указывает, регистрируются ли метрики мгновенные значения, изменения значений и т.д. Некоторые комбинации metricKind и valueType могут быть не поддерживаемы. Для счетчиков метрик установите значение DELTA. Возвращаемое значение: успех |
|
type string |
Тип метрики, включая её префикс имени DNS. Тип не закодирован в URL. Все пользовательские типы метрик имеют имя DNS `custom.googleapis.com` или `external.googleapis.com`. Возвращаемое значение: успех |
|
unit string |
Единица измерения значения метрики. Применима только если valueType равно `INT64`, `DOUBLE` или `DISTRIBUTION`. Поддерживаемые единицы измерения являются подмножеством стандарта [Единицы измерения](http://unitsofmeasure.org/ucum.html). Возвращаемое значение: успех |
|
valueType string |
Указывает, является ли измерение целым числом, числом с плавающей точкой и т.д. Некоторые комбинации metricKind и valueType могут быть не поддерживаемы. Для счетчиков метрик установите значение INT64. Возвращаемое значение: успех |
name string | Идентификатор метрики, назначенный клиентом. Примеры - “error_count”, “nginx/requests”. Идентификаторы метрик ограничены 100 символами и могут содержать только следующие символы: A-Z, a-z, 0-9 и специальные символы _-.,+!*’,()%/. Символ косой черты (/) обозначает иерархию фрагментов имени и не может быть первым символом имени. Возвращаемое значение: успех |
valueExtractor string | valueExtractor необходим при использовании метрики, основанной на журналах распределения, для извлечения значений для записи из записи журнала. Поддерживаются две функции для извлечения значений - EXTRACT(поле) или REGEXP_EXTRACT(поле, регулярное выражение). Аргументы: 1. поле - имя поля записи журнала, из которого нужно извлечь значение. 2. регулярное выражение - регулярное выражение, использующее синтаксис Google RE2 (https://github.com/google/re2/wiki/Syntax) с одной группой захвата для извлечения данных из указанного поля записи журнала. Значение поля преобразуется в строку перед применением регулярного выражения. Ошибка возникает, если указано регулярное выражение, которое не включает ровно одну группу захвата. Возвращаемое значение: успех |
Ссылки на сборку
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_logging_metric_module.html