正規表現によるエラーコードの検索につきまして
いつもお世話になっております。
現在、zabbixエージェントが入っているサーバで、あるミドルウェアの
エラーログをzabbixサーバが拾うよう設定を試みております。
そこでエラーコードのひっかけかたに苦戦しております。
以下がその例となります。
~エラーメッセージ(ログ)~
DATA=2018/05/20 START TIME=13:20:00 END TIME=13:24:00 RC=OOOO-OOOO
※RC=以降のOOOO-OOOがエラーコードとなり「O」のところに数字が入ります。
最初の4桁の「O」うち下3桁によってエラーの種類が異なります
RC=O180-OOOO ~ RC=O199-OOOO :Aのエラー
RC=O200-OOOO ~ RC=O219-OOOO :Bのエラー
上記例の「Aのエラー」ときのエラーコードの引っ掛け方につまづいております。
RC=*(18[0-9] | 19[0-9]) とやってみたのですがうまくいきませんでした。
うまい引っ掛け方がありましたらご教示いただきたく
よろしくお願いいたします。
ちなみにバージョンは以下のものになります。
zabbix 3.0.15
OS:centos7.3
heya - 投稿数: 319
・* はワイルドカードとは違うので、=* だと、「= が 0 個以上」という意味になります。
・| の前後の空白は不要です(空白があるとそれは空白文字とみなされる)。
それはいいとして、RC=x18x か RC=x19x に引っ掛けたいなら、() や | すら不要です。
これでどうでしょうか。
RC=[0-9]1[89][0-9]
同様に RC=x20x か RC=x21x だとこうですかね。
RC=[0-9]2[01][0-9]