この記事は、以下のアドベントカレンダー9日目になります
5日目のzabbix api の記事を受けて、以下の情報を記載してみたいと思います
-
- jupyter lab による簡単な返り値等の確認
- zabbixに対してはpy-zabbix というライブラリを利用
5日目の記事はこちら
https://qiita.com/hon_m/items/b7b19b623335f7040502
それぞれどのような役割で利用するか
py-zabbix
py-zabbixは記載した通り、jsonを生で書き下ろさずにライブラリを介して監視データを取得するために利用します
jupyter lab
jupyter lab は、コードを1つずつ確認しながら進めるために利用します

- セルごとにステップ実行しながら結果を確認して進めていくことができます
jupyter lab をインストール
まずは以下のコマンドでjupyterlabをインストールします
ogurin@zabbix_api_srv$ pip3 intstall jupyterlab
インストールが完了したら、起動します
ogurin@zabbix_api_srv$ jupyter lab
`中略`
To access the server, open this file in a browser:
file:///home/ogurin/.local/share/jupyter/runtime/jpserver-27667-open.html
Or copy and paste one of these URLs:
http://localhost:8888/lab?token=xxxxx
or http://127.0.0.1:8888/lab?token=xxxxx

py-zabbixをインストール
まずは最初のセルで、py-zabbixをインストールします
以下をセルの中に入力し、「Shift + Enter」でセルごとに実行します
!pip3 install py-zabbix
次に、今回の処理で必要なpandasとpyzabbixをインポートします
import pandas as pd
from pyzabbix import ZabbixAPI

-
- 左側の数字は、kernelを起動して以降の実行された順番です
- 今回は先頭に[3]が表示されていますが、おかしなことをしなければ先頭は[1]になっているはずです
jupyter lab でエラーをすぐに発見出来る
今回、zabbix info の下のセルで変数に格納している値を誤ってしまいました。
そのため、tokenをgetするところで以下のようにエラーとなりました。

py-zabbixを利用してzabbix情報を取得する
今回は、host.getを用いてホスト情報の中からホスト名とホストIDを取得します


出力結果を若干加工してしまったため、[13]の要素のみ表示されていますが、実際はすべてのホストについて出力されるはずです
これらを関数にして、しまってもよいと思います
まとめ
