Spec-Zone.ru › Ansible

sensu.sensu_go.check модуль — Управление проверками Sensu

Примечание

Этот модуль входит в коллекцию sensu.sensu_go (версия 1.14.0).

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

Для установки используйте: ansible-galaxy collection install sensu.sensu_go. Для использования этого модуля потребуются дополнительные требования, см. Требования для подробностей.

Чтобы использовать его в книге задач, укажите: sensu.sensu_go.check.

Новая в sensu.sensu_go 1.0.0

  • Описание
  • Требования
  • Параметры
  • См. также
  • Примеры
  • Значения возврата

Описание

  • Создание, обновление или удаление проверки Sensu Go.
  • Для получения дополнительной информации обратитесь к документации Sensu Go по адресу https://docs.sensu.io/sensu-go/latest/reference/checks/.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 2.7

Параметры

Параметр

Комментарии

annotations

словарь

Пользовательские метаданные поля с меньшими ограничениями, в виде пар «ключ-значение».

Эти поля сохраняются Sensu, но не доступны как токены или идентификаторы, и предназначены в основном для использования с внешними инструментами.

По умолчанию: {}

auth

словарь

Параметры аутентификации. Каждый из них также можно определить через переменные среды.

api_key

строка

добавлено в sensu.sensu_go 1.3.0

Ключ API, который должен использоваться при аутентификации. Если он не задан, будет проверена переменная среды SENSU_API_KEY.

Заменяет параметры auth.user и auth.password.

Дополнительную информацию о ключе API см. в официальной документации Sensu по адресу https://docs.sensu.io/sensu-go/latest/guides/use-apikey-feature/.

ca_path

путь

добавлено в sensu.sensu_go 1.5.0

Путь к файлу сертификата CA, который должен использоваться для проверки сертификата бэкенда.

Если этот параметр не задан, модуль использует файл CA, используемый python.

Этот параметр также можно задать через переменную среды SENSU_CA_PATH.

password

строка

Пароль пользователя Sensu. Если этот параметр не задан, будет проверена переменная среды SENSU_PASSWORD.

Этот параметр игнорируется, если задан параметр auth.api_key.

По умолчанию: "P@ssw0rd!"

url

строка

Расположение API бэкенда Sensu. Если этот параметр не задан, будет проверена переменная среды SENSU_URL.

По умолчанию: "http://localhost:8080"

user

строка

Имя пользователя для подключения к API Sensu. Если этот параметр не задан, будет проверена переменная среды SENSU_USER.

Этот параметр игнорируется, если задан параметр auth.api_key.

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

verify

логическое

добавлено в sensu.sensu_go 1.5.0

Флаг, контролирующий валидацию сертификатов.

Если вы используете самоподписанные сертификаты, можно установить этот параметр в false.

ИСПОЛЬЗУЙТЕ ЭТОТ ПАРАМЕТР ТОЛЬКО В СЦЕНАРИЯХ РАЗРАБОТКИ! Если вы используете самоподписанные сертификаты в рабочей среде, см. параметр auth.ca_path.

Этот параметр также можно задать через переменную среды SENSU_VERIFY.

Варианты:

  • false
  • true ← (по умолчанию)

check_hooks

словарь

Сопоставление кодов ответов с хуками, которые будут выполняться агентом при возврате этого кода.

Обратите внимание, что структура этого параметра немного отличается от описанной на https://docs.sensu.io/sensu-go/latest/reference/checks/#check-hooks-attribute.

Дополнительную информацию о точной структуре сопоставления см. в примере хуков проверки ниже.

command

строка

Команда проверки для выполнения.

Требуется, если state равен present.

cron

строка

Расписание запросов проверки с использованием синтаксиса crontab.

Не может быть использовано при использовании опции interval.

env_vars

словарь

Сопоставление имен и значений переменных среды для использования при выполнении команды.

handlers

список / элементы=строка

Список обработчиков, которые получают результаты проверки.

high_flap_threshold

целое число

Порог высокого дрожания.

interval

целое число

Интервал запросов проверки.

Не может быть использовано при использовании опции cron.

labels

словарь

Пользовательские поля метаданных, которые можно получить в Sensu, в виде пар «ключ-значение».

По умолчанию: {}

low_flap_threshold

целое число

Порог низкого дрожания.

name

строка / обязательный

Имя ресурса Sensu. Это имя (в сочетании с пространством имён, если применимо) однозначно идентифицирует ресурс, на котором Ansible выполняет операции.

Если ресурс с выбранным именем уже существует, модуль Ansible обновит его в соответствии с указанием в задаче.

См. спецификацию атрибута метаданных name в документации upstream по адресу https://docs.sensu.io/sensu-go/latest/reference/ для получения более подробной информации о допустимых именах и других ограничениях.

namespace

строка

Пространство имён RBAC для работы. Если этот параметр не задан, используется значение переменной среды SENSU_NAMESPACE.

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

output_metric_format

string

Включить разбор метрик в указанном формате из вывода этого чека.

Варианты:

  • "graphite_plaintext"
  • "influxdb_line"
  • "nagios_perfdata"
  • "opentsdb_line"

output_metric_handlers

список / элементы=строка

Список обработчиков, которые получают результаты проверки. Я не уверен, зачем это нужно.

proxy_entity_name

строка

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

proxy_requests

словарь

Позволяет назначить проверку для выполнения для нескольких сущностей в соответствии с их атрибутами сущности.

entity_attributes

список / элементы=строка

Список проверок атрибутов для определения, против каких прокси-сущностей должна планироваться эта проверка.

splay

булево

Включает или отключает распределение запросов проверки.

Варианты:

  • false
  • true

splay_coverage

целое число

Процент interval для распределения проверок.

publish

булево

Включает или отключает запланированную публикацию запросов проверки.

Варианты:

  • false
  • true

round_robin

булево

Массив переменных среды для использования при выполнении команд.

Варианты:

  • false
  • true

runtime_assets

список / элементы=строка

Список ресурсов выполнения, необходимых для запуска проверки.

secrets

список / элементы=словарь

добавлено в sensu.sensu_go 1.6.0

Список секретов, доступных для команды.

name

строка / обязательно

добавлено в sensu.sensu_go 1.6.0

Имя переменной, которая будет содержать конфиденциальные данные.

secret

строка / обязательно

добавлено в sensu.sensu_go 1.6.0

Имя секрета, который содержит конфиденциальные данные.

state

строка

Целевое состояние объекта Sensu.

Варианты:

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

stdin

булево

Включает запись сериализованных данных JSON в стандартный ввод команды проверки.

Используется только с проверками, специально написанными для Sensu Go.

Варианты:

  • false
  • true

subscriptions

список / элементы=строка

Список подписок, которые получают запросы проверки.

Обязательно, если state равен present.

timeout

целое число

Таймаут выполнения проверки.

ttl

целое число

Время, по истечении которого результат проверки считается устаревшим.

См. также

См. также

sensu.sensu_go.check_info

Список проверок Sensu.

Примеры

- name: Check executing command every 30 seconds
  sensu.sensu_go.check:
    name: check
    command: check-cpu.sh -w 75 -c 90
    subscriptions:
      - checks
    interval: 30
    publish: yes

- name: Check executing command with cron scheduler
  sensu.sensu_go.check:
    name: check
    command: check-cpu.sh -w 75 -c 90
    subscriptions:
      - systems
    handlers:
      - slack
    cron: "* * * * *"
    publish: yes

- name: Ad-hoc scheduling
  sensu.sensu_go.check:
    name: check
    command: check-cpu.sh -w 75 -c 90
    subscriptions:
      - systems
    handlers:
      - slack
    interval: 60
    publish: no

- name: Report events under proxy entity name instead of agent entity
  sensu.sensu_go.check:
    name: check
    command: http_check.sh https://sensu.io
    subscriptions:
      - proxy
    handlers:
      - slack
    interval: 60
    proxy_entity_name: sensu-site
    round_robin: yes
    publish: yes

- name: Event that triggers hooks
  sensu.sensu_go.check:
    name: check
    command: http_check.sh https://sensu.io
    subscriptions: [ proxy ]
    # The upstream JSON payload for the hooks below would look like this:
    #
    #   "check_hooks": [
    #     {"0": ["passing-hook", "always-run-this-hook"]},
    #     {"critical": ["failing-hook", "always-run-this-hook"]}
    #   ]
    #
    # Ansible task simplifies this structure into a simple mapping:
    check_hooks:
      "0":
        - passing-hook
        - always-run-this-hook
      critical:
        - failing-hook
        - always-run-this-hook

- name: Remove check
  sensu.sensu_go.check:
    name: my-check
    state: absent

Значения возврата

Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:

Ключ

Описание

object

словарь

Объект, представляющий Sensu-чек.

Возвращено: success

Пример: {"command": "collect.sh", "handlers": ["slack"], "interval": 10, "metadata": {"name": "check_minimum", "namespace": "default"}, "publish": true, "subscriptions": ["system"]}

Авторы

  • Пол Артур (@flowerysong)
  • Альджаз Косир (@aljazkosir)
  • Миха Плеско (@miha-plesko)
  • Тадей Боровсак (@tadeboro)

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

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

© 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/sensu/sensu_go/check_module.html

Spec-Zone.ru

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