Spec-Zone.ru › Ansible

модуль google.cloud.gcp_logging_metric – создание метрики GCP

Примечание

Этот модуль входит в коллекцию google.cloud (версия 1.13.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install google.cloud. Для работы с этим модулем необходимы дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: google.cloud.gcp_logging_metric.

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Метрику на основе журналов также можно использовать для извлечения значений из журналов и создания распределения этих значений. В распределении сохраняется статистика извлечённых значений, а также необязательная гистограмма значений, заданная параметрами корзин.

Требования

На узле, где выполняется этот модуль, должны быть установлены следующие компоненты.

  • python >= 2.6
  • requests >= 2.18.4
  • google-auth >= 1.3.0

Параметры

Параметр

Описание

access_token

string

Токен доступа OAuth2, если тип учётных данных — accesstoken.

auth_kind

string / обязательный

Тип используемых учётных данных.

Варианты:

  • "application"
  • "machineaccount"
  • "serviceaccount"
  • "accesstoken"

bucket_options

dictionary

Параметр bucketOptions обязателен, если в метрике на основе журналов используется тип значения DISTRIBUTION. Он описывает границы корзин, используемые для создания гистограммы извлечённых значений.

explicit_buckets

dictionary

Задаёт набор корзин произвольной ширины.

bounds

list / элементы=string / обязательный

Значения должны монотонно возрастать.

exponential_buckets

dictionary

Задаёт экспоненциальную последовательность корзин, ширина которых пропорциональна значению нижней границы. Каждая корзина соответствует постоянной относительной неопределённости для конкретного значения в корзине.

growth_factor

string

Значение должно быть больше 1.

num_finite_buckets

integer

Значение должно быть больше 0.

scale

string

Значение должно быть больше 0.

linear_buckets

dictionary

Задаёт линейную последовательность корзин одинаковой ширины (за исключением переполнения и недополнения).

Каждая корзина соответствует постоянной абсолютной неопределённости для конкретного значения в корзине.

num_finite_buckets

integer

Значение должно быть больше 0.

offset

string

Нижняя граница первой корзины.

width

integer

Значение должно быть больше 0.

description

string

Описание этой метрики, используемое в документации. Максимальная длина описания — 8000 символов.

env_type

string

Указывает, в какой среде Ansible выполняется этот модуль.

Не задавайте этот параметр, если не знаете, что делаете.

Он изменяет только строку User Agent для любых запросов к API.

filter

string / обязательный

Расширенный фильтр журналов (https://cloud.google.com/logging/docs/view/advanced-filters), используемый для поиска записей журнала.

label_extractors

dictionary

Сопоставление строкового ключа метки с выражением извлечения, которое извлекает данные из поля записи журнала и присваивает их в качестве значения метки. Для каждого ключа метки, указанного в LabelDescriptor, в этой карте должно быть задано соответствующее выражение извлечения. Синтаксис выражения извлечения совпадает с синтаксисом поля valueExtractor.

metric_descriptor

dictionary / обязательный

Дескриптор метрики, связанный с метрикой на основе журналов.

display_name

string

Краткое название метрики, отображаемое в пользовательских интерфейсах. Используйте регистр предложений, не ставьте точку в конце, например «Количество запросов». Это необязательное поле, однако рекомендуется задавать его для любых метрик, связанных с понятиями, видимыми пользователю, например с квотой.

labels

list / элементы=dictionary

Набор меток, которые можно использовать для описания конкретного экземпляра этого типа метрики. Например, у типа метрики appengine.googleapis.com/http/server/response_latencies есть метка для кода HTTP-ответа — response_code. Это позволяет просматривать задержки для успешных ответов или только для ответов с ошибкой.

description

string

Понятное человеку описание метки.

key

string / обязательный

Ключ метки.

value_type

string

Тип данных, которые можно присвоить метке.

Допустимые варианты: “BOOL”, “INT64”, “STRING”

По умолчанию: "STRING"

metric_kind

string / обязательный

Указывает, записывает ли метрика мгновенные значения, изменения значения и т. д.

Некоторые сочетания metricKind и valueType могут не поддерживаться.

Для метрик-счётчиков задайте значение DELTA.

Допустимые варианты: “DELTA”, “GAUGE”, “CUMULATIVE”

unit

string

Единица измерения, в которой указывается значение метрики. Применяется только в том случае, если valueType имеет значение `INT64`, `DOUBLE` или `DISTRIBUTION`. Поддерживается подмножество единиц измерения из стандарта [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html).

По умолчанию: "1"

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 / элементы=string

Массив используемых областей доступа

service_account_contents

jsonarg

Содержимое JSON-файла сервисного аккаунта в виде словаря или JSON-строки, представляющей его.

service_account_email

string

Необязательный адрес электронной почты сервисного аккаунта. Используется, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию.

service_account_file

path

Путь к JSON-файлу сервисного аккаунта, если в качестве типа выбран serviceaccount.

state

string

Указывает, должен ли заданный объект существовать в GCP.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

value_extractor

string

При использовании метрики на основе журналов с распределением параметр 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
  • Официальная документация: 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

Тип данных, которые можно присвоить метке.

Возвращается: success

metricKind

string

Указывает, записывает ли метрика мгновенные значения, изменения значения и т. д.

Некоторые сочетания metricKind и valueType могут не поддерживаться.

Для метрик-счётчиков задайте значение DELTA.

Возвращается: success

type

string

Тип метрики, включая префикс имени DNS. Тип не кодируется для URL.

Все типы метрик, определённые пользователем, имеют имя DNS `custom.googleapis.com` или `external.googleapis.com`.

Возвращается: success

unit

string

Единица измерения, в которой указывается значение метрики. Применяется только в том случае, если valueType равен `INT64`, `DOUBLE` или `DISTRIBUTION`. Поддерживается подмножество стандарта [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html).

Возвращается: success

valueType

string

Указывает, является ли измерение целым числом, числом с плавающей точкой и т. д.

Некоторые сочетания metricKind и valueType могут не поддерживаться.

Для метрик-счётчиков задайте значение INT64.

Возвращается: success

name

string

Идентификатор метрики, назначаемый клиентом. Примеры: «error_count», «nginx/requests».

Длина идентификаторов метрик не должна превышать 100 символов; в них допускаются только следующие символы: A-Z, a-z, 0-9 и специальные символы _-.,+!*’,()%/. Символ косой черты (/) обозначает иерархию частей имени и не может быть первым символом имени.

Возвращается: success

valueExtractor

string

Для извлечения из записи журнала значений, которые следует записать в метрику распределения на основе журналов, необходимо задать valueExtractor. Поддерживаются две функции извлечения значений: EXTRACT(field) или REGEXP_EXTRACT(field, regex). Аргументы: 1. field — имя поля записи журнала, из которого нужно извлечь значение. 2. regex — регулярное выражение в синтаксисе Google RE2 (https://github.com/google/re2/wiki/Syntax) с одной группой захвата для извлечения данных из указанного поля записи журнала. Перед применением регулярного выражения значение поля преобразуется в строку. Если указать регулярное выражение, которое содержит не ровно одну группу захвата, произойдёт ошибка.

Возвращается: success

Авторы

  • Google Inc. (@googlecloudplatform)

Ссылки на коллекцию

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/google/cloud/gcp_logging_metric_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API