このページで
service.get
説明
integer/array service.get(object parameters)
このメソッドでは、指定された パラメータに従ってサービスを取得できます。
このメソッドは、すべてのタイプのユーザーが利用できます。メソッドを呼び出す権限は、ユーザーロールの設定で取り消すことができます。詳細は、ユーザーロール を参照してください。
パラメータ
(object) 目的の出力を定義するパラメータ。
このメソッドは以下のパラメータをサポートしています。
| Parameter | Type | Description |
|---|---|---|
| serviceids | ID/array | 指定したIDを持つサービスのみを返します。 |
| parentids | ID/array | 指定した親サービスにリンクされているサービスのみを返します。 |
| deep_parentids | flag | 直接および間接のすべての子サービスを返します。parentids と一緒に使用します。 |
| childids | ID/array | 指定した子サービスにリンクされているサービスのみを返します。 |
| evaltype | integer | タグの評価方法。 指定可能な値: 0 - (デフォルト) And/Or; 2 - Or. |
| tags | object/array | 指定したタグを持つサービスのみを返します。 形式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...]。空の配列を指定すると、すべてのサービスを返します。 指定可能なoperatorの値: 0 - (デフォルト) Contains; 1 - Equals; 2 - Does not contain; 3 - Does not equal; 4 - Exists; 5 - Does not exist. |
| problem_tags | object/array | 指定した障害タグを持つサービスのみを返します。 形式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...]。空の配列を指定すると、すべてのサービスを返します。 指定可能なoperatorの値: 0 - (デフォルト) Contains; 1 - Equals; 2 - Does not contain; 3 - Does not equal; 4 - Exists; 5 - Does not exist. |
| without_problem_tags | flag | 障害タグを持たないサービスのみを返します。 |
| slaids | ID/array | 指定したSLAにリンクされているサービスのみを返します。 |
| selectChildren | query | 子サービスを含む children プロパティを返します。count をサポートします。 |
| selectParents | query | 親サービスを含む parents プロパティを返します。count をサポートします。 |
| selectTags | query | サービスタグを含む tags プロパティを返します。count をサポートします。 |
| selectProblemEvents | query | 障害イベントオブジェクトの配列を含む problem_events プロパティを返します。障害イベントオブジェクトは以下のプロパティを持ちます: 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 timestamp)、period_to は対象期間の終了日時(含まない; integer timestamp)です。指定した期間内の状態変化について、 start_value プロパティと alarms 配列を含むエントリの配列を返します。 |
| sortfield | string/array | 指定したプロパティで結果をソートします。 指定可能な値: serviceid, name, status, sortorder, created_at。 |
| countOutput | boolean | これらのパラメータはリファレンス解説で説明されています。 |
| 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パラメータが使用されている場合、取得されたオブジェクトの数
例
すべてのサービスの取得
すべてのサービスとその依存関係に関するすべてのデータを取得します。
{
"jsonrpc": "2.0",
"method": "service.get",
"params": {
"output": "extend",
"selectChildren": "extend",
"selectParents": ["serviceid", "name"]
},
"id": 1
}
レスポンス:
{
"jsonrpc": "2.0",
"result": [
{
"serviceid": "1",
"name": "Zabbix cluster",
"status": "-1",
"algorithm": "2",
"sortorder": "0",
"weight": "0",
"propagation_rule": "0",
"propagation_value": "0",
"description": "",
"uuid": "8d77bd91b62347e4b79382912eb5df95",
"created_at": "1761742392",
"readonly": false,
"parents": [],
"children": [
{
"serviceid": "2",
"name": "Zabbix server node 1",
"status": "-1",
"algorithm": "2",
"sortorder": "0",
"weight": "0",
"propagation_rule": "0",
"propagation_value": "0",
"description": "",
"uuid": "195911d26d7f4e218d6217079bcd5929",
"created_at": "1761742623",
"readonly": false
},
{
"serviceid": "3",
"name": "Zabbix server node 2",
"status": "-1",
"algorithm": "2",
"sortorder": "0",
"weight": "0",
"propagation_rule": "0",
"propagation_value": "0",
"description": "",
"uuid": "9fc659a30fe244f690dff25fc2a9db5c",
"created_at": "1761742654",
"readonly": false
}
]
},
{
"serviceid": "2",
"name": "Zabbix server node 1",
"status": "-1",
"algorithm": "2",
"sortorder": "0",
"weight": "0",
"propagation_rule": "0",
"propagation_value": "0",
"description": "",
"uuid": "195911d26d7f4e218d6217079bcd5929",
"created_at": "1761742623",
"readonly": false,
"parents": [
{
"serviceid": "1",
"name": "Zabbix cluster"
}
],
"children": []
},
{
"serviceid": "3",
"name": "Zabbix server node 2",
"status": "-1",
"algorithm": "2",
"sortorder": "0",
"weight": "0",
"propagation_rule": "0",
"propagation_value": "0",
"description": "",
"uuid": "9fc659a30fe244f690dff25fc2a9db5c",
"created_at": "1761742654",
"readonly": false,
"parents": [
{
"serviceid": "1",
"name": "Zabbix cluster"
}
],
"children": []
}
],
"id": 1
}
ソース
CService::get() in ui/include/classes/api/services/CService.php.