お世話になっております。 アイテムキー proc.num で、orは使用できますでしょうか?
プロセス名が再起動のタイミングで変わる可能性があるため、 2つのどちらかのプロセス名で動いていれば障害ではないという監視を行いたいと思っております。
使用しているzabbixのバージョンは4.0です。
「プロセス名が再起動のタイミングで変わる」とはどういう状態なのでしょうか。
共通しているサービス名の部分があるのであれば、その部分で監視すれば良いのではないでしょうか。
proc.num[]の引数で複数のプロセス名を指定することは不可能だっ たと思います。
代替策として、Zabbixでは、トリガーの条件式で複数のアイテムの 値を参照して判断させることができますので、それぞれのプロセス 名のアイテムを作成して、トリガーでそれらの値を元に判断できる ような条件式を記述してみてはいかがでしょうか?
ありがとうございます。 proc.numでは複数指定が不可ということで、 判定したいプロセス名のアイテムを2つ作成するというところはわかったのですが、 トリガーの設定方法がわからず苦戦しています。
アイテム2つを1つのトリガーで判断させるのはどのような条件式を作成すればよいでしょうか?
試した手順で疑問点が発生しましたので、質問させてください。
トリガーの設定として、 {hostname1:proc.num[prosess1].last(0)}<1 and {hostname1:proc.num[prosess2].last(0)}<1 という式を作成し、条件式ビルダーからテストを実行したところ 片方の値を0にすると、FALSEが返り、 両方を0にするとTRUEが返ってきます。
また、条件式をorにすると {hostname1:proc.num[prosess1].last(0)}<1 and {hostname1:proc.num[prosess2].last(0)}<1 片方の値を0にすると、TRUEが返り、 両方を0にしてもTRUEが返り、両方を1にするとFALSEが返ってきます。
このテストの結果がTRUEであるときに障害判定としてアラートがあがるものと認識していますが、
どちらか片方のプロセスが生きている場合は障害判定としないというトリガーを作成したい場合は、and条件式を設定するのが正しいのでしょうか?
どちらかが「1以上だった場合」→正常 という条件から 両方ともが「0だった場合」→どっちも起動していない→障害 として考えるのだと思います
ですので、両方ともが「1未満=すなわち0」の and 条件、となる、で良いかと思います
{hostname1:proc.num[prosess1].last(0)}<1 and {hostname1:proc.num[prosess2].last(0)}<1
ありがとうございます。 理解することができました。
アカウント名 m-m
Zabbix関連
Yasumi - 投稿数: 380
「プロセス名が再起動のタイミングで変わる」とはどういう状態なのでしょうか。
共通しているサービス名の部分があるのであれば、その部分で監視すれば良いのではないでしょうか。
TNK - 投稿数: 4760
proc.num[]の引数で複数のプロセス名を指定することは不可能だっ
たと思います。
代替策として、Zabbixでは、トリガーの条件式で複数のアイテムの
値を参照して判断させることができますので、それぞれのプロセス
名のアイテムを作成して、トリガーでそれらの値を元に判断できる
ような条件式を記述してみてはいかがでしょうか?
m-m - 投稿数: 38
ありがとうございます。
proc.numでは複数指定が不可ということで、
判定したいプロセス名のアイテムを2つ作成するというところはわかったのですが、
トリガーの設定方法がわからず苦戦しています。
アイテム2つを1つのトリガーで判断させるのはどのような条件式を作成すればよいでしょうか?
m-m - 投稿数: 38
試した手順で疑問点が発生しましたので、質問させてください。
トリガーの設定として、
{hostname1:proc.num[prosess1].last(0)}<1 and {hostname1:proc.num[prosess2].last(0)}<1
という式を作成し、条件式ビルダーからテストを実行したところ
片方の値を0にすると、FALSEが返り、
両方を0にするとTRUEが返ってきます。
また、条件式をorにすると
{hostname1:proc.num[prosess1].last(0)}<1 and {hostname1:proc.num[prosess2].last(0)}<1
片方の値を0にすると、TRUEが返り、
両方を0にしてもTRUEが返り、両方を1にするとFALSEが返ってきます。
このテストの結果がTRUEであるときに障害判定としてアラートがあがるものと認識していますが、
どちらか片方のプロセスが生きている場合は障害判定としないというトリガーを作成したい場合は、and条件式を設定するのが正しいのでしょうか?
fripper - 投稿数: 495
どちらかが「1以上だった場合」→正常
という条件から
両方ともが「0だった場合」→どっちも起動していない→障害
として考えるのだと思います
ですので、両方ともが「1未満=すなわち0」の and 条件、となる、で良いかと思います
{hostname1:proc.num[prosess1].last(0)}<1 and {hostname1:proc.num[prosess2].last(0)}<1
m-m - 投稿数: 38
ありがとうございます。
理解することができました。