FR24のMLATを自動起動させる+dump1090の状況を視覚化



安定運用に入ったRaspberry Piの
状態をチェックしてて気付いた事が一つ。

FlightRadar24のMLATが自動起動してない。
しかしサービスをリスタートさせると普通に有効になる。

というわけで、Google先生で検索かけると
どうもソフトの起動順に問題があるらしい。

起動順を表示するコマンドで確認

systemd-analyze plot > ~/systemd-analyze.svg

homeディレクトリにsystemd-analyze.svgが出来るので
ブラウザで見てみます。

現状、FR24>Dump1090>piawareの順になってるのを
Dump1090>piaware>FR24の順にして
FR24の起動を遅らせると良いらしい。

今回参考にさせて頂いたサイトの方は /etc/rc.local で
dump1090exporter
(dump1090の状態を書き出すソフト)
の実行の前に20秒待機時間を取っていて、
その後にFR24の実行をすると丁度良いとのこと。

なので、真似させて頂くことに。


・dump1090exporterのインストール

python3系が必要なのでインストール(環境によっては不要かも)

sudo apt install python3-pip python3-setuptools python3-dev

dump1090exporterのインストール

sudo pip3 install dump1090exporter


・20秒待機した後、dump1090exporterを自動起動するよう設定する。

sudo nano /etc/rc.local

(最後の exit 0 の直前に2行追記)
緯度経度は受信機の位置を設定します。

/bin/sleep 20
/usr/local/bin/dump1090exporter --latitude=-35.00000000 --longitude=136.00000000 &

再起動後
http://192.168.1.100:9105/metrics

# HELP dump1090_messages_total Number of Mode-S messages processed since start up
# TYPE dump1090_messages_total gauge
dump1090_messages_total{time_period="latest"} 44782
# HELP dump1090_recent_aircraft_max_range Maximum range of recently observed aircraft
# TYPE dump1090_recent_aircraft_max_range gauge
dump1090_recent_aircraft_max_range{time_period="latest"} 225019.61296084058
# HELP dump1090_recent_aircraft_observed Number of aircraft recently observed
# TYPE dump1090_recent_aircraft_observed gauge
dump1090_recent_aircraft_observed{time_period="latest"} 7
・・・以下略

が表示されれば大丈夫です。



一旦、ここでdump1090exporterの設定は止めて
FR24の起動順の設定に戻ります。



・fr24feedをrc.localの後に起動するように設定する。

fr24feedサービスを一旦停止します。

sudo service fr24feed stop
sudo systemctl disable fr24feed

fr24の設定ファイルを編集

sudo nano /etc/systemd/system/fr24feed.service

下記の様に1行コメント化
1行追加

[Unit]
Description=Flightradar24 Decoder & Feeder
#After=network-online.target  #元の設定をコメントアウト
After=rc-local.service   #追加

設定変更後、fr24feedサービスを有効に戻し

sudo systemctl enable fr24feed

再起動

sudo reboot

再度

systemd-analyze plot > ~/systemd-analyze.svg

で確認すると

Dump1090>piaware>FR24の順に起動しています。

fr24feed-status

で確認

今度は再起動後にMLATが自動で有効になりました。

当初の目標はここまでだったのですが、
上記の様にdump1090exporterをインストールしたので
ついでにそちらも使えるようにしてみます。
(以下のソフトは全く知識が無いので不正確だと思います)


・Prometheusをインストール(リソース監視ソフト

sudo apt-get install prometheus

確認

systemctl status prometheus
systemctl status prometheus-node-exporter

ともにactiveになっていればOKです。



・prometheus.yml の設定

sudo nano /etc/prometheus/prometheus.yml

書き込む位置は

scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'

    # Override the global default and scrape targets from this job every 5 seconds.
    scrape_interval: 5s
    scrape_timeout: 5s

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
    static_configs:
      - targets: ['localhost:9090']

下に

  - job_name: 'dump1090'
    scrape_interval: 10s
    scrape_timeout: 5s
    static_configs:
      - targets: ['localhost:9105']

を追記します

書き込む位置、内容が違うと正常に動きませんので注意です。



・Grafanaのインストール(視覚化ソフト)

プログラムの一覧に追加?

wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee /etc/apt/sources.list.d/grafana.list

インストール

sudo apt update && sudo apt install -y grafana

有効化

sudo systemctl unmask grafana-server.service
sudo systemctl start grafana-server
sudo systemctl enable grafana-server.service

再起動

sudo reboot



・Grafanaの設定

http://192.168.1.100:3000/ 
にアクセス

左の歯車マークからData Sources
URLに
http://192.168.1.100:9090
設定、一番下のSave&Test

Data source is workingと表示されればOK


・dump1090export Grafana dashboardの入手とインポート

https://grafana.com/grafana/dashboards/768
から
右のDownload JSONでローカルに保存しておきます。


左の+マークからimport

右のUpload .json fileを選択

folderをGeneral
PrometheusをドロップダウンからPrometheusを選択

でimportをクリック

このようにグラフが表示されれば成功です。




飛行機の受信機数、最大受信レンジ、電波の強度など
色々と見ることが出来るので
自分の現在のADS-Bの状態把握に役立つかと思います。




今回の記事は

がとらぼさん
https://gato.intaa.net/archives/21762
https://gato.intaa.net/archives/21250

Grafanaのインストールについて
https://simonhearne.com/2020/pi-influx-grafana/
を参考にさせて頂きました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です