見出し画像

TWSNMPポーリング辞典:SNMPの基本

復刻版TWSNMPのSNMPによるポーリングに関する基本について説明します。

ポーリング定義の書式

ポーリング設定の定義欄の書式について説明します。

画像1

オリジナルのTWSNMPでは、

MIBGET:hrSystemNumUsers.0>-1:ABS

のような書式でSNMPのポーリングを指定できました。復刻版では正規表現のフィルターやJavaScriptによる判定などより高度な判断ができるように書式を変更しました。基本的な書式は

モード|パラメータ1|パラメータ2

のように|で区切ったものになります。パラメータはモードによって違います。例えばオリジナルの例を復刻版の書式では

get|hrSystemNumUsers.0|hrSystemNumUsers>-1

となります。

SNMPポーリングモード

2020/11/07現在対応しているモードは、

sysUpTime
再起動監視に特化したモードです。パラメータを必要ありません。
ifOperStatus.<index>
インターフェイス(LANポート)の状態監視に特化したモードです。パラメータは必要ありません。
count
テーブルなど複数のインスタンスがあるMIBの数を数えます。パラメータはフィルターと障害判定のためのJavaScriptを指定します。
process
プロセス監視に特化したモードです。パラメータは監視したいプロセス名と障害判定のためのJavaScriptを指定します。
ps
取得した数値型のMIBを監視対象のsysUpTimeで計算した単位時間値を使うポーリングモードです。パラメータには、取得するMIBと障害判定のためのJavaScriptを指定します。
delta
2回連続取得した数値型のMIBの差分でポーリングするモードです。パラメータには、取得するMIBと障害判定のためのJavaScriptを指定します。
get
取得したMIBで判断するポーリングモードです。パラメータには、取得するMIBと障害判定のためのJavaScriptを指定します。

です。

再起動監視

sysUpTimeはSNMPのエージェントが起動してからの経過時間を1/100秒単位で示すMIBです。当然、時間とともに増えていきます。前回のポーリングで取得した値から減った場合は再起動したと判断できます。この監視を簡単に行うのがsysUpTimeモードです。

画像2

経過時間を32ビットの正数で表すので500日程度経過すると0に戻る問題に対応する必要がありますが、今のところ対応していません。

インターフェイス状態

監視対象のインターフェイス(LANポート)の状態を監視するためには、ifOperStatus(動作状態)とifAdminState(設定)のMIBを利用します。ifAdminStateがUPでifOperStatusがUPが正常です。ifAdminStateがDOWNならばifOperStatusがDOWNでも有効にしてないポートなので正常です。ifAdminStateがUPでifOperStatusがDOWNは障害です。有効にしてもリンクがアップしない状態だからです。ケーブルが接続されていない、対向の機器がダウンしているなどが考えられます。TWSNMPでこの監視を行うには、ifOperStatusモードのポーリングを設定します。

画像3

このポーリングの設定にはインターフェイスのインデックスが必要です。自動発見で登録したポーリングは自動で設定しています。手動で設定する場合は、MIBブラウザーでifTableの取得して監視したいLANポートのインデックスを確認してください。

画像4

テンプレート

この記事で説明したポーリングのテンプレートは以下からダウンロードできます。

他のSNMPのポーリングモードに関しては別の記事で解説する予定です。

開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。