web-dev-qa-db-ja.com

Statsd、Graphiteおよびグラフ

Graphiteとstatsdをセットアップしましたが、どちらも正常に実行されています。グラファイト/ examplesのexample-client.pyを使用して負荷値を測定していますが、問題ありません。
statsdを使用してテストを開始しましたが、最初はいくつかのグラフが生成されたので問題ないように見えましたが、現在は見栄えがよくありません。

まず、これは私のstorage-schema.confです:

priority = 100
pattern = .*
retentions = 1m:395d

私はこのコマンドを使用してデータをstatsdに送信しています:

echo 'ssh.invalid_users:1|c'| nc -w 1 -u localhost 8126

実行され、Graphite Webインターフェイスで[グラフの更新]をクリックすると、線が生成され、もう一度[更新]をクリックすると、線が消えます。 this1this2 のように
前のコマンドを5回実行すると、グラフの線が2になり、実際に保存されます。再び同じコマンドを2回実行すると、グラフの線が2に達し、消えます。
設定を間違えたものが見つかりません。

使用目的は次のとおりです。

tail -n 0 -f /var/log/auth.log|grep --line-buffered "Invalid user" | while read line; do echo "ssh.invalid_users:1|c" | nc -w 1 -u localhost 8126; done

編集:
新しいシステムで、最新バージョンのグラファイト、カーボン、nodejs、statsdを使用して再インストールしましたが、同じように動作します。
テールリング中/ opt/graphite/storage/log/carbon-cache/carbon-cache-a/query.logI取得する:
cache query for "stats_counts.ssh.invalid_users" returned 0 values
cache query for "stats.ssh.invalid_users" returned 0 values webappでupdateを押すたびに。線を引くとランダムにreturned 1 valuesと表示されますが、returned 0 valuesに戻り、線が消えることに気づきました。

4
w00t

問題は、ストレージスキーマの保持です。
retentions = 1m:395d-これはグラファイトウィキから取得 http://graphite.wikidot.com/installation

retentions = 10:2160,60:10080,600:262974などを使用する必要がありました。これは、10秒ごとに保存される値を考慮に入れています。

また、storage-schema.confを変更した後にgraphiteを再起動しましたが、以前は同じ動作/保持を保持するため、別のメトリック名を使用する必要がありました(これを再現できます)。
したがって、echo 'ssh.invalid_users:1|c'の代わりに、
echo 'ssh.invalid_userstest2:1|c'

5
w00t