| tags:raspberry pi logging categories:server

Telegrafのインストール

Telegraf Install

システムのモニタリングはtelegraf(ログ収集)-> influxDB(データーベース)-> grafana(表示)で行います。

事前にGrafanaとInfluxDBのインストールが必要です。 インストールと設定はこちら

に簡単ですが書いてます。

インストール

telegrafはgrafanaで使っているinfluxDBと開発元が同じです。 いろいろなツールが出回ってますが、親和性も高いとおもいます。。 レポジトリも同じところになります。キーを登録し、aptにリストを追加します。

root@raspberrypi:~ # sudo -Es
root@raspberrypi:~ # curl https://repos.influxdata.com/influxdb.key | apt-key add -
root@raspberrypi:~ # vi /etc/apt/sources.list.d/influxdb.list


deb https://repos.influxdata.com/debian buster stable

root@raspberrypi:~ # apt update
root@raspberrypi:~ # apt install telegraph

そしてレポジトリのアップデートと、ソフトのインストールを行います。

telegrafの設定

設定ファイルは/etc/telegraf/telegraf.confにあります。 ファイルを開き、書き出し設定部を有効化します。 使うデーターベースはinfluxDBになるので、[[outputs.influxdb]] を探して編集します。

データーベースは作成せず、パスワードもなしで動かします。(セキュリティー上はNG)

pi@tacos:~ $ sudo vi /etc/telegraf/telegraf.conf

[agent]
interval = "1s"
precision = ""

[[outputs.influxdb]]
urls = ["http://<the IP of your InfluxDB server>:8086"]
database = "telegraf"
retention_policy = ""
write_consistency = "any"
timeout = "5s"

設定を有効化するために、サービスを再起動します。

pi@tacos:~ $ sudo systemctl restart telegraf.service

Grafanaでの設定

Grafana Main

grafananの管理画面にログインします。

データーベースの登録をします。上記のAdd data sourceにて追加します。 telegrafをスタートした時点から、データーの収集がされています。 名前をつけて、画面の見えないですが、下の方にデーターベース名を入れる欄があります。

Telegraf Install

そして、ひとつひとつ自分で画面を構築することもできますが、 テンプレートもたくさん登録されています。

私はこちらのテーマを利用させてもらっています。

https://grafana.com/dashboards/5955

左に並んでいるプラスのアイコンからインポートを選択します。

ID番号に5955を入力すると、データーをダウンロードしてきます。データーベース等を指定して設定します。

Telegraf Install

ちょっと変更してますが、画面はこちらのようになります。

Grafana 2ays


おまけ

CPUの温度と周波数

CPUの温度は/sys/class/thermal/thermal_zone0/tempにあります。 周波数はスクリプトを作って収集時に実行させます。

#!/bin/bash
# 
# CPU Frequency: rpi-freq
#

echo "$(( $(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq)/1000 ))"

スクリプトは、/usr/local/bin/に保存して、chmod +xで実行権を与えておきます。

telegrafでの設定は、以下を追加します。

[[inputs.file]] 
  files = ["/sys/class/thermal/thermal_zone0/temp"]
  name_override = "cpu_temperature"
  data_format = "value"
  data_type = "integer"
  
[[inputs.exec]]
  commands = [ "/usr/local/bin/rpi-freq" ]
  name_override = "cpu_frequency "

See Also

comments powered by Disqus