運用コマンドレファレンス Vol.1
指定したメッセージ種別やメッセージテキストを持つ運用メッセージを監視します。メッセージ種別ERRおよびEVTの運用メッセージは,スイッチ番号やイベントレベルなど,運用メッセージを構成する要素も監視対象に指定できます。
運用メッセージを構成する要素については,「メッセージ・ログレファレンス 1.2.2 運用ログのフォーマット」を参照してください。
[関数名]
regist_sysmsg( message_type = "", switch_no = eventmonitor.DEFAULT, switch_status = eventmonitor.DEFAULT, event_level = "", event_function = "" interface_id = "", message_id = eventmonitor.DEFAULT, additional_info_upper = eventmonitor.DEFAULT, additional_info_lower = eventmonitor.DEFAULT, message_text = "", priority = eventmonitor.NORMAL)
[引数]
- message_type
- 監視する運用メッセージのメッセージ種別を3文字で指定します。
- この引数のデフォルト値は「""」です。「""」を指定した場合,すべてのメッセージ種別が監視対象となります。
- なお,本装置で定義されていない文字列を指定しても,例外(ValueError)にはなりません。
- switch_no
- 監視する運用メッセージのスイッチ番号を数値で指定します。指定できる値の範囲は,1〜2です。
- この引数のデフォルト値はeventmonitor.DEFAULTです。eventmonitor.DEFAULTを指定した場合,すべてのスイッチ番号が監視対象となります。
- switch_status
- 監視する運用メッセージのスイッチ状態を指定します。
- eventmonitor.M:スタンドアロンまたはマスタ
- eventmonitor.B:バックアップ
- この引数のデフォルト値はeventmonitor.DEFAULTです。eventmonitor.DEFAULTを指定した場合,すべてのスイッチ状態が監視対象となります。
- event_level
- 監視するイベントレベルを指定します。監視するイベントレベルが一つの場合は2文字,複数の場合はタプル型で,イベントレベル(E3〜E9,R5〜R8)を指定します。例えば,次のように指定した場合,監視対象はE3,E5,R8です。
event_level = ("E3","E5","R8")- この引数のデフォルト値は「""」です。「""」を指定した場合,すべてのイベントレベルが監視対象となります。
- event_function
- 監視するイベント発生部位を最大15文字で指定します。指定した文字列と完全一致したイベント発生部位だけを監視対象にします。
- この引数のデフォルト値は「""」です。「""」を指定した場合,すべてのイベント発生部位が監視対象となります。
- なお,本装置で定義されていない文字列を指定しても,例外(ValueError)にはなりません。
- interface_id
- 監視するイベント発生インタフェース識別子を,最大32文字の正規表現文字列で指定します。指定した文字列と正規表現で一致したイベント発生インタフェース識別子だけを監視対象にします。
- この引数の指定には,引数event_functionの指定が必要です。指定がない(デフォルト値)場合,例外(ValueError)を返します。
- この引数のデフォルト値は「""」です。「""」を指定した場合,すべてのイベント発生インタフェース識別子が監視対象となります。
- 正規表現は,ドット(.),ハイフン(-),アスタリスク(*),プラス(+),クエスチョンマーク(?),ハット(^),ドル($),角括弧始め([),角括弧終わり(]),丸括弧始め((),丸括弧終わり()),パイプ(|),バックスラッシュ文字(\)を使用したPOSIX 1003.2のExtended Regular Expressionで指定します。
- message_id
- 監視するメッセージ識別子を16進数で指定します。指定できる値の範囲は,0x0〜0xffffffffです。
- この引数のデフォルト値はeventmonitor.DEFAULTです。eventmonitor.DEFAULTを指定した場合,すべてのメッセージ識別子が監視対象となります。
- additional_info_upper
- 監視する付加情報上位4桁を16進数で指定します。指定できる値の範囲は,0x0〜0xffffです。
- この引数のデフォルト値はeventmonitor.DEFAULTです。eventmonitor.DEFAULTを指定した場合,すべての付加情報の上位4桁が監視対象となります。
- additional_info_lower
- 監視する付加情報下位12桁を16進数で指定します。指定できる値の範囲は,0x0〜0xffffffffffffです。
- この引数のデフォルト値はeventmonitor.DEFAULTです。eventmonitor.DEFAULTを指定した場合,すべての付加情報下位12桁が監視対象となります。
- message_text
- 監視するメッセージテキストを,最大128文字の正規表現文字列で指定します。指定した文字列と正規表現で一致したメッセージテキストだけを監視対象にします。
- この引数のデフォルト値は「""」です。「""」を指定した場合,すべてのメッセージテキストが監視対象となります。
- 正規表現は,ドット(.),ハイフン(-),アスタリスク(*),プラス(+),クエスチョンマーク(?),ハット(^),ドル($),角括弧始め([),角括弧終わり(]),丸括弧始め((),丸括弧終わり()),パイプ(|),バックスラッシュ文字(\)を使用したPOSIX 1003.2のExtended Regular Expressionで指定します。
- priority
- 本監視イベントが発生したときの通知優先度を指定します。
- eventmonitor.HIGH:高
- eventmonitor.NORMAL:中(デフォルト値)
- eventmonitor.LOW:低
- eventmonitor.LAST:最低
- 通知優先度が高/中/低のイベントは,次の割合で通知します。
- 高:中:低 = 6:3:1
- 通知優先度が最低のイベントは,高/中/低のイベントをすべて通知したあと,通知します。
[戻り値]
- 整数型
- 監視イベントID(一意の値)
[例外]
表20-7 eventmonitor.regist_sysmsgの例外クラス一覧
例外クラス名 説明 TypeError 引数の型に誤りがあります。 ValueError 引数に不正な値が指定されています。 SystemError システムエラーが発生しました。 KeyboardInterrupt [Ctrl+C]の入力によってコマンドが中断されました。 eventmonitor.RegisterMax イベント登録数が上限に達しています。 eventmonitor.RegistrationError イベント登録に失敗しました。
[詳細]
引数に指定した運用メッセージを監視します。
引数message_type,switch_no,switch_status,event_level,event_function,interface_id,message_id,additional_info_upper,additional_info_lower,およびmessage_textのAND条件で運用メッセージを監視します。
正常終了の場合,戻り値に監視イベントID(正の整数)の値が格納されます。異常終了の場合,例外を返します。
運用メッセージ監視登録は,装置当たり最大256件登録できます。256件を超えた場合は例外(eventmonitor.RegisterMax)を返します。
[注意事項]
- 次に示すメッセージ種別の運用メッセージは監視できません。
- KEY,SKY(入力コマンド)
- RSP,SRS(コマンド応答メッセージ)
- 引数priorityを除く,すべての引数がデフォルト値の場合,例外(ValueError)を返します。
[備考]
- この関数で指定した引数と運用メッセージとの対応を次に示します。
kkk mm/dd hh:mm:ss www ee kkkkkkkk [iii・・・iii] xxxxxxxx yyyy:yyyyyyyyyyyy ttt...ttt 1 2 3 4 5 6 7 8 9 10
- message_type
- switch_no
- switch_status
- event_level
- event_function
- interface_id
- message_id
- additional_info_upper
- additional_info_lower
- message_text
- 出力される運用メッセージが多い場合,監視登録数や監視条件によっては,スクリプトへの通知遅延や廃棄が発生することがあります。
All Rights Reserved, Copyright(C), 2017, 2020, ALAXALA Networks, Corp.