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属性和指定周期内状态变化的alarmsarray 的条目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 中。