nagios - 如何从 Thruk 导出所有主机和服务?
问题描述
我们在业务中使用 Thruk 作为不同 nagios 后端服务器的前端。
我需要创建由这些 nagios 服务器监控的所有服务及其主机的列表,但我看不到导出列表的简单方法。
我一直到左下角的配置按钮并设法获取我需要加载的列表,但我无法从该区域干净地复制和粘贴,并且没有可用的导出。
我想知道是否有另一种简单的方法可以做到这一点,通过 CLI 似乎是一项更长的任务。
解决方案
您可以从 Thruks REST API 获取主机和服务列表。
这里有一些例子:https ://thruk.org/documentation/rest_examples.html
在命令行中,您可以使用 thruk cli 工具生成列表:
%> thruk r /csv/hosts?columns=name
这将创建一个所有主机的简单文本列表。删除 /csv 前缀将生成 json 数据结构。删除 columns=... 将导出所有可用的列。
同样可以从 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 中配置的主机,可以通过 ex.: 访问 Thruk 配置工具/r/config/objects?:TYPE=host
。所有可用的休息网址列表在这里:
https ://thruk.org/documentation/rest.html#_endpoints
推荐阅读
- javascript - 中途通过 JS 反转动画时出现 CSS 动画故障
- c++ - catch2 单包含导致测试中出现“未定义的引用”
- powershell - Powershell字符串替换运行缓慢
- amazon-web-services - 如何在 AWS EKS 上托管的 pod 内挂载外部 Windows 文件共享?
- r - 将一个数据集中一列中的数值转换为不同数据集上对应的文本值
- json - 如何修复错误不获取数据?在 swift 和 Laravel api 中
- visual-studio-code - 如何在 VS Code 的文件夹中找到短语
- ssrs-2016 - 如何将报告的标题更改为与 .rdl 文件名不同
- java - 如何根据用户输入改变活动数量?
- asp.net-core - RedisTimeoutException 使我的 aspnet 核心应用程序崩溃