我需要一次检查的“输出”属性历史记录,但探索 Redis 我了解 Sensu 仅存储最后一次检查执行的完整检查结果?还有状态码的历史,但现在对我来说并不重要。
我已经提供了创建检查处理程序的解决方案,它将以时间戳作为键将检查结果添加到 Redis。后来有一个从 Redis 中提取数据的脚本。
有没有更简单的方法来做到这一点?
感谢帮助 :)
在不使用处理程序的情况下,您可以查看输出、返回值并从日志中获取有关结果的更多信息:/var/log/sensu/sensu-server.log。如果你想做一些复杂的事情,我认为你需要使用 API:https ://sensuapp.org/docs/latest/api-results 。
API /results/:client/:check (GET) 返回 "output": "WARNING Found 0 matching processes\n",
好的,我已经理解了我在问题中提出的所有内容,我将为未来的读者提供一些解释。
Sensu 仅在 Redis 中存储最后一次检查结果和该检查的退出代码历史记录。通过@Enrique Arriaga 的回答,Sensu 中有一个日志文件,其中写入了所有检查的历史记录。它可用于提取数据,但不适用于用户日志。
用户可以选择使用 Handler,它在每次检查后触发(度量处理程序在每次运行后触发,但其他处理程序类型在退出代码更改之前执行的值后触发!)运行并提供检查结果。由用户决定如何处理结果,他应该将数据添加到日志文件,将数据存储到 Redis,还是其他。