問題タブ [telegraf]
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.
influxdb - Grafana テーブル (または singlestat) で InfluxDB 測定の最新のタイムスタンプを表示する方法は?
サーバーのメトリックを登録および表示するために Telegraf/InfluxDB/Grafana を使用しています。これらのコンポーネントの 1 つがクラッシュし、メトリクスが InfluxDB に流れなくなることがあります。
これがいつ発生したかを知ることができるように (Monit を使用してサービスを再起動した上で)、Grafana ダッシュボードを作成して、ホストごとに最新のタイムスタンプを表示するシングル統計パネルを作成したいと思います (または、より良いのは、どのくらいの時間が経過したか)最後のメトリックが受信されてから。また、singlestat の経過時間に応じて、singlestat の背景に色を付けたいと思います。メトリックが異なれば遅れる理由も異なる可能性があるため、InfluxDB メトリックに対してこれを実行できるようにしたいと考えています。
現在、InfluxQL で次のようなことを試しましたが、少なくとも 1 つの時間以外のフィールドがクエリに存在する必要があるというエラーが表示されます。
SELECT last(time) FROM "system" WHERE "load1" > -1 GROUP BY "host"
これに変更しようとすると、「複数のシリーズエラー」が発生します。
SELECT last(time), last("load1") FROM "system" GROUP BY "host"
私がやろうとしていることは簡単に実行できないのでしょうか、それとも明らかな何かが欠けていますか?
plugins - Telegraf : 「入力プラグイン」を追加するには?
私は Telegraf の初心者で、「入力プラグイン」をインストールしたいと考えています。構成と .go ファイルはありますが、Google で検索してもどうすればよいかわかりません。
前もって感謝します !
logstash-grok - Grok、さまざまな値で処理をログに記録
ログファイルがあり、それを解析しtelegraf.logparser
てからinfluxdbに送信します。問題は、私のログファイルが完全な文字列に異なるフィールドを持っていることです:
その行の1つを一致させることができます
しかし、両方を取得するにはどうすればよいですか.. lrmsidが設定されていない場合はlrmsid=null, and failure="Timeout"
..取得され、lrmsidが設定されている場合はそのlrmsid=12345 and failure=null
docker - Docker で Telegraf を実行する (そして正確なメトリクスを取得する) ことは可能ですか?
ホスト レベルのメトリックを収集するために、ホスト上で docker を介して influxdb メトリック コレクターであるtelegrafを実行したいと考えています。これは実際には非常に簡単です。公式の docker イメージはdockerhubで入手できます。
理想的な世界では、ドッキング化されたテレグラフは、ドッキング化されていないバージョンとまったく同じメトリックを公開しますが、それはまったく不可能だと思います。だから私は違いが何であるか(たとえば、ファイル記述子の数)とそれらを最小限に抑える方法を知りたいです(たとえば、--priviligedフラグを使用してdockerコンテナを実行すると役立ちますか?)
sudo - Telegraf - input.procstat procstat プラグイン - README.md doc - exe、pid_file、コマンド ライン パターン ユーザー名
使用: Telegraf v1.0.1
Telegraf procstat プラグインのドキュメント: https://github.com/influxdata/telegraf/tree/master/plugins/inputs/procstat
私のカスタム設定ファイル:
/etc/telegraf/telegraf.d/my_custom_process_service-telegraf.confには以下が含まれます:
上記の構成は、構文ごとに正常に機能します。これにより、次のメトリック名で始まるメトリックが表示されます: procstat.service.process.xx.xx
(文字で変換_
しているかどうかによって異なります.
) - または単にprocstat.service_process.x.x
メトリック。
マシン上で実行されているプロセスをキャッチするにはexe = "."
(操作を実行し、値pgrep "."
を指定してマシン上で実行されているすべてのプロセスを検索します) 。-または、Java/その他のラッパーの背後で実行されるプロセスprocess_name=<processes>
にpid_file = /var/run/jenkins/jenkins.pid
(注: サービスを実行しているユーザーの読み取り権限がある場合) を使用します。Jenkins がユーザーの下で実行されていてtelegraf
、/ var/run/jenkinsフォルダーに pid ファイル自体に対する少なくとも " " アクセス + 読み取り " " アクセス権がない場合、"permission denied" に関するエラーがスローされます。 "。pid_file = /var/run/jenkins/jenkins.pid
jenkins
r-x
r
質問:
モードで Telegraf を実行することは可能SUDO
ですか (可能であれば)? つまりr-x/r
、プロセスの PID ファイルを読み取るアクセス権がなく、そのようなプロセスがたくさんあると仮定した場合 (Java/一部の Wrapper の背後で実行されているため、そのexe=xxxx
ような場合は機能しません)、pid_file = ...
メソッドを使用する必要があります。asなどを取得するために、 Telegrafにこのpid_file
メソッドを使用させています。process_name
jenkins
nexus
PS :chmod -R 775_or_755 /var/run
すべてのホストで実行するのは現実的ではないかもしれません。
/var/ran/jenkins フォルダーに 755 のアクセス許可を与え、jenkins.pid ファイルに 644 のアクセス許可を与えると、アクセス許可エラーはなくなります。この後、私はメトリックを使用しようとしました:procstat.service.process.cpu.usage
プロセスに対してjenkins
(つまりprocess_name="jenkins"
)、それは値として見つかりませんjenkins
。何か見逃しましたか?