trigger.get

説明

integer/array trigger.get(object parameters)

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

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

パラメーター

(object) 望ましい出力を定義するパラメーター。

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

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

サポートされている関数の一覧はサポートされている関数ページを参照してください。
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 - (デフォルト) And/Or;
2 - Or.
tags array 指定したタグを持つトリガーのみを返します。
フォーマット: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...]
空の配列はすべてのトリガーを返します。

指定可能なoperator値:
0 - (デフォルト) 含む;
1 - 等しい;
2 - 含まない;
3 - 等しくない;
4 - 存在する;
5 - 存在しない。
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 - (デフォルト) トリガーが検出されている,
1 - トリガーがもはや検出されていない;
ts_delete - (timestamp) もはや検出されていないトリガーが削除される時刻;
ts_disable - (timestamp) もはや検出されていないトリガーが無効化される時刻;
disable_source - (int) トリガーがLLDルールまたは手動で無効化されたかどうかの指標:
0 - (デフォルト) 自動的に無効化,
1 - LLDルールによって無効化。
selectDiscoveryRule query discoveryRuleプロパティでトリガーを作成した低レベルディスカバリールールを返します。
selectLastEvent query lastEventプロパティで最後の重要なトリガーイベントを返します。
selectTags query tagsプロパティでトリガータグを返します。
inheritedTags boolean tagsで指定したタグがテンプレート/ホスト/リンクされたテンプレートにも存在するトリガーを返します。

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

オブジェクトを受け入れ、キーはプロパティ名、値は一致させる単一値または値の配列です。

textデータ型のプロパティはサポートされません。

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

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

指定可能な値: triggerid, description, status, priority, lastchange, hostname.
countOutput boolean これらのパラメーターはリファレンス解説で説明されています。
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.