Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

service.update

説明

object service.update(object/array services)

このメソッドで、既存のサービスを更新できます。

このメソッドはどのタイプのユーザーでも利用可能です。このメソッドを呼び出す権限は、ユーザーロール設定で取り消すことができます。詳しくはユーザーの役割を参照してください。

パラメータ

(object/array) 更新されるサービスプロパティ

serviceidプロパティはサービスごとに定義する必要があり、すべてのプロパティはオプションです。 渡されたプロパティのみが更新され、他のプロパティは変更されません。

このメソッドは標準サービスプロパティに加えて、次のパラメーターを受け入れます。

パラメータ タイプ 説明
children array 現在のサービスの子サービスを置き換えるサービス。

子にはserviceidプロパティを定義する必要があります。
parents array 現在のサービスの親サービスを置き換えるサービス。

親にはserviceidプロパティを定義する必要があります。
tags array 現在のサービスタグを置き換えるサービスタグ
problem_tags array 現在の障害タグを置き換える障害タグ
status_rules array 現在のステータスルールを置き換えるステータスルール

戻り値

(object) serviceidsプロパティの下で更新されたサービスのIDを含むオブジェクトを返します。

親サービスを設定する

ID"3"のサービスをID"5"のサービスの親にします。

Request:

{
           "jsonrpc": "2.0",
           "method": "service.update",
           "params": {
               "serviceid": "5",
               "parents": [
                   {
                       "serviceid": "3"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "serviceids": [
                   "5"
               ]
           },
           "id": 1
       }

スケジュールされたダウンタイムの追加

ID"4"のサービスに毎週月曜日22:00から火曜日10:00でスケジュールされたダウンタイムを追加します

Request:

{
           "jsonrpc": "2.0",
           "method": "service.update",
           "params": {
               "serviceid": "4",
               "times": [
                   {
                       "type": "1",
                       "ts_from": "165600",
                       "ts_to": "201600"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "serviceids": [
                   "4"
               ]
           },
           "id": 1
       }

ソース

CService::update() in ui/include/classes/api/services/CService.php.