获取

描述

integer/array service.get(object parameters)

此方法允许根据给定的参数检索服务。 :::请注意 此方法允许任何用户使用。可以在用户角色设置中撤销调用此方法的权限。更多信息请查看 用户角色。 :::

参数

(object)定义所需输出的参数。 该方法支持以下参数。 |参数 |类型|说明| |--|--|------| |serviceids|ID/array|仅返回拥有指定ID的服务。| |parentids|ID/array|仅返回拥有指定硬依赖父服务的服务。| |deep_parentids|flag|返回所有直接和间接的子服务,与父对象一起使用。| |childids|ID/array|仅返回在指定子服务上有硬依赖的服务。| |evaltype|integer|标记搜索规则。

Possible values:
0 - (默认) And/Or;
2 - 或| |tags|object/array|仅返回具有给定标记的服务。按标记精确匹配,按标记值区分大小写或不区分大小写搜索,具体取决于运算符值。格式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].空数组返回所有服务。

运算符
0 - (默认) 包含;
1 - 等于;
2 - 不包含
3 - 不相等
4 -存在
5 - 不存在| |problem_tags|object/array|仅返回具有给定问题标记的服务。按标记精确匹配,按标记值区分大小写或不区分大小写搜索,具体取决于运算符值。格式:[{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].空数组返回所有服务。

运算符
0 - (默认) 包含;
1 - 等于;
2 - 不包含
3 -不相等
4 - 存在
5 - 不存在| |without_problem_tags|flag|只返回没有问题标签的服务。| |slaids|ID/array|仅返回链接到特定SLA的服务。| |selectChildren|query|仅返回在指定子服务上有硬依赖的服务。

支持统计| |selectParents|query|仅返回在指定父服务上有硬依赖的服务。

Supports count.支持统计| |selectTags|query|返回制定服务标签

支持统计| |selectProblemEvents|query|返回一个带有问题事件对象数组的problem_events属性。

问题事件对象具有以下属性:
eventid -事件ID
severity - 严重性-(字符串)当前事件的严重性;
name - (字符串)已解析的事件名称。| |selectProblemTags|query|指定问题标签 返回标签

支持统计| |selectStatusRules|query|返回一个状态规则

支持统计| |selectStatusTimeline|object/array|返回包含给定时段的服务状态更改的status_timeline属性。

格式:[{"period_from": "<period_from>", "period_to": "<period_to>"}, ...]- period_from 开始日期(包括;整数时间戳),period_to结束日期(不包括;整数时戳)。

返回一个数组,其中包含start_value属性和指定时段内状态更改的报警| |sortfield|string/array|根据给定的属性对结果进行排序。

Possible values: 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|^|

返回值

(整型/数组) 返回其中之一: - 一个对象数组; - 如果使用countOutput参数,被检索对象的数量。

示例

检索所有服务

检索有关所有服务及其依赖关系的所有数据。 请求:

{
           "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() in ui/include/classes/api/services/CService.php.