integer/array service.get(object parameters)
该方法允许根据给定的参数检索服务。
此方法适用于任何类型的用户。可以在用户角色设置中撤销调用该方法的权限。更多信息请参见 User roles。
(object) 参数定义了所需的输出。
该方法支持以下参数。
参数 | 数据类型 | 描述 |
---|---|---|
serviceids | ID/array | 仅返回具有指定 ID 的服务。 |
parentids | ID/array | 仅返回与给定父服务关联的服务。 |
deep_parentids | flag | 返回所有直接和间接的子服务。需与 parentids 一起使用。 |
childids | ID/array | 仅返回与给定子服务关联的服务。 |
evaltype | integer | 标签搜索规则。 可能的值: 0 - (默认) 与/或; 2 - 或。 |
tags | object/array | 仅返回具有指定标签的服务。根据操作符的值,按标签进行精确匹配,或对标签值进行区分大小写或不区分大小写的搜索。 格式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...] 。空的 array 将返回所有服务。 可能的操作符值: 0 - (默认) 包含; 1 - 等于; 2 - 不包含; 3 - 不等于; 4 - 存在; 5 - 不存在。 |
problem_tags | object/array | 仅返回具有指定问题标签的服务。根据操作符的值,按标签进行精确匹配,以及区分大小写或不区分大小写的标签值搜索。 格式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...] 。空的 array 返回所有服务。 可能的操作符值: 0 - (默认) 包含; 1 - 等于; 2 - 不包含; 3 - 不等于; 4 - 存在; 5 - 不存在。 |
without_problem_tags | flag | 仅返回没有问题标签的服务。 |
slaids | ID/array | 仅返回链接到特定SLA的服务。 |
selectChildren | query | 返回包含子服务的 children 属性。支持 count 。 |
selectParents | query | 在返回的服务中包含一个 parents 属性。支持 count 。 |
selectTags | query | 返回一个带有服务标签的 tags 属性。支持 count 。 |
selectProblemEvents | query | 返回一个 problem_events 属性,并带有问题事件 objects 的 array。问题事件 object 具有以下属性: eventid - (ID) 事件 ID;severity - (string) 当前事件严重性;name - (string) 已解决事件名称。支持 count 。 |
selectProblemTags | query | 返回一个包含问题标签的 problem_tags 属性。支持 count 。 |
selectStatusRules | query | 返回一个包含状态规则的 status_rules 属性。支持 count 。 |
selectStatusTimeline | object/array | 返回一个包含给定时间段内服务状态变化的 status_timeline 属性。格式为 [{"period_from": "<period_from>", "period_to": "<period_to>"}, ...] - period_from (integer 时间戳,包含)和 period_to (integer 时间戳,不包含)分别表示您感兴趣的周期的起始日期(包含)和结束日期(不包含)。返回一个包含 start_value 属性和指定周期内状态变化的 alarms array 的条目array。 |
sortfield | string/array | 按照给定属性对结果进行排序。 可能的值: serviceid 、name 、status 、sortorder 、created_at 。 |
countOutput | boolean | 这些参数在通用get方法参数中进行了描述。 |
editable | boolean | |
excludeSearch | boolean | |
filter | object | |
limit | integer | |
output | query | |
preservekeys | boolean | |
search | object | |
searchByAny | boolean | |
searchWildcardsEnabled | boolean | |
sortorder | string/array | |
startSearch | boolean |
(integer/array)
返回以下之一:
countOutput
参数,则为检索到的 objects 的数量。检索有关所有服务及其依赖关系的所有数据。
执行请求:
{
"jsonrpc": "2.0",
"method": "service.get",
"params": {
"output": "extend",
"selectChildren": "extend",
"selectParents": "extend"
},
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": [
{
"serviceid": "1",
"name": "My Service - 0001",
"status": "-1",
"algorithm": "2",
"sortorder": "0",
"weight": "0",
"propagation_rule": "0",
"propagation_value": "0",
"description": "My Service Description 0001.",
"uuid": "dfa4daeaea754e3a95c04d6029182681",
"created_at": "946684800",
"readonly": false,
"parents": [],
"children": []
},
{
"serviceid": "2",
"name": "My Service - 0002",
"status": "-1",
"algorithm": "2",
"sortorder": "0",
"weight": "0",
"propagation_rule": "0",
"propagation_value": "0",
"description": "My Service Description 0002.",
"uuid": "20ea0d85212841219130abeaca28c065",
"created_at": "946684800",
"readonly": false,
"parents": [],
"children": []
}
],
"id": 1
}
CService::get() 在 ui/include/classes/api/services/CService.php 中。