昨日、Grafana でアラートを構成し、2 つのサーバーからアラートを受け取りました。高い IO、高い CPU などを取得したのは、常に同じ 2 台のサーバーです。
問題は、彼らはそれほど高いデータを持っていないということです。実際、彼らはほとんどアイドル状態です。すべてのサーバーは、Ansible を介してまったく同じように構成されています。したがって、Telegraf 構成はすべてのサーバーで同じです。
また、Grafana の統計を対応するサーバーにフィルターすると、下のスクリーンショットでわかるように、グラフに表示されるデータは正しくなります。それでも、Rule-Test の結果は誤検知になります。
vmstat
どちらが正しい情報を表示するかを確認しました:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 47100 151152 20948 454556 2 2 16 38 2 1 2 1 96 0 1
0 0 47100 151136 20948 454592 0 0 0 0 125 135 0 1 96 0 2
0 0 47100 150408 20956 454584 0 0 0 84 222 282 1 3 93 0 4
0 0 47100 150424 20956 454592 0 0 0 0 151 225 0 0 97 0 2
0 0 47100 150424 20956 454592 0 0 0 0 115 140 0 0 96 0 4
0 0 47100 150424 20956 454592 0 0 0 0 109 125 0 0 97 0 2
0 0 47100 150424 20956 454592 0 0 0 0 121 131 0 0 98 0 2
0 0 47100 150412 20972 454576 0 0 0 92 139 208 0 1 96 0 3
0 0 47100 150456 20972 454592 0 0 0 0 65 117 0 0 99 0 1
0 0 47100 150876 20972 454592 0 0 0 16 692 705 2 4 88 0 5
そしてtelegraf.log
何かがおかしい場合。
2017-07-07T09:22:04Z I! Starting Telegraf (version 1.3.3)
2017-07-07T09:22:04Z I! Loaded outputs: influxdb
2017-07-07T09:22:04Z I! Loaded inputs: inputs.diskio inputs.processes inputs.swap inputs.system inputs.redis inputs.disk inputs.kernel inputs.mem inputs.net inputs.nginx inputs.postgresql inputs.cpu
2017-07-07T09:22:04Z I! Tags enabled: environment=production host=om-1-prod rails_env=production role=telegraf
2017-07-07T09:22:04Z I! Agent Config: Interval:10s, Quiet:false, Hostname:"om-1-prod", Flush Interval:10s
ここで何が問題なのですか?