運用コマンドレファレンス Vol.1
イベントを受信します。
[関数名]
event_receive(blocking_flg, timeout = 0)
[引数]
- blocking_flg
- ブロッキングモードを設定します。
- eventmonitor.BLOCK_ON:ブロッキングモード
- eventmonitor.BLOCK_OFF:非ブロッキングモード
- timeout
- ブロッキングモード指定時の受信待ち時間を指定します(単位:秒)。指定できる値の範囲は,0〜86400です。
- この引数のデフォルト値は0です。
[戻り値]
- 辞書型
- キー値 'result'
- 受信結果を格納します。
- eventmonitor.OK:成功
- eventmonitor.TIMEOUT:タイムアウト
- eventmonitor.NODATA:受信データなし
- キー値 'event_type'
- 受信イベント種別を格納します。
- eventmonitor.CRON_TIMER_EVT:cronタイマ
- eventmonitor.INTERVAL_TIMER_EVT:intervalタイマ
- eventmonitor.SYSMSG_EVT:運用メッセージ
- eventmonitor.NODATA:受信データなし
- キー値 'event_id'
- 監視イベントIDを格納します。登録したイベント監視と対応する一意の値です。
- キー値 'add_info' [追加情報部]
- 受信したイベントがeventmonitor.SYSMSG_EVTの場合,契機となった運用メッセージを格納します。
- 運用メッセージの可変長部データ構造については,「表20-13 契機となった運用メッセージの可変長部データ構造」を参照してください。
[例外]
表20-12 eventmonitor.event_receiveの例外クラス一覧
例外クラス名 説明 TypeError 引数の型に誤りがあります。 ValueError 引数に不正な値が指定されています。 SystemError システムエラーが発生しました。 KeyboardInterrupt [Ctrl+C]の入力によってコマンドが中断されました。 eventmonitor.ReceiveError イベント受信に失敗しました。
[詳細]
イベントの発生通知を受信します。
引数blocking_flgの設定と引数timeoutの関係を次に示します。
- BLOCK_OFFを指定した場合,引数timeoutは無視されます。
- BLOCK_ONを指定した場合,引数timeoutで受信待ち時間を指定します。
- BLOCK_ONを指定して,引数timeoutに0を指定すると,イベントを受信するまで待ちます。
- BLOCK_ONかつ引数timeoutに0より大きい値を指定した場合,timeoutで指定した時間内(秒)にイベントが発生しなければ,戻り値の'result'キーにeventmonitor.TIMEOUTが設定されて,関数の呼び出し元に戻ります。
[注意事項]
なし
[備考]
- 契機となった運用メッセージの可変長部データ構造を次に示します。
表20-13 契機となった運用メッセージの可変長部データ構造
タプル型(アクセス値) 説明 eventmonitor.SYSMSG_TIME イベント発生時間
"<month>/<day> <hour>:<minute>:<second>"eventmonitor.SYSMSG_MESSAGE_TYPE メッセージ種別
文字列が格納されます。eventmonitor.SYSMSG_SWITCH_NO スイッチ番号
数値が格納されます。eventmonitor.SYSMSG_SWITCH_STATUS スイッチ状態
- eventmonitor.I:初期状態
- eventmonitor.M:スタンドアロンまたはマスタ
- eventmonitor.B:バックアップ
eventmonitor.SYSMSG_EVENT_LEVEL イベントレベル
2文字の文字列が格納されます。
"E9"〜"E3","R8"〜"R5"eventmonitor.SYSMSG_EVENT_FUNCTION イベント発生部位
文字列が格納されます。eventmonitor.SYSMSG_INTERFACE_ID イベント発生インタフェース識別子
文字列が格納されます。eventmonitor.SYSMSG_MSG_ID メッセージ識別子
数値が格納されます。eventmonitor.SYSMSG_ADD_HIGH 付加情報上位4桁
数値が格納されます。eventmonitor.SYSMSG_ADD_LOW 付加情報下位12桁
数値が格納されます。eventmonitor.SYSMSG_EVT_TEXT メッセージテキスト
文字列が格納されます。
All Rights Reserved, Copyright(C), 2017, 2020, ALAXALA Networks, Corp.