问题描述
我们在业务中使用Thruk作为不同nagios后端服务器的前端。
我需要创建由这些nagios服务器监视的所有服务及其主机的列表,但是我看不到导出列表的简便方法。
我去过左下角的“配置”按钮,并设法获取了需要加载的列表,但是我无法从该区域干净地复制和粘贴,并且没有导出可用。
我想知道是否还有另一种简单的方法可以做到,通过CLI似乎将是一个较长的任务。
解决方法
您可以从Thruks REST API获取主机和服务的列表。
这里有一些示例:https://thruk.org/documentation/rest_examples.html
在命令行中,您可以使用thruk cli工具生成列表:
%> thruk r /csv/hosts?columns=name
这将创建所有主机的简单文本列表。删除/ csv前缀将导致json数据结构。 删除column = ...将导出所有可用的列。
可以从Web Rest API中获取相同的内容:
%> curl -H "X-Thruk-Auth-Key: ****" -g 'http://user:password@localhost/thruk/r/csv/hosts?columns=name'
可以在用户个人资料页面中创建API密钥。
URL /r/hosts
检索当前在nagios中配置的所有主机,可以通过例如/r/config/objects?:TYPE=host
访问Thruk配置工具。
以下是所有可用的剩余URL的列表:
https://thruk.org/documentation/rest.html#_endpoints