Я создал тестовую проверку и теперь хочу ее удалить. Кажется, это не уходит от клиентов. Я использую учима в качестве интерфейса, и чек больше не указан в
/ чеки
Но если я смотрю на клиента, у него все еще есть чек.
Единственный способ, который я нашел для удаления проверки, - это удалить узел и позволить ему заново добавить себя. У меня 300 клиентов, и я бы не стал этим заниматься.
Недавно мы столкнулись с проблемой, когда мы развернули некоторые проверки sensu через ansible, и они воссоздали существующие проверки с неправильными именами. Не было бы ничего плохого в том, чтобы отпустить это, за исключением того, что это плохо выглядит в интерфейсе учива. Я выполнил шаги выше, но они, должно быть, были из устаревшей версии sensu. Вот измененные шаги, которые я сделал, чтобы удалить эти проверки.
redis-cli
keys *server_name*
чтобы перечислить все проверки, связанные с рассматриваемым серверомsmembers result:server_name
srem result:server_name check_to_remove
del history:server_name:check_to_remove result:server_name:check_to_remove
Это должно полностью удалить проверку из Redis, а затем из sensu.
Последний Учива может сделать это сам http://docs.uchiwa.io/en/latest/features/deleting-check-results/
Если кто-то придет к этому и захочет сделать то же самое БЕЗ очистки всей базы данных Redis, вы можете сделать следующее:
Пример: Клиент: SomeServer, проверьте: check_nginx
Команды для запуска:
del execution:SomeServer:check_nginx
del history:SomeServer:check_nginx
Начиная с sensu 0.21.0 существует DELETE /results/:client/:check
API, который должен здесь помочь. Смотрите документы здесь: https://sensuapp.org/docs/0.29/api/results-api.html#resultsclientcheck-delete
И это тоже можно сделать из учива: https://docs.uchiwa.io/reference/clients/#request-to-delete-check-result-data
Оказывается, вы не можете. Вы должны оформить flushall
в Redis
Флешалл - это крайний излишество для решения единственной проверки.
Чтобы разрешить однократную проверку, вы можете вызвать api-вызов «решить» или нажать кнопку «Разрешить».
На моих серверах у меня есть задание cron, которое перебирает все события с помощью sensu-cli и разрешает все, что последний раз проверялось более 1 недели назад, чтобы предотвратить засорение панели управления удаленными проверками.
Я хочу добавить к ответу JonH выше:
Вы можете найти все ключи и проверки через redis-cli:
keys *:*:name_of_check
а затем пройдите и (например,)
del history:hostname:name_of_check
это упростит поиск узлов, имеющих старую проверку, поскольку приведенный выше код распечатает только серверы и конкретную проверку, а не ключи *, которые распечатают все ключи.
Надеюсь это поможет!