一、场景1:同步CMDB主机 host.get(最小字段,适配CMDB资产入库)
只保留资产、IP、分组、标签、代理、启停状态,无冗余字段
json
{
"jsonrpc": "2.0",
"method": "host.get",
"params": {
"output": [
"hostid",
"host",
"name",
"status",
"proxy_hostid",
"description",
"flags",
"parent_hostid"
],
"selectInterfaces": ["ip", "dns", "port", "type", "main", "useip"],
"selectGroups": ["groupid", "name"],
"selectTags": ["tag", "value"],
"selectInventory": [
"name",
"alias",
"os",
"serialno_a",
"location",
"rack",
"contact",
"notes"
],
"limit": 800,
"sortfield": "hostid"
},
"auth": "替换为你的Bearer Token/sessionid",
"id": 1001
}
二、场景2:同步监控指标 item.get(指标平台/时序库同步专用)
包含监控项键、单位、采集间隔、最新值、数据类型、归属主机、预处理规则
json
{
"jsonrpc": "2.0",
"method": "item.get",
"params": {
"output": [
"itemid",
"hostid",
"name",
"name_resolved",
"key_",
"type",
"value_type",
"status",
"delay",
"units",
"lastclock",
"lastvalue",
"prevvalue",
"state",
"error",
"templateid",
"flags"
],
"selectHosts": ["hostid", "host", "name"],
"selectPreprocessing": "extend",
"selectTags": ["tag", "value"],
"limit": 1000,
"sortfield": "itemid"
},
"auth": "替换为你的Bearer Token/sessionid",
"id": 1002
}
三、场景3:实时同步告警 event.get(告警中心推送,只拉未恢复故障)
事件流水、告警等级、发生时间、主机、触发器、确认状态、恢复标识
json
{
"jsonrpc": "2.0",
"method": "event.get",
"params": {
"output": [
"eventid",
"source",
"object",
"objectid",
"clock",
"ns",
"value",
"name",
"severity",
"acknowledged",
"r_eventid",
"c_eventid"
],
"source": 0,
"object": 0,
"filter": {
"value": 1
},
"selectHosts": ["hostid", "host", "name"],
"selectTriggers": ["triggerid", "description", "priority", "expression", "comments"],
"limit": 500,
"sortfield": "clock",
"sortorder": "DESC"
},
"auth": "替换为你的Bearer Token/sessionid",
"id": 1003
}
使用说明
- 认证二选一
- 旧方式:保留请求内
auth字段填 sessionid; - 7.4推荐永久Token:删除json内
auth,请求头添加Authorization: Bearer xxx
- 旧方式:保留请求内
- 分页逻辑:循环调用,每次
offset += limit拉完全量 - 过滤扩展:
- CMDB:添加
"filter":{"status":0}只同步启用主机; - 告警:如需同步恢复事件,删除
"filter":{"value":1}
- CMDB:添加
- 性能优化:所有模板均未使用
output":"extend",只保留业务必需字段,减少IO与传输耗时。