正規表現複数指定について
いつもお世話になっております。
今回は正規表現複数指定についてご教示をお願いしたいです。
※Zabbixの正規表現の中身は1001個まで条件指定が可能と認識している前提でお願いします。
以下の正規表現
正規表現1:AA-01
中身:AA [結果が真]
正規表現2:AA-02
中身:BB[結果が真]
正規表現2つを同時に使用したい場合、以下のような指定方法は可能でしょうか。
また、不可能な場合代わりとなる設定方法等はありますでしょうか。
希望する設定方法:logrt[/var/log/test.log,@AA-01&@AA-02,,,skip]
■補足
バージョン:zabbix-2.2
以上をよろしくお願いします。
TNK - 投稿数: 4769
実際に2.2では試していませんが、「@AA-01&@AA-02」の部分が
「AA-01&@AA-02」という正規表現と解釈されてしまって、設定され
ている「AA-01」や「AA-02」と一致しないので、指定された正規
表現が無いと判断されてしまうでしょう。
# 3.0.17でアイテムが取得不可となることを確認済
ですので、AND条件で合致したログを取得されたいのであれば、1つ
の正規表現内に条件を列挙することが必要だと思います。
otakon1012 - 投稿数: 30
TNKさんいつもご教示ありがとうございます。
上記の方法では取得不可なのですね。
(どうしても1つの正規表現内(1001個)に収まらない場合が出てきそうなのでどうにかしたいのですが…)
アイテムはAA-01とAA-02の2つ用意し、トリガーで
{template名:logrt[/var/log,@AA-01,,,skip].regexp(.*)}&&{template名:logrt[/var/log,@AA-02,,,skip].regexp(.*)}=1
としたときは1つにまとめたときと結果は変わりますでしょうか。
そもそも、2つのアイテムをトリガー条件に組み込めますでしょうか。
重ねての質問となり申し訳ありませんがよろしくお願い致します。
TNK - 投稿数: 4769
トリガーの条件式に複数のアイテムを含めることは可能です。
ただし、この条件式では、
logrt[/var/log,@AA-01,,,skip]
と
logrt[/var/log,@AA-02,,,skip]
が同じログの行の文字列を保持しているという保証は無いので、
ログが、必ずしも両方の引数で指定している正規表現の条件を同
時に満たしているという条件にはならないと思います。
1つの行のログアイテムの値に、複数の正規表現での条件を並べて
評価したいということであれば、正規表現でフィルタリングしな
いアイテムを作成して、トリガーの条件式で、正規表現に合致し
ている条件式を同時に満たすかどうかという記述方法にした方が
良いと思います。
otakon1012 - 投稿数: 30
ご回答ありがとうございます。
質問への回答だけでなく、代案まで出していただきありがとうございます。
正規表現をアイテムで使わず、トリガーで使う方法は頭になかったです。
一旦代案を使わせて頂きます。