2

我需要一次检查的“输出”属性历史记录,但探索 Redis 我了解 Sensu 仅存储最后一次检查执行的完整检查结果?还有状态码的历史,但现在对我来说并不重要。

我已经提供了创建检查处理程序的解决方案,它将以时间戳作为键将检查结果添加到 Redis。后来有一个从 Redis 中提取数据的脚本。

有没有更简单的方法来做到这一点?

感谢帮助 :)

4

2 回答 2

2

在不使用处理程序的情况下,您可以查看输出、返回值并从日志中获取有关结果的更多信息:/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",

于 2016-02-10T00:15:41.413 回答
1

好的,我已经理解了我在问题中提出的所有内容,我将为未来的读者提供一些解释。

Sensu 仅在 Redis 中存储最后一次检查结果和该检查的退出代码历史记录。通过@Enrique Arriaga 的回答,Sensu 中有一个日志文件,其中写入了所有检查的历史记录。它可用于提取数据,但不适用于用户日志。

用户可以选择使用 Handler,它在每次检查后触发(度量处理程序在每次运行后触发,但其他处理程序类型在退出代码更改之前执行的值后触发!)运行并提供检查结果。由用户决定如何处理结果,他应该将数据添加到日志文件,将数据存储到 Redis,还是其他。

于 2016-02-10T17:59:06.390 回答