正規表現を使ったトリガー設定方法について
いつもお世話になっております。
zabbix server 3.0.5 を使用しています。
やりたいこととしては、
Windows のスケジュールされたイベントによってメンテナンスが行われる時期を正規表現を使って検知したいです。
正規表現を使用したトリガーを設定したく、調査・テスト行ってみたのですが、うまくいきませんでした。
以下、Agentのconfigに記載しています。
UserParameter=キー,powershell curl http://169.254.169.254/metadata/scheduledevents?api-version=2017-03-01 -UseBasicParsing
値が以下のようにとれています。
StatusCode : 200
StatusDescription : OK
Content : {"DocumentIncarnation":0,"Events":[]}
RawContent : HTTP/1.1 200 OK
x-ms-package-infosource: ProcessRequestFromPAAgent
Content-Length: 37
Content-Type: application/json
省略
スケジュールされたイベントがある場合は、Contentの"Events":[]の中にイベントの配列が含まれるのですが、
これを検知したい場合、どのようにトリガーを設定したらいいでしょうか。
正規表現が使えるregexpを使用すると思うのですが、、
zabbix webの正規表現テストのところで
regexp("\"Events\":[.*]")を設定して テストしましたが、想定した結果になりませんでした。
また、正規表現を使う際は zabbix webの[一般設定]で[正規表現の作成]をしないと 正規表現は有効にならないのですか?
以下はMSのサイト上の情報で、スケジュールされたイベントがあった場合このように値が取れます。
省略
Content : {"DocumentIncarnation": {IncarnationID},"Events": [
{
"EventId": {eventID},
"EventType": "Reboot" | "Redeploy" | "Freeze",
"ResourceType": "VirtualMachine",
"Resources": [{resourceName}],
"EventStatus": "Scheduled" | "Started",
"NotBefore": {timeInUTC},
}
]
}
省略
poypoy - 投稿数: 18
自己解決いたしました。
regexp("\"Events\":\[\]") でいけました。