通过 CheckMK Web 获取主机状态-API
Get host status by CheckMK Web-API
我正在尝试使用 CheckMK WebAPI 获取主机的状态。有人可以指出正确的方向如何获取这些数据吗?
我们目前正在使用 CheckMK 企业版 1.4.0。
我试过:
https://<monitoringhost.tld>/<site>/check_mk/webapi.py?action=get_host&_username=<user>&_secret=<secret>&output_format=json&effective_attributes=1&request={"hostname": "<hostname>"}
但是响应没有关于主机本身的任何相关信息(例如状态up/down、正常运行时间等)。
{
"result": {
"attributes": {
"network_scan": {
"scan_interval": 86400,
"exclude_ranges": [],
"ip_ranges": [],
"run_as": "api"
},
"tag_agent": "cmk-agent",
"snmp_community": null,
"ipv6address": "",
"alias": "",
"management_protocol": null,
"site": "testjke",
"tag_address_family": "ip-v4-only",
"tag_criticality": "prod",
"contactgroups": [
true,
[]
],
"network_scan_result": {
"start": null,
"state": null,
"end": null,
"output": ""
},
"parents": [],
"management_address": "",
"tag_networking": "lan",
"ipaddress": "",
"management_snmp_community": null
},
"hostname": "<host>",
"path": ""
},
"result_code": 0
http://<monitoringhost.tld>/<site>/check_mk/view.py?view_name=allhosts&output_format=csv
您可以通过添加 output_format=[csv|json|python] 使用您在 webui 中看到的所有视图.
您将看到您所看到的 table 的数据。
您还需要添加在您的问题中看到的字幕。
网络api仅用于getting/setting主机或其他对象的配置。如果您不想获取主机的实时状态,请使用 livestatus。
如果您在端口 6557(默认)上启用了 livestats,您可以通过网络查询主机的状态。如果您在本地登录 shell,则可以使用 'lq'。
OMD[mysite]:~$ lq "GET hosts\nColumns: name"
为什么:
CheckMK webapi 是否用于访问 WATO。 WATO 是创建 nagios 配置的来源。 Nagios 将对主机进行监控,livestatus api 是 nagios 核心的扩展。
我正在尝试使用 CheckMK WebAPI 获取主机的状态。有人可以指出正确的方向如何获取这些数据吗?
我们目前正在使用 CheckMK 企业版 1.4.0。
我试过:
https://<monitoringhost.tld>/<site>/check_mk/webapi.py?action=get_host&_username=<user>&_secret=<secret>&output_format=json&effective_attributes=1&request={"hostname": "<hostname>"}
但是响应没有关于主机本身的任何相关信息(例如状态up/down、正常运行时间等)。
{
"result": {
"attributes": {
"network_scan": {
"scan_interval": 86400,
"exclude_ranges": [],
"ip_ranges": [],
"run_as": "api"
},
"tag_agent": "cmk-agent",
"snmp_community": null,
"ipv6address": "",
"alias": "",
"management_protocol": null,
"site": "testjke",
"tag_address_family": "ip-v4-only",
"tag_criticality": "prod",
"contactgroups": [
true,
[]
],
"network_scan_result": {
"start": null,
"state": null,
"end": null,
"output": ""
},
"parents": [],
"management_address": "",
"tag_networking": "lan",
"ipaddress": "",
"management_snmp_community": null
},
"hostname": "<host>",
"path": ""
},
"result_code": 0
http://<monitoringhost.tld>/<site>/check_mk/view.py?view_name=allhosts&output_format=csv
您可以通过添加 output_format=[csv|json|python] 使用您在 webui 中看到的所有视图.
您将看到您所看到的 table 的数据。 您还需要添加在您的问题中看到的字幕。
网络api仅用于getting/setting主机或其他对象的配置。如果您不想获取主机的实时状态,请使用 livestatus。
如果您在端口 6557(默认)上启用了 livestats,您可以通过网络查询主机的状态。如果您在本地登录 shell,则可以使用 'lq'。
OMD[mysite]:~$ lq "GET hosts\nColumns: name"
为什么: CheckMK webapi 是否用于访问 WATO。 WATO 是创建 nagios 配置的来源。 Nagios 将对主机进行监控,livestatus api 是 nagios 核心的扩展。