trigger.get

説明

integer/array trigger.get(object parameters)

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

このメソッドは、あらゆる種類のユーザーが利用できます。 このメソッドの呼び出し権限は、ユーザーロール設定で取り消すことができます。 詳細は User roles を参照してください。

パラメータ

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

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

パラメータ 型 説明
triggerids ID/array 指定したIDを持つトリガーのみを返します。
groupids ID/array 指定したホストグループまたはテンプレートグループのホストまたはテンプレートに属するトリガーのみを返します。
templateids ID/array 指定したテンプレートに属するトリガーのみを返します。
hostids ID/array 指定したホストに属するトリガーのみを返します。
itemids ID/array 指定したアイテムを含むトリガーのみを返します。
maintenanceids 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 最近(ok_period以内)障害状態になったトリガーのみを返します。
min_severity integer 指定した重要度以上のトリガーのみを返します。
evaltype integer タグの評価方法。

指定可能な値:
0 - (デフォルト) And/Or;
2 - Or。
tags array 指定したタグを持つトリガーのみを返します。
形式: [{"tag": "<tag>", "value": "<value>", "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.