グラファイトでのリリースマーカーの実装

シニア・ソフトウェア・エンジニア、Allen Fung氏

ShareThis では、アプリケーションのモニタリングに Graphite を使用しています。これはGraphiteの典型的なグラフです。

イメージ

これは、あるアプリケーションが時間の経過とともに消費した「1分あたりのイベント」を示すものです。ご覧の通り、月曜日の午後の数時間はレコードが全く消費されていません。リリースマーカーと上のグラフを組み合わせることで、悪いリリースのために消費が止まったことがわかります。この様子は以下の通りです。

イメージ

リリースマーカーを実装していると、マーカーの名前は任意の値ではいけないことがわかりました。その代わりに、".count "をサフィックスにする必要があります。これは、「.count$」のxFilesFactorはデフォルトでゼロに設定されていますが、他のパターンではそうではないためです。メトリックにゼロ以外のxFilesFactorが設定されている場合、その値は過去24時間分しか表示されないことが保証されています。xFilesFactorは、以下のファイルで設定できます。

/opt/graphite/conf/storage-aggregation.confになります。

以下は、オートデプロイでリリースマーカーを生成するために使用した実際のコマンドです。

echo release_marker.$APPLICATION.$HOST.count 1 `date +%s` | nc -w 2 graphite.ops.sharethis.com 2003

上記のコマンドは、指定された時間にメトリックの値を数字の1に設定します。メトリックを単に表示しようとしても、その値が小さすぎるため、何も見えません。メトリックを表示するためには、drawAsInfinite関数にメトリックを渡す必要があります。これにより、メートル法の0ではない各データポイントが、垂直の線として表示されます。

についてShareThis

ShareThis は、2007年以来、ソーシャルシェア、インタレスト、インテントのデータを統合することで、グローバルなデジタル行動の力を引き出してきました。300万以上のグローバルドメインにおける消費者の行動をもとに、ShareThis は、実際のデジタルデスティネーションにおける実際の人々の行動をリアルタイムに観察しています。

ニュースレターを購読する

最新のニュース、ヒント、アップデートを入手する

登録

関連コンテンツ