2

私は一般的なチャートソリューションを探しています。理想的には、次の機能を提供するホスト型ソリューションではありません。値が次のような値のタプルをチャート化する:
1)サービス識別子(CPU使用率など)
2)そのサービス内のクライアント識別子(例:サーバーIP)
3)値
4)ミリ秒/秒の解像度のタイムスタンプ。

オプション:クライアント識別子の概念をさらに拡張したいのですが、上記の例をさらに取り上げて、各コアの統計を個別に保存したいので、別の識別子はCore 1 /Core2になります。

さて、問題を明確に述べていることを確認するために、これらの統計を収集するユーティリティは必要ありません。それらを保存するものが欲しいのですが、これも必須ではなく、いつでもMySQLなどに保存できます。

私が探しているのは、これらのような値を取り、さまざまな方法(タイムライン、モーション、および通常のもの[パイ、バー..])でそれらをうまくグラフ化するものです。基本的に、このすべてのデータを利用できる優れた視覚化パッケージです。複数のサービス、複数のアプリケーションからデータを収集することになり、データポイントの解像度はさまざまになります。一部のデータには複数のネストレイヤーが含まれ、一部には含まれません。(たとえば、CPUはサーバーIP、CPU#になりますが、メモリはサーバーIPのみになりますが、別の識別子が含まれます。つまり、「セカンダリ」識別子として空き/使用済み/キャッシュされます。平均リクエストレイテンシのようなものはそうではない可能性がありますpingの場合は、セカンダリ識別子があります)。私が理解しようとしているのは、識別子の複数のレイヤーがあると便利だということです。複数の識別子が優れている最後の例を1つ追加するには、ip / cpu#の上にプロセス名という識別子を追加します。その利点は明らかだと思います。

一部のアプリケーションでは、あらゆる側面に焦点を当てて非常に狭い範囲でデータを収集する場合がありますが、それ以外の場合は、より一般的な統計になる場合があります。何かがうまくいかないときは、どちらも役に立ちます。最初は「何かがうまくいかなかった」とすぐに言い、2番目は「なぜ?」と言います。

さらに、グラフ作成アプリケーションが「悪い」値をスローした場合、つまり、何らかの理由で監視プログラムがシングルコアで使用されている300%のCPUの値を10秒間スローし始めた場合、それは良いことです。チャート自体が長期的にそれを反映していなかった場合は素晴らしいです。ある種の平滑化、多分?ただし、これは明らかにデータレイヤーで実行できるため、要件ではありません。

最後に、2つの時点を比較したり、同じサービスの2つの異なるクライアント識別子などをあまり労力をかけずに比較したりするのは素晴らしいことです。

私は特定の言語に偏っていませんが、PHP、Python、C / C ++、C#(次のいずれか)の言語が好きです。これらは私がよく知っている言語だからです。オープンソースである必要はなく、ライブラリである必要もありません。私は自分の目的に最も適したものを使用することにオープンです。

要件よりもPSの方が多い:技術者でない人でも理解しやすく、それに基づいて行動できる(そして見るのが好きな)きれいなチャートが欲しいです。

明確にさせていただきますので、よろしくお願いいたします。

4

1 に答える 1

1

私はprotovisがあなたのすべての要件を満たしていると確信しています。しかし、それは少し学習曲線があります。あなたは例によって学ぶことを意図されており、そこから働くことがたくさんあります。デフォルトでは、かなり良いグラフが作成されます。すべての値は関数になる可能性があるため、「悪い」値を取り除くなどのことができます。

于 2010-12-18T00:14:47.880 に答える