Spec-Zone.ru › Chef 18

Ресурс google_project_alert_policy

[редактировать на GitHub]

Синтаксис

Для проверки ресурса Google AlertPolicy используется google_project_alert_policy

Примеры

describe.one do
  google_project_alert_policies(project: 'chef-gcp-inspec').policy_names.each do |policy_name|
    describe google_project_alert_policy(project: 'chef-gcp-inspec', name: policy_name.split('/').last) do
      it { should exist }
      its('display_name') { should cmp 'Display'}
      its('combiner') { should cmp 'OR'}
      it { should be_enabled }
    end
  end
end

Проверка, что политика оповещения GCP включена

describe google_project_alert_policy(policy: ‘spaterson’, name: ‘9271751234503117449’) do it { should be_enabled } end

Проверка, что имя отображения политики оповещения GCP правильное

describe google_project_alert_policy(policy: ‘spaterson-project’, name: ‘9271751234503117449’) do its(‘display_name’) { should eq ‘policy name’ } end

Свойства

Свойства, к которым можно получить доступ из ресурса google_project_alert_policy:

name
Уникальное имя ресурса для этой политики. Его синтаксис: projects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]
display_name
Короткое имя или фраза, используемые для идентификации политики в панелях, уведомлениях и инцидентах. Чтобы избежать путаницы, не используйте одно и то же имя отображения для нескольких политик в одном проекте. Длина имени ограничена 512 символами Юникода.
combiner
Как объединить результаты нескольких условий, чтобы определить, следует ли открывать инцидент.

Возможные значения:

  • AND
  • OR
  • AND_WITH_MATCHING_RESOURCE
creation_record
Только для чтения; запись о создании политики оповещения. Если она предоставлена в вызове создания или обновления, это поле будет проигнорировано.
mutate_time
Время изменения.
mutated_by
Адрес электронной почты пользователя, который внес изменения.
enabled
Включена ли политика. По умолчанию - true.
conditions
Список условий для политики. Условия объединяются с помощью AND или OR в соответствии с полем combiner. Если объединенные условия оцениваются как true, то создается инцидент. Политика может содержать от одного до шести условий.
condition_absent
Условие, проверяющее, продолжает ли временной ряд получать новые точки данных.
aggregations
Указывает выравнивание точек данных в отдельных временных рядах, а также как объединить полученные временные ряды (например, при агрегировании нескольких потоков на каждом ресурсе в один поток для каждого ресурса или при агрегировании потоков по всем членам группы ресурсов). Несколько агрегаций применяются в указанном порядке.
per_series_aligner
Подход, используемый для выравнивания отдельных временных рядов. Не все функции выравнивания могут применяться ко всем временным рядам, в зависимости от типа метрики и типа значения исходного временного ряда. Выравнивание может изменить тип метрики или тип значения временного ряда. Данные временных рядов должны быть выровнены для выполнения сокращения временных рядов. Если указан crossSeriesReducer, то perSeriesAligner должен быть указан и не равен ALIGN_NONE, а alignmentPeriod должен быть указан; в противном случае возвращается ошибка.

Возможные значения:

  • ALIGN_NONE
  • ALIGN_DELTA
  • ALIGN_RATE
  • ALIGN_INTERPOLATE
  • ALIGN_NEXT_OLDER
  • ALIGN_MIN
  • ALIGN_MAX
  • ALIGN_MEAN
  • ALIGN_COUNT
  • ALIGN_SUM
  • ALIGN_STDDEV
  • ALIGN_COUNT_TRUE
  • ALIGN_COUNT_FALSE
  • ALIGN_FRACTION_TRUE
  • ALIGN_PERCENTILE_99
  • ALIGN_PERCENTILE_95
  • ALIGN_PERCENTILE_50
  • ALIGN_PERCENTILE_05
  • ALIGN_PERCENT_CHANGE
group_by_fields
Набор полей, которые необходимо сохранить, когда указан crossSeriesReducer. Поля groupByFields определяют, как временные ряды разделяются на подмножества до применения функции агрегирования. Каждое подмножество содержит временные ряды, которые имеют одинаковое значение для каждого из полей группировки. Каждый отдельный временной ряд является членом ровно одного подмножества. crossSeriesReducer применяется к каждому подмножеству временных рядов. Невозможно выполнить сокращение по разным типам ресурсов, поэтому это поле неявно содержит resource.type. Поля, не указанные в groupByFields, агрегируются. Если groupByFields не указано и все временные ряды имеют тот же тип ресурса, то временные ряды агрегируются в один выходной временной ряд. Если crossSeriesReducer не определен, это поле игнорируется.
alignment_period
Период выравнивания для выравнивания временных рядов. Если он указан, alignmentPeriod должен быть не менее 60 секунд. После выравнивания временных рядов каждый временной ряд будет содержать точки данных только на границах периода. Если perSeriesAligner не указан или равен ALIGN_NONE, то это поле игнорируется. Если perSeriesAligner указан и не равен ALIGN_NONE, то это поле должно быть определено; в противном случае возвращается ошибка.
cross_series_reducer
Подход, используемый для объединения временных рядов. Не все функции сокращения могут применяться ко всем временным рядам, в зависимости от типа метрики и типа значения исходного временного ряда. Сокращение может изменить тип метрики или тип значения временного ряда. Данные временных рядов должны быть выровнены для выполнения сокращения временных рядов. Если указан crossSeriesReducer, то perSeriesAligner должен быть указан и не равен ALIGN_NONE, а alignmentPeriod должен быть указан; в противном случае возвращается ошибка.

Возможные значения:

  • REDUCE_NONE
  • REDUCE_MEAN
  • REDUCE_MIN
  • REDUCE_MAX
  • REDUCE_SUM
  • REDUCE_STDDEV
  • REDUCE_COUNT
  • REDUCE_COUNT_TRUE
  • REDUCE_COUNT_FALSE
  • REDUCE_FRACTION_TRUE
  • REDUCE_PERCENTILE_99
  • REDUCE_PERCENTILE_95
  • REDUCE_PERCENTILE_50
  • REDUCE_PERCENTILE_05
trigger
Количество/процент временных рядов, для которых должно выполняться сравнение, чтобы условие было выполнено. Если не указано, условие будет выполнено, если сравнение истинно для любого из временных рядов, которые были идентифицированы фильтром и агрегациями.
percent
Процент временных рядов, которые должны не удовлетворять условию, для того чтобы условие сработало.
count
Абсолютное количество временных рядов, которые должны не удовлетворять условию, для того чтобы условие сработало.
duration
Время, в течение которого временной ряд должен не сообщать новых данных, чтобы считаться неисправным. В настоящее время поддерживаются только значения, кратные минуте, например 60s, 120s или 300s.
filter
Фильтр, который определяет, какие временные ряды следует сравнить с пороговым значением. Фильтр похож на тот, который указан в запросе MetricService.ListTimeSeries (этот вызов полезен для проверки временных рядов, которые будут извлечены/обработаны), и должен указывать тип метрики, а также может содержать ограничения по типу ресурса, меткам ресурсов и меткам метрики. Длина этого поля не должна превышать 2048 символов Юникода.
name
Уникальное имя ресурса для этого условия. Его синтаксис: projects/[PROJECT_ID]/alertPolicies/[POLICY_ID]/conditions/[CONDITION_ID] [CONDITION_ID] назначается Stackdriver Monitoring при создании или обновлении политики оповещения.
condition_threshold
Условие, сравнивающее временной ряд с пороговым значением.
threshold_value
Значение, с которым сравнивается временной ряд.
denominator_filter
Фильтр, определяющий временной ряд, который должен использоваться в качестве знаменателя отношения, которое будет сравниваться с пороговым значением. Если указан denominator_filter, временной ряд, указанный в поле filter, будет использоваться в качестве числителя. Фильтр аналогичен фильтру, указанному в запросе MetricService.ListTimeSeries (этот запрос полезен для проверки временных рядов, которые будут извлечены/обработаны), и должен указывать тип метрики, а также может содержать ограничения на тип ресурса, метки ресурсов и метки метрики. Длина этого поля не должна превышать 2048 символов Юникода.
denominator_aggregations
Определяет выравнивание точек данных во временных рядах, выбранных denominatorFilter, а также способ объединения извлечённых временных рядов (например, при агрегировании нескольких потоков на каждом ресурсе в один поток для каждого ресурса или при агрегировании потоков по всем членам группы ресурсов). При вычислении отношений поля aggregations и denominator_aggregations должны использовать один и тот же период выравнивания и генерировать временные ряды с одинаковой периодичностью и метками. Это поле аналогично полю в запросе MetricService.ListTimeSeries. При отладке этого поля рекомендуется использовать метод ListTimeSeries.
per_series_aligner
Метод, используемый для выравнивания отдельных временных рядов. Не все функции выравнивания могут применяться ко всем временным рядам в зависимости от типа метрики и типа значения исходного временного ряда. Выравнивание может изменить тип метрики или тип значения временного ряда. Данные временных рядов должны быть выровнены для выполнения межвременного сокращения рядов. Если указан crossSeriesReducer, то должен быть указан perSeriesAligner, не равный ALIGN_NONE, и должен быть указан alignmentPeriod; в противном случае возвращается ошибка.

Возможные значения:

  • ALIGN_NONE
  • ALIGN_DELTA
  • ALIGN_RATE
  • ALIGN_INTERPOLATE
  • ALIGN_NEXT_OLDER
  • ALIGN_MIN
  • ALIGN_MAX
  • ALIGN_MEAN
  • ALIGN_COUNT
  • ALIGN_SUM
  • ALIGN_STDDEV
  • ALIGN_COUNT_TRUE
  • ALIGN_COUNT_FALSE
  • ALIGN_FRACTION_TRUE
  • ALIGN_PERCENTILE_99
  • ALIGN_PERCENTILE_95
  • ALIGN_PERCENTILE_50
  • ALIGN_PERCENTILE_05
  • ALIGN_PERCENT_CHANGE
group_by_fields
Набор полей, которые нужно сохранить, когда указан crossSeriesReducer. Поля groupByFields определяют, как временные ряды разделяются на подмножества до применения функции агрегирования. Каждое подмножество содержит временные ряды, имеющие одинаковое значение для каждого из полей группировки. Каждый отдельный временной ряд является членом ровно одного подмножества. crossSeriesReducer применяется к каждому подмножеству временных рядов. Сведение по разным типам ресурсов невозможно, поэтому это поле неявно содержит resource.type. Поля, не указанные в groupByFields, агрегируются. Если groupByFields не указаны и все временные ряды имеют один и тот же тип ресурса, то временные ряды агрегируются в один выходной временной ряд. Если crossSeriesReducer не определен, это поле игнорируется.
alignment_period
Период выравнивания для выравнивания по временным рядам. Если он присутствует, alignmentPeriod должен быть не менее 60 секунд. После выравнивания по временным рядам каждый временной ряд будет содержать точки данных только на границах периода. Если perSeriesAligner не указан или равен ALIGN_NONE, то это поле игнорируется. Если perSeriesAligner указан и не равен ALIGN_NONE, то это поле должно быть определено; в противном случае возвращается ошибка.
cross_series_reducer
Метод объединения временных рядов. Не все функции сокращения могут применяться ко всем временным рядам в зависимости от типа метрики и типа значения исходного временного ряда. Сокращение может изменить тип метрики или тип значения временного ряда. Данные временных рядов должны быть выровнены для выполнения межвременного сокращения рядов. Если указан crossSeriesReducer, то должен быть указан perSeriesAligner, не равный ALIGN_NONE, и должен быть указан alignmentPeriod; в противном случае возвращается ошибка.

Возможные значения:

  • REDUCE_NONE
  • REDUCE_MEAN
  • REDUCE_MIN
  • REDUCE_MAX
  • REDUCE_SUM
  • REDUCE_STDDEV
  • REDUCE_COUNT
  • REDUCE_COUNT_TRUE
  • REDUCE_COUNT_FALSE
  • REDUCE_FRACTION_TRUE
  • REDUCE_PERCENTILE_99
  • REDUCE_PERCENTILE_95
  • REDUCE_PERCENTILE_50
  • REDUCE_PERCENTILE_05
duration
Продолжительность времени, в течение которой временной ряд должен нарушать порог, чтобы считаться неисправным. В настоящее время поддерживаются только значения, кратные минуте, например, 0, 60, 120 или 300 секунд. Если предоставлено недопустимое значение, возвращается ошибка. При выборе длительности полезно учитывать частоту исходных данных временного ряда (которая также может изменяться из-за любого выравнивания, указанного в поле aggregations); хорошая длительность достаточно велика, чтобы один выброс не генерировал ложные срабатывания, но достаточно мала, чтобы немедленно обнаруживать и сообщать о нездоровых состояниях.
comparison
Сравнение, которое следует применить между временным рядом (указанным filter и aggregation) и пороговым значением (указанным threshold_value). Сравнение применяется к каждому временного ряду, при этом временной ряд стоит слева, а порог — справа. В настоящее время поддерживаются только COMPARISON_LT и COMPARISON_GT.

Возможные значения:

  • COMPARISON_GT
  • COMPARISON_GE
  • COMPARISON_LT
  • COMPARISON_LE
  • COMPARISON_EQ
  • COMPARISON_NE
trigger
Количество/процент временных рядов, для которых должно выполняться сравнение, чтобы условие сработало. Если не указано, условие сработает, если сравнение истинно для любого из временных рядов, которые были определены filter и aggregations, или для отношения, если указаны denominator_filter и denominator_aggregations.
percent
Процент временных рядов, которые должны не соответствовать условию, чтобы условие сработало.
count
Абсолютное количество временных рядов, которые должны не соответствовать условию, чтобы условие сработало.
aggregations
Определяет выравнивание точек данных во временных рядах, а также способ объединения извлечённых временных рядов (например, при агрегировании нескольких потоков на каждом ресурсе в один поток для каждого ресурса или при агрегировании потоков по всем членам группы ресурсов). Несколько агрегаций применяются в указанном порядке. Это поле аналогично полю в запросе MetricService.ListTimeSeries. При отладке этого поля рекомендуется использовать метод ListTimeSeries.
per_series_aligner
Метод, используемый для выравнивания отдельных временных рядов. Не все функции выравнивания могут применяться ко всем временным рядам в зависимости от типа метрики и типа значения исходного временного ряда. Выравнивание может изменить тип метрики или тип значения временного ряда. Данные временных рядов должны быть выровнены для выполнения межвременного сокращения рядов. Если указан crossSeriesReducer, то должен быть указан perSeriesAligner, не равный ALIGN_NONE, и должен быть указан alignmentPeriod; в противном случае возвращается ошибка.

Возможные значения:

  • ALIGN_NONE
  • ALIGN_DELTA
  • ALIGN_RATE
  • ALIGN_INTERPOLATE
  • ALIGN_NEXT_OLDER
  • ALIGN_MIN
  • ALIGN_MAX
  • ALIGN_MEAN
  • ALIGN_COUNT
  • ALIGN_SUM
  • ALIGN_STDDEV
  • ALIGN_COUNT_TRUE
  • ALIGN_COUNT_FALSE
  • ALIGN_FRACTION_TRUE
  • ALIGN_PERCENTILE_99
  • ALIGN_PERCENTILE_95
  • ALIGN_PERCENTILE_50
  • ALIGN_PERCENTILE_05
  • ALIGN_PERCENT_CHANGE
group_by_fields
Набор полей, которые нужно сохранить, когда указан crossSeriesReducer. Поля groupByFields определяют, как временные ряды разделяются на подмножества до применения функции агрегирования. Каждое подмножество содержит временные ряды, имеющие одинаковое значение для каждого из полей группировки. Каждый отдельный временной ряд является членом ровно одного подмножества. crossSeriesReducer применяется к каждому подмножеству временных рядов. Сведение по разным типам ресурсов невозможно, поэтому это поле неявно содержит resource.type. Поля, не указанные в groupByFields, агрегируются. Если groupByFields не указаны и все временные ряды имеют один и тот же тип ресурса, то временные ряды агрегируются в один выходной временной ряд. Если crossSeriesReducer не определен, это поле игнорируется.
alignment_period
Период выравнивания для выравнивания по временным рядам. Если он присутствует, alignmentPeriod должен быть не менее 60 секунд. После выравнивания по временным рядам каждый временной ряд будет содержать точки данных только на границах периода. Если perSeriesAligner не указан или равен ALIGN_NONE, то это поле игнорируется. Если perSeriesAligner указан и не равен ALIGN_NONE, то это поле должно быть определено; в противном случае возвращается ошибка.
cross_series_reducer
Метод объединения временных рядов. Не все функции сокращения могут применяться ко всем временным рядам в зависимости от типа метрики и типа значения исходного временного ряда. Сокращение может изменить тип метрики или тип значения временного ряда. Данные временных рядов должны быть выровнены для выполнения межвременного сокращения рядов. Если указан crossSeriesReducer, то должен быть указан perSeriesAligner, не равный ALIGN_NONE, и должен быть указан alignmentPeriod; в противном случае возвращается ошибка.

Возможные значения:

  • REDUCE_NONE
  • REDUCE_MEAN
  • REDUCE_MIN
  • REDUCE_MAX
  • REDUCE_SUM
  • REDUCE_STDDEV
  • REDUCE_COUNT
  • REDUCE_COUNT_TRUE
  • REDUCE_COUNT_FALSE
  • REDUCE_FRACTION_TRUE
  • REDUCE_PERCENTILE_99
  • REDUCE_PERCENTILE_95
  • REDUCE_PERCENTILE_50
  • REDUCE_PERCENTILE_05
filter
Фильтр, определяющий, какие временные ряды следует сравнить с пороговым значением. Фильтр аналогичен фильтру, указанному в запросе MetricService.ListTimeSeries (этот запрос полезен для проверки временных рядов, которые будут извлечены/обработаны), и должен указывать тип метрики, а также может содержать ограничения на тип ресурса, метки ресурсов и метки метрики. Длина этого поля не должна превышать 2048 символов Юникода.
display_name
Короткое имя или фраза, используемые для идентификации условия в панелях мониторинга, уведомлениях и инцидентах. Для избежания путаницы не используйте одно и то же имя для нескольких условий в одной политике.
notification_channels
Определяет каналы уведомлений, на которые должны отправляться уведомления при открытии или закрытии инцидентов или при возникновении новых нарушений в уже открытом инциденте. Каждый элемент этого массива соответствует полю name в каждом из объектов NotificationChannel, возвращаемых методом notificationChannels.list. Синтаксис записей в этом поле: projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID]
user_labels
Это поле предназначено для организации и идентификации объектов AlertPolicy. Поле может содержать до 64 записей. Каждый ключ и значение ограничены 63 символами Юникода или 128 байтами, в зависимости от меньшего значения. Метки и значения могут содержать только строчные буквы, цифры, символы подчеркивания и дефисы. Ключи должны начинаться с буквы.
documentation
Короткое имя или фраза, используемая для идентификации политики в панелях мониторинга, уведомлениях и инцидентах. Чтобы избежать путаницы, не используйте одно и то же отображаемое имя для нескольких политик в одном проекте. Имя ограничено 512 символами Юникода.
content
Текст документации, интерпретируемый в соответствии с mimeType. Содержание не должно превышать 8192 символов Юникода и не должно превышать 10240 байтов при кодировании в формате UTF-8, в зависимости от меньшего значения.
mime_type
Формат поля содержимого. В настоящее время поддерживается только значение «text/markdown».

Разрешения GCP

Убедитесь, что для текущего проекта включен API мониторинга Stackdriver.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/google_project_alert_policy/

Spec-Zone.ru

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