サーバが遅いらしいので、nginxのレスポンスタイムを計測するmunin pluginを書いた
先週のとある日のこと、チームメンバーから何かサーバが遅いらしいという情報が挙がってきた。 そこまで遅くない、と言い張りたいところですが、計測せずにそういうことを言うのはよくないよねっていうことで、nginxのレスポンスタイムを取ってきてグラフ化するmuninプラグインを作って突っ込んでみました。
munin-nginx_request_time
nginxのrequest_timeはリクエストを受けて、クライアントにすべてのデータを送り返すまでにかかった時間なので、レスポンスタイムの平均を取ると、クライアントが遅いときに値が引っ張られがちなので、90パーセンタイルと95パーセンタイル値を取れるようにしました。 後は残りの5%がどれくらいの遅さなのかも見たいので最大レスポンスタイムも取れるようにしたかったけど、同じグラフに乗せると数字が大きくなりすぎて他の数字がつぶれてしまったので、maxだけは別にとるようにしています。
数日ほど眺めていると、確かに遅くなっているレスポンスがいくつかあっておもしろなので興味があったら入れてみてください。