trigger.get

説明

integer/array trigger.get(object parameters)

このメソッドは、指定されたパラメータに従ってトリガーを取得することができます。

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

パラメータ

(object) 目的の出力を定義するパラメータです。

このメソッドは以下のパラメータをサポートしています。

Parameter Type Description
triggerids ID/array 指定したIDのトリガーのみを返します。
groupids ID/array 指定したホストグループまたはテンプレートグループに属するホストまたはテンプレートのトリガーのみを返します。
templateids ID/array 指定したテンプレートに属するトリガーのみを返します。
hostids ID/array 指定したホストに属するトリガーのみを返します。
itemids ID/array 指定したアイテムを含むトリガーのみを返します。
functions string/array 指定した関数を使用するトリガーのみを返します。

サポートされている関数の一覧については、supported function ページを参照してください。
group string 指定した名前のホストグループまたはテンプレートグループに属するホストまたはテンプレートのトリガーのみを返します。
host string 指定した技術名のホストに属するトリガーのみを返します。
inherited boolean true に設定した場合、テンプレートから継承されたトリガーのみを返します。
templated boolean true に設定した場合、テンプレートに属するトリガーのみを返します。
dependent boolean true に設定した場合、依存関係を持つトリガーのみを返します。false に設定した場合、依存関係を持たないトリガーのみを返します。
monitored flag 監視対象のホストに属し、有効なアイテムのみを含む有効なトリガーのみを返します。
active flag 監視対象のホストに属する有効なトリガーのみを返します。
maintenance boolean true に設定した場合、メンテナンス中のホストに属する有効なトリガーのみを返します。
withUnacknowledgedEvents flag 未確認のイベントを持つトリガーのみを返します。
withAcknowledgedEvents flag すべてのイベントが確認済みのトリガーのみを返します。
withLastEventUnacknowledged flag 最後のイベントが未確認のトリガーのみを返します。
skipDependent flag 他のトリガーに依存している障害状態のトリガーをスキップします。なお、他のトリガーが無効である場合、無効なアイテムを持つ場合、または無効なアイテムのホストに属する場合、それらのトリガーは無視されます。
lastChangeSince timestamp 指定した時刻以降に状態が変化したトリガーのみを返します。
lastChangeTill timestamp 指定した時刻以前に状態が変化したトリガーのみを返します。
only_true flag 最近障害状態になったトリガーのみを返します。
min_severity integer 指定した深刻度以上のトリガーのみを返します。
evaltype integer タグの評価方法

指定可能な値:
0 - (default) And/Or;
2 - Or.
tags array 指定したタグを持つトリガーのみを返します。
形式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...]
空の配列を指定すると、すべてのトリガーを返します。

指定可能なoperator の値:
0 - (default) Contains;
1 - Equals;
2 - Does not contain;
3 - Does not equal;
4 - Exists;
5 - Does not exist.
expandComment flag トリガーの説明内のマクロを展開します。
expandDescription flag トリガー名内のマクロを展開します。
expandExpression flag トリガー条件式内の関数およびマクロを展開します。
selectHostGroups query トリガーが属するホストグループを hostgroups プロパティで返します。
selectHosts query トリガーが属するホストを hosts プロパティで返します。
selectItems query トリガーに含まれるアイテムを items プロパティで返します。
selectFunctions query トリガーで使用されている関数を functions プロパティで返します。

関数オブジェクトはトリガー条件式で使用される関数を表し、以下のプロパティを持ちます:
functionid - (ID) 関数のID;
itemid - (ID) 関数で使用されるアイテムのID;
function - (string) 関数名;
parameter - (string) 関数に渡されるパラメータ。クエリパラメータは、返される文字列では $ 記号に置き換えられます。
selectDependencies query トリガーが依存しているトリガーを dependencies プロパティで返します。
selectDiscoveryData query トリガーのディスカバリオブジェクトデータを含む discoveryData プロパティを返します。トリガーディスカバリオブジェクトは、ディスカバリされたトリガーを、その元となったトリガープロトタイプに関連付けます。

以下のプロパティを持ちます:
parent_triggerid - (ID) トリガーの作成元となったトリガープロトタイプのID;
status - (int) トリガーディスカバリのステータス:
0 - (default) トリガーはディスカバリ済み,
1 - トリガーはすでにディスカバリされていない;
ts_delete - (timestamp) すでにディスカバリされていないトリガーが削除される時刻;
ts_disable - (timestamp) すでにディスカバリされていないトリガーが無効化される時刻;
disable_source - (int) トリガーがLLDルールによって無効化されたか、手動で無効化されたかを示す指標:
0 - (default) 自動的に無効化,
1 - LLDルールによって無効化。
selectDiscoveryRule query トリガーを作成した low-level discovery rulediscoveryRule プロパティで返します。
selectLastEvent query 最後の重要なトリガーイベントを lastEvent プロパティで返します。
selectTags query トリガーのタグを tags プロパティで返します。
inheritedTags boolean 指定した tags をテンプレート/ホスト/リンクされたテンプレートにも持つトリガーを返します。

指定可能な値:
true - テンプレート/ホスト/リンクされたテンプレートも指定したタグを持っている必要があります;
false - (default) テンプレート/ホスト/リンクされたテンプレートのタグは無視されます。
selectInheritedTags query テンプレート、リンクされたテンプレート、ホストから継承されたタグ、およびトリガーまたはリカバリ条件式で参照されるアイテムから継承されたタグを含む inheritedTags プロパティを返します。
selectTemplateGroups query トリガーが属するテンプレートグループを templategroups プロパティで返します。
filter object 指定したフィルターに完全に一致する結果のみを返します。

プロパティ名をキーとし、値を一致対象の単一の値または値の配列とするオブジェクトを受け付けます。

text data type のプロパティはサポートされません。

追加のプロパティをサポートします:
host - トリガーが属するホストの技術名;
hostid - トリガーが属するホストのID。
limitSelects integer サブセレクトで返されるレコード数を制限します。

以下のサブセレクトに適用されます:
selectHosts - 結果は host でソートされます。
sortfield string/array 指定したプロパティで結果をソートします。

指定可能な値: triggerid, description, status, priority, lastchange, hostname
countOutput boolean これらのパラメータは reference commentary で説明されています。
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean
selectTriggerDiscovery query triggerDiscovery プロパティでトリガーディスカバリオブジェクトを返します。トリガーディスカバリオブジェクトは、トリガーをその作成元となったトリガープロトタイプに関連付けます。

このクエリは非推奨です。代わりに selectDiscoveryData を使用してください。

戻り値

(integer/array) 次のいずれかを返します:

  • オブジェクトの配列
  • countOutputパラメーターが使用されている場合、取得したオブジェクトの数

トリガーIDによるデータの取得

トリガー"14062"で使用されているすべてのデータと関数を取得します。

リクエスト:

{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "triggerids": "14062",
        "output": "extend",
        "selectFunctions": "extend"
    },
    "id": 1
}

レスポンス:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "14062",
            "expression": "{13513}<10m",
            "description": "{HOST.NAME} has been restarted (uptime < 10m)",
            "url": "",
            "status": "0",
            "value": "0",
            "priority": "2",
            "lastchange": "0",
            "comments": "The host uptime is less than 10 minutes",
            "error": "",
            "templateid": "10016",
            "type": "0",
            "state": "0",
            "flags": "0",
            "recovery_mode": "0",
            "recovery_expression": "",
            "correlation_mode": "0",
            "correlation_tag": "",
            "manual_close": "0",
            "opdata": "",
            "event_name": "",
            "uuid": "",
            "url_name": "",
            "functions": [
                {
                    "functionid": "13513",
                    "itemid": "24350",
                    "triggerid": "14062",
                    "parameter": "$",
                    "function": "last"
                }
            ]
        }
    ],
    "id": 1
}

障害状態のトリガーの取得

障害状態にあるすべてのトリガーの ID、名前、深刻度を取得し、深刻度の降順で並べ替えます。

リクエスト :

{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "output": [
            "triggerid",
            "description",
            "priority"
        ],
        "filter": {
            "value": 1
        },
        "sortfield": "priority",
        "sortorder": "DESC"
    },
    "id": 1
}

レスポンス :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "13907",
            "description": "Zabbix self-monitoring processes < 100% busy",
            "priority": "4"
        },
        {
            "triggerid": "13824",
            "description": "Zabbix discoverer processes more than 75% busy",
            "priority": "3"
        }
    ],
    "id": 1
}

タグ付きの特定のトリガーの取得

タグ付きの特定のトリガーを取得します。

リクエスト:

{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "output": [
            "triggerid",
            "description"
        ],
        "selectTags": "extend",
        "triggerids": [
            "17578"
        ]
    },
    "id": 1
}

レスポンス:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "17370",
            "description": "Service status",
            "tags": [
                {
                    "tag": "service",
                    "value": "{{ITEM.VALUE}.regsub(\"Service (.*) has stopped\", \"\\1\")}",
                    "automatic": "1"
                },
                {
                    "tag": "error",
                    "value": "",
                    "automatic": "1"
                }
            ]
        }
    ],
    "id": 1
}

関連項目

ソース

CTrigger::get() in ui/include/classes/api/services/CTrigger.php.