はじめに
Zabbixで天気/気温の監視ができるということを知ったので、それを試した際の備忘録として記載いたします。
前提条件
- Zabbixの実行環境は下記となります。
■OSバージョン
$ cat /etc/os-release
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"
■Zabbixバージョン
$ zabbix_server -V
zabbix_server (Zabbix) 5.0.13
Revision c218b76dad 28 June 2021, compilation time: Jun 28 2021 12:24:54
Copyright (C) 2021 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.
This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/).
Compiled with OpenSSL 1.0.1e-fips 11 Feb 2013
Running with OpenSSL 1.0.1e-fips 11 Feb 2013
設定手順
(1)Openweathermapの会員登録(無料)
今回は、天気情報のAPIが無料で取得できるOpenweathermapを使用するので、それを使用する上で必要な会員登録を実施します。
以下のサイトで、ユーザの作成を実施する。
https://home.openweathermap.org/users/sign_up
※ユーザ登録が完了すると、指定したメールアドレス宛にAPIキーが送付されるので、それをメモする。(後続作業の(2.2)で使用する)
(2)Zabbix側の設定
(2.1)アプリケーション設定
①新規アプリケーション「天気情報」を作成
(2.2)天気情報を取得
①「アイテムの作成」を押下する。
②以下の設定値を入力し、「URL解析」を押下する。
設定項目 | 値 | 備考 |
---|---|---|
名前 | 東京の天気情報 | - |
タイプ | HTTPエージェント | - |
キー | json.monitor.rio | - |
URL | http://api.openweathermap.org/data/2.5/weather?id=1850147&units=metric&APPID=[ユーザ独自のAPPID(APIキー)] | ・「weather?id」では、都市コードを入力する。(今回は、東京コード185014を指定)。都市コードについては、これを参照。 ・「APPID」は、ユーザのAPPID(APIキー)を指定する。 |
↓↓「URL解析」を実施後、クエリフィールドの値が自動入力される。↓↓
②以下の設定値を入力し、「追加」を押下する。
設定項目 | 値 |
---|---|
JSONへの変換 | レ点チェック |
データ型 | 文字列 |
監視間隔 | 10m(値の変更は任意) |
アプリケーション | 天気情報 |
※他設定値は、デフォルト値 |
③設定後の確認
★上記の設定をすることで、「最新データ」タブでは、以下のような文字列が出力されるようになります。
(2.3)気温情報を取得するアイテムを作成
①「アイテムの作成」を押下する。
②以下の設定値を入力し、「保存前処理」を押下する。
設定項目 | 値 |
---|---|
名前 | 東京の気温 |
タイプ | 依存アイテム |
キー | json.monitor.rio.temp.celsius |
マスターアイテム | (2.2)で作成したアイテム |
データ型 | 数値(浮動小数点) |
アプリケーション | 天気情報 |
※他設定値は、デフォルト値 |
③以下の設定値を入力し、「追加」を押下する。
名前 | パラメータ |
---|---|
JSONPath | $ .body.main.temp |
④設定後の確認
★上記の設定をすることで、「最新データ」タブでは、気温情報が取得できるようになりました。
最後に
Zabbixでは、サーバーの監視用途以外にも、気温情報を取得することができると知れて少し感動した。
次回は、天候状態を監視して、雨ならアラートを出すこととかを時間があれば試してみようと思います。
終わり(●´ω`●)