2016-05-04 11 views
3

私は、prometheus alertmanagerを構成し、検証する必要があるタスクに取り組んでいます。メソスプロセスとHAProxyプロセスがダウンしたときに警告を受け取り、インターネット上で警告ルールを見つけようとしましたが、適切ではありませんでした。これらの警告ルールを書く方法を教えてもらえますか?基本的に条件条項が必要です。メソスとHAProxyプロセスのためのprometheus警告ルールを書き込む方法。

答えて

4

これは物事をどのように監視しているかによって異なります。例としてHAProxyを使って、HAProxy Exporter(https://github.com/prometheus/haproxy_exporter)を使ってそれを監視しているとしましょう。 HAProxy Exporterには、haproxy_upという名前のメトリックが含まれています。これは、HAProxyを正常にスクラップしたかどうかを示します(Prometheusがエクスポータをスクラップしたとき)。 HAProxyを掻き取れなかった場合、haproxy_upの値は0になり、そのことを警告することができます。 HAProxy Exporterにプロメテウスのジョブ名がhaproxy-exporterであるとします。任意のHAProxyインスタンスが5分以上掻き取りすることができなかった場合、これはアラートを送信します

ALERT HAProxyDown 
    IF haproxy_up{job="haproxy-exporter"} == 0 
    FOR 5m 
    LABELS { 
    severity = "page" 
    } 
    ANNOTATIONS { 
    summary = "HAProxy {{ $labels.instance }} down", 
    description = "HAProxy {{ $labels.instance }} could not be scraped." 
    } 

:あなたは、このような警告ルールを書くことができます。

あなたが(代わりにHAProxy自体の)輸出が押されたかどうかを知りたいと思った場合は、代わりにHAProxy輸出インスタンスダウンいずれかを見つけるために、表現up{job="haproxy-exporter"} == 0を使用することができます。おそらく両方を実際にチェックしたいと思うでしょう。

メソスとその輸出業者について私は経験がないので、私はそれについてはほとんど言いませんが、それは似たようなものになると思います。

0

また、エクスポートメゾスメトリックでは、mesos-exporterを使用する必要があります。 https://github.com/prometheus-junkyard/mesos_exporter https://hub.docker.com/r/prom/mesos-exporter/ また、mesos_upメトリックもあります。あなたのアラートは、HaProxyアラートのように一致する必要があります:

ALERT MesosMasterDown 
    IF mesos_up{job="mesos-master-exporter"} == 0 
    FOR 5m 
    LABELS { 
    severity = "page" 
    } 
    ANNOTATIONS { 
    summary = "Mesos master {{ $labels.instance }} down", 
    description = "Mesos master {{ $labels.instance }} could not be scraped." 
    } 

ALERT MesosSlaveDown 
    IF mesos_up{job="mesos-slave-exporter"} == 0 
    FOR 5m 
    LABELS { 
    severity = "page" 
    } 
    ANNOTATIONS { 
    summary = "Mesos slave {{ $labels.instance }} down", 
    description = "Mesos slave {{ $labels.instance }} could not be scraped." 
    } 
+0

ブライアンありがとう – milind

関連する問題