問題タブ [graphite]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - パワーシェル付きグラファイト
私は 1 つのサーバーにグラファイトのインスタンスを構成しており、それを使用して、悲しいことに Linux と Windows の両方のマシンで構成される環境を監視しています。サーバーの正常性を監視したいので、Linux マシンでシステム統計を収集する良い仕事をする collectl を選択しました。
悲しいことに、Windows の場合、システム統計を取得してグラファイトに送信するためのソリューションはそれほど多くないようですが、私はこの状況を powershell で処理することができました。ここで提案されたスクリプトを使用していますhttp://josh.behrends.us/2012/07/windows-powershell-graphite-awesome/グラファイト接続と、使用しているコンピューターからメトリックを取得するためget-counter コマンドレットは、驚くべきことに、多くの情報を収集できます。
私のスクリプトは次のようになります。
これで、このスクリプトは一見すると想定どおりの出力を実行します。出力にはフォーマットhostname.metrics.name $metric_value $epochTime
がありますが、グラフ化されているグラフはありません。それらはグラファイト ダッシュボードに表示されますが、空です。グラファイト サーバーに送信された出力を、wireshark で調べました。LFしかないLinuxとは対照的に、WindowsではメッセージにCRLFが追加されるようです。私は手で追加\n
しましたが、しばらくの間はうまくいきましたが、今は機能しなくなりました。
私の質問は、トラフィックを分析していて、グラフ化されたLinuxマシンからのトラフィックとグラフ化されていないウィンドウからのトラフィックの唯一の違いは、ラインターミネータであるため、送信で何か間違ったことをしているのでしょうか。Linux では LF(0a) で、Windows では CRLF(0d0a) ですが、再び Linux LFCRLF(0a0d0a) から送信しようとしましたが、グラファイト サーバーが最初の LF までしか読み取らず、メッセージを解釈することを望んでいますが、それでも私は ' m グラフが表示されません。
また、Linux から送信する場合はメッセージが 1 つしかなく、powershell から送信する場合は 3 つのメッセージがあります。カーボン キャッシュ プロセスで strace を使用して見たものから、必要なメッセージを含む recvfrom システム コールが 1 つあります。メッセージと書き込みを含む1つのrecvfromのみ(Linuxでnetcatを使用して送信する場合)、
graphite - グラファイトカーボンセレスのメンテナンス
CeresデータベースバックエンドでCarbonGraphiteを使用しています。スライスを統合するためにデドラッグを機能させる方法を理解するのに苦労しています。
次のことを試しましたが、かなり奇妙なエラーが発生します。
誰かが何か洞察を持っていますか?これについてはウェブ上にはほとんどないようです。
graphite - cubism JS のこのスニペットが Graphite からグラフを生成しないのはなぜですか?
このJSのスニペットを使用してグラフを生成しようとしています。metrics2に問題があるようです。
metrics2 をこれに設定すると、ブラウザにグラフが表示されます。
[1]
ただし、次の js コードでは、ブラウザでグラフがレンダリングされません。
[2]
これは、metrics2 を呼び出してグラフを生成する cubism スニペットです。
[2] 実際にグラフを生成しないのはなぜですか? metrics2配列に何かありますか?
statistics - システムデータをgraphite/statsdに保存する
統計専用の特定のマシンをセットアップgraphite
しました。statsd
さて、統計を提供するためにアプリケーションサーバーを接続したい場合、最善の方法は何でしょうか?
カーボンはすでに統計マシンでこれを行っていることを知っていますが、グラファイトがインストールされていないアプリサーバーではどうすればよいですか?
私が探しているのは、を保存するload
ことdisk usage
ですmemory free/used
。
slice - グラファイト / カーボン / セレス ノードのオーバーラップ
ストレージ方法としてカーボンとセレスを使用して、グラファイトの監視を行っています。不良データの修正に問題があります。(さまざまな問題により)ファイルが重複してしまったようです。つまり、Carbon / Ceres はデータを timestamp@interval.slice として保存するため、時間範囲が重複する 2 つ以上のファイルを持つことができます。
オーバーラップには次の 2 種類があります。
これは、利用可能な既存のツール (ceres-maintenance デフラグおよびロールアップ) がこれらの重複に対処できないため、問題を引き起こしています。代わりに、ディレクトリをスキップして先に進みます。これは明らかに問題です。
graphite - Graphite は、大量のデータをインポートするときにメトリック名をスキップして切り捨てます
一部のメトリックとメトリック名をスキップして切り捨てるときに、このような奇妙なグラファイトの動作に遭遇した人はいますか?
たとえば、コマンドで約20Mbのファイルをインポートすると
このようなデータが含まれています
一部のメトリック名が無効になり、ファイルからすべてのメトリックがインポートされるわけではありません。
ご覧のとおり、メトリックzont_10_4_8_107
は次のように表示されますnt_10_4_8_107
memory - Graphite でアプリケーション サーバーのシステム データをキャプチャ/監視する
グラファイト サーバーを使用してメトリック データをキャプチャし、グラフに表示しています。ロードバランサーのセットアップである4つのアプリケーションサーバーがあります。私の目的は、4 つのアプリケーション サーバーすべてについて、CPU 使用率、メモリ使用率、ディスク負荷などのシステム データを取得することです。別のサーバーにグラファイト環境をセットアップし、すべてのアプリケーション サーバーのシステム データをグラファイトにプッシュしてグラフとして表示したいと考えていました。システムデータをグラファイトにフィードするために何をする必要があるのか わかりません。私の考えでは、すべてのアプリケーション サーバーに statsd をインストールし、システム データをグラファイトにフィードすることでしたが、statsd はアプリケーション データではなくシステム データをサポートしていないようです。
誰でも私が正しい軌道をつかむのを手伝ってくれますか? 前もって感謝します。
graphite - グラファイトはデータポイントを要約します
グラファイトを使用してデータを収集しています。一定期間の特定のイベントの合計数を取得したいと考えています。たとえば、1 週間あたりのログイン数です。
ただし、必要なのは総数だけであり、時間の経過とともにどのように変化するかを確認する必要はありません。
そのようなものを使用すると、1つではなく2つのfrom=-1w&target=summarize(stats.events.login.success,"1w")&format=json
データポイントが得られます。
関数から単一のデータポイントを取得する方法はありますか? summarize
または別の関数を使用して単一のデータポイント値を返しますか?
graph - Graphite UI データをデフォルトで累積的にする
Graphite をセットアップしていて、十分なピクセルがない場合に画面上でデータがどのように表現されるかという問題に遭遇しました。
最初の答えが私が探しているものに非常に近いこの投稿を見つけました:
おそらく起こっていることは、ピクセルよりも多くのデータポイントを持つグラフを見ているということです。これにより、Graphite はデータポイントを集約する必要があります。デフォルトの集計方法は平均ですが、cumulative() 関数をメトリクスに適用することで合計に変更できます。
デフォルトでこのcumulative()動作を取得する方法はありますか?
「aggregationMethod = sum」を使用するように storage-aggregation.conf を変更しましたが、これは履歴データ用であり、UI に表示されるデータ用ではないと思います。
累積()を適用すると、すべてが完璧になります。デフォルトでこの動作を取得する方法があるかどうか疑問に思っています。
graphite - グラファイトを使用したsummaryおよびdiffSeriesの順序
要約された期間にわたって、他のいくつかのグラファイトメトリックの合計からいくつかのグラファイトメトリックの合計を差し引こうとしています。ただし、diffSeriesを実行する前と後のどちらで要約するかによって、異なる結果が得られます。
以下の2つのグラファイトクエリは同じであると思いますが、そうではありません。
(上記のように)diffSeriesの外側に要約すると、csvエクスポートの生データを見ると高すぎるように見える数値が得られます。
上記は私に正しいデータを与えているように見えますが、私はむしろ一度要約する必要があり、私の一生の間、なぜそれが異なるべきかを理解することはできません。diffSeriesの引数は、合計として渡して要約しないと混乱しているようですが、方法がわかりません。