誰でも ZABBIX

Zabbixの使い方、役に立つ情報、等々

3. グラフ作成時の属性(パーセンタイル)

パーセンタイルというのは、普段あまり聞きなれない言葉ですが、監視データするデータによっては、指定したパーセンタイルの値をパッとグラフで確認できるのは便利な場合があります。

今回は、パーセンタイルの利用例と、実際どのように確認できるかを紹介します。

パーセンタイルそのものについては、ネット上に詳しい説明がいっぱいあるので、そちらを参照ください。 私自身も、統計についてあまり詳しくないので、もし誤りがありましたら、ご指摘いただければ幸いです。

パーセンタイルの使い道

中央値の確認

平均値(算術平均)は外れ値があると、実際の「真ん中へん」よりも大きくずれてしまいます。いわゆる、「平均貯蓄額が千何百万円」とかいわれても、大多数の人が「え、そんなにないでしょ」というあれですね。

監視データでも、実際の算術平均と中央値がずれるケースは結構あります。以下のように、中央値(50パーセンタイル)を常にグラフで確認できるようにしておくと、平均と中央値の乖離をすぐに確認できます。

f:id:Unam:20180124221003p:plain

これはPingのグラフです。外部のDNSなので、応答速度に結構バラツキがあります。平均値は13.5msとなっていますが、中央値は5.4msとなっています。この例で言うと、平均値の13.5msというのは、どちらかというと普通よりちょっとレスポンスが悪い状態、といえるかも知れません。

シビアなサービスなら10msを超えたらちょっと予備的な警告のトリガーをあげる必要があるかもしれません。これはあくまでも例ですが、算術平均だけでは実体をつかむのが難しいケースがある、ということです。

異常発生タイミングの絞りこみ

異常を検知するための閾値が決まっていれば、それをトリガーにセットしておくことで警告をあげることが可能です。 逆に、通常は定量的な閾値を設定することはできないが、普段と大きな値が発生したタイミングを後から確認したい、というケースもあります。

たとえば、ある製造ラインで製造した部品に不良品が不規則に混ざっていたとします。製造工程を調べる過程で、工程aの機器に供給されていた電圧が怪しいことがわかり、3パーセンタイル以下になったタイミングをすぐに特定する必要があるとします(電圧とかパーセンタイルの値は、あくまでもたとえです)。このような時、電圧を測定しているグラフがあれば、そのグラフにパーセンタイルを設定するだけで、簡単に日時を特定できます。

f:id:Unam:20180124223712p:plain

実際の電圧のグラフは用意できませんが、CPUのアイドル率の値で似たような状況を代用させてください。上記のグラフの場合、3パーセンタイル以下になったタイミングが1/4の7時ごろとすぐに特定でき、その他は詳細調査の対象外にできます。このような感じで、パーセンタイルを活用することもできます。

パーセンタイルの指定方法

パーセンタイルの指定自体は、グラフの設定画面で数値を指定するだけです。 特定の監視アイテムの傾向と中央値を把握する目的で、とりあえず50パーセンタイルを指定しておく、というのもひとつの使い方だと思います。

ただし、複数のアイテムを混在させるグラフで50パーセンタイル(中央値)を設定して意味があるかどうかは、よく考えて指定してください。

2つのアイテムの動向を比較する場合は、左右の軸を振り分ければ、パーセンタイルもそれぞれ別個に表示することが可能です。

f:id:Unam:20180124225742p:plain

このとき、左の軸のアイテムを緑、右の軸のアイテムを赤に指定すると、パーセンタイルのラインも同じ色で表示されるので、認識しやすくなります。

f:id:Unam:20180124225924p:plain