Пользовательский параметр Sensu в данных события
Я хотел бы добавить пользовательские пары ключ / значение к данным события в Sensu. Я добавил ключи к определению события, но его нет к тому времени, когда оно попадает в обработчики.
Итак, чего я хочу добиться - это иметь данные за ключом "custom_values" в тот момент, когда проверочные данные передаются в обработчик. (см. пример)
{
"checks": {
"check-disk": {
"command": "/etc/sensu/plugins/check-disk.rb",
"interval": 60,
"handlers": [
"default"
],
"subscribers": [
"default"
],
"standalone": false
"custom_values": {
"custom1": "somevalue"
}
}
}
}
Мутаторы не помогут, AFAIK они могут работать только с проверочными данными, которые не содержат пользовательский ключ, когда мутатор получает результат проверки.
Спасибо
2 ответа
Не очень много о том, как вы пытаетесь его использовать, но есть пара вещей, в которых вы хотите быть уверены.
Прежде всего, проверки, предоставленные json, искажены, перед определением ваших custom_values вам нужна запятая после "standalone": false
В качестве таких:
"standalone": false,
"custom_values": {
"custom1": "somevalue"
}
Во-вторых, когда вы собираетесь использовать эти данные custom_value в своем обработчике, убедитесь, что вы обращаетесь к ним как к части проверки:
@event['check']['custom_values']['custom1']
а не просто пытаясь использовать его непосредственно вне события, т.е.
@event['custom_values']['custom1']
Это должно работать. Можете ли вы быть уверены, что эта проверка также не определена на клиенте? Кроме того, вы не забыли перезапустить сервер Sensu, чтобы получить новое определение?