CPU使用率でTRAP送信するプログラムのために久しぶりにMIBの設計をした
今朝は5時半から開発開始です。久しぶりに早く起きられました。
CPU使用率の上昇でSNMPのTRAPを送信するプログラムの続きです。送信するTRAPを定義する必要があるので久しぶりにMIBの設定をしました。
定義したMIBをTWSNMP FCに読み込ませてみると、
のようにMIBツリーに表示されました。嬉しい。
プログラムのほうも、そこそこ動くところまでできました。TRAPを送ってみると
ちゃんとTWSNNMP FCで受信できました。
SNMPv3などの対応をして、もう少しテストすれば完成です。
明日に続く
ちなみに定義したMIBは、こんな感じです。
(accessible-for-notifyを思い出しました)
TWHRTRAP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,enterprises
FROM SNMPv2-SMI
DisplayString FROM SNMPv2-TC;
twise OBJECT IDENTIFIER ::= { enterprises 17861 }
twProducts OBJECT IDENTIFIER ::= { twise 1 }
twHr2Trap MODULE-IDENTITY
LAST-UPDATED "2301200000Z"
ORGANIZATION "Twise Labo Inc."
CONTACT-INFO
"Masayuki Yamai
Postal: Twise Labo Inc.
Saitama Japan
E-mail: twsnmp@gmail.com"
DESCRIPTION "A MIB module for twhr2trap"
::= { twProducts 10 }
twHr2TrapTraps OBJECT IDENTIFIER ::= { twHr2Trap 0 }
twHr2TrapObjects OBJECT IDENTIFIER ::= { twHr2Trap 1 }
-- Trap data
twHr2TrapHrName OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION "Host resource name"
::= { twHr2TrapObjects 1 }
twHr2TrapThresold OBJECT-TYPE
SYNTAX INTEGER
UNITS "%"
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION "TRAP thresold"
::= { twHr2TrapObjects 2 }
twHr2TrapCurrentValue OBJECT-TYPE
SYNTAX INTEGER
UNITS "%"
MAX-ACCESS accessible-for-notify
STATUS current
DESCRIPTION "Current value"
::= { twHr2TrapObjects 3 }
-- twHr2Trap Traps
twHr2TrapCPUThOverTrap NOTIFICATION-TYPE
OBJECTS { twHr2TrapHrName,twHr2TrapThresold, twHr2TrapCurrentValue }
STATUS current
DESCRIPTION "Trap of CPU Usage thresold over."
::= { twHr2TrapTraps 1 }
twHr2TrapMemThOverTrap NOTIFICATION-TYPE
OBJECTS { twHr2TrapHrName,twHr2TrapThresold, twHr2TrapCurrentValue }
STATUS current
DESCRIPTION "Trap of load thresold over."
::= { twHr2TrapTraps 2 }
twHr2TrapLoadThOverTrap NOTIFICATION-TYPE
OBJECTS { twHr2TrapHrName,twHr2TrapThresold, twHr2TrapCurrentValue }
STATUS current
DESCRIPTION "Trap of load thresold over."
::= { twHr2TrapTraps 3 }
twHr2TrapDiskThOverTrap NOTIFICATION-TYPE
OBJECTS { twHr2TrapHrName,twHr2TrapThresold, twHr2TrapCurrentValue }
STATUS current
DESCRIPTION "Trap of load thresold over."
::= { twHr2TrapTraps 4 }
twHr2TrapBackToNormal NOTIFICATION-TYPE
OBJECTS { twHr2TrapHrName,twHr2TrapThresold, twHr2TrapCurrentValue }
STATUS current
DESCRIPTION "Trap of back to normal."
::= { twHr2TrapTraps 5 }
END
開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。