18-EAA命令
本章節下載: 18-EAA命令 (348.29 KB)
action cli命令用來配置事件發生時執行指定的命令行。
undo action命令用來取消指定的操作。
【命令】
action number cli command-line
undo action number
【缺省情況】
監控策略下未配置CLI動作。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
number:動作序號,取值範圍為0~231。
cli command-line:需要執行的命令。該參數可以是命令的不完整形式,比如為命令display current-configuration的縮寫形式dis cu,但需要用戶保證其為設備可識別的合法命令,否則,該動作不能成功執行。
【使用指導】
同一個監控策略下可以配置多個動作,當監控策略被觸發後,係統會按照動作序號從小到大依次執行這些動作。當新增動作時,請確保動作的執行順序是正確的。如果用戶配置了相同序號的動作,當管理員執行commit命令時,最後一次執行的action生效。
如果本命令指定的命令行不在用戶視圖下,則必須先配置進入相應視圖的action cli,且進視圖的action的編號應小於執行指定命令的action的編號。比如,要使用CLI策略來關閉接口GigabitEthernet1/0/1,則需要配置三條action命令,action 1 cli system-view、action 2 cli interface gigabitethernet 1/0/1、action 3 cli shutdown。
配置action命令時,用戶可以直接輸入參數的值,也可以引用環境變量。關於環境變量的詳細介紹請參見“網絡管理和監控配置指導”中的“EAA”。
【舉例】
# 為CLI監控策略test配置動作:當test被觸發時,關閉接口GigabitEthernet1/0/1。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] action 1 cli system-view
[Sysname-rtm-test] action 2 cli interface gigabitethernet 1/0/1
[Sysname-rtm-test] action 3 cli shutdown
action reboot命令用來配置事件發生時執行重啟操作。
undo action命令用來取消指定的操作。
【命令】
action number reboot [ slot slot-number ]
undo action number
【缺省情況】
監控策略下未配置重啟動作。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
number:動作序號,取值範圍為0~231。
slot slot-number:表示設備在IRF中的成員編號。不指定該參數時,表示重啟IRF係統。
【使用指導】
使用action reboot命令,或者使用action cli命令並將command-line參數指定為reboot命令,均可實現在事件發生時執行重啟操作。隻是action reboot命令會直接執行重啟操作,使用action cli命令時,用戶可以選擇是否先保存當前配置,再執行重啟操作。
同一個監控策略下可以配置多個動作,當監控策略被觸發後,係統會按照動作序號從小到大依次執行這些動作。當新增動作時,請確保動作的執行順序是正確的。如果用戶配置了相同序號的動作,當管理員執行commit命令時,最後一次執行的action生效。
配置action命令時,用戶可以直接輸入參數的值,也可以引用環境變量。關於環境變量的詳細介紹請參見“網絡管理和監控配置指導”中的“EAA”。
【舉例】
# 為CLI監控策略test配置動作:當test被觸發時,重啟指定slot。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] action 3 reboot slot 1
action switchover命令用來配置事件發生時啟動主備倒換。
undo action命令用來取消指定的操作。
【命令】
action number switchover
undo action number
【缺省情況】
監控策略下未配置主備倒換動作。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
number:動作序號,取值範圍為0~231。
【使用指導】
同一個監控策略下可以配置多個動作,當監控策略被觸發後,係統會按照動作序號從小到大依次執行這些動作。當新增動作時,請確保動作的執行順序是正確的。如果用戶配置了相同序號的動作,當管理員執行commit命令時,最後一次執行的action生效。
即使當前設備不是主備環境(未部署從設備或者從設備未正常啟動),該命令也會執行成功,但不會觸發主設備和備設備的倒換動作。
【舉例】
# 為CLI監控策略test配置動作:當test被觸發時,執行主備倒換。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] action 3 switchover
action syslog命令用來配置事件發生時生成一條指定內容的日誌。
undo action命令用來取消指定的操作。
【命令】
action number syslog priority priority facility local-number msg msg-body
undo action number
【缺省情況】
監控策略下未配置日誌動作。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
number:動作序號,取值範圍為0~231。
priority priority:生成的日誌的優先級,取值範圍為0~7。優先級的值越小,優先級越高。
facility local-number:生成日誌的設備號,取值範圍為local0~local7。該參數主要用於在日誌主機端標識不同的日誌來源,以便查找和過濾不同日誌源的日誌。
msg msg-body:生成的日誌內容。
【使用指導】
事件觸發後生成的日誌信息會交給信息中心模塊,信息中心模塊的配置將決定日誌信息的發送規則和發送方向。關於信息中心的詳細描述請參見“網絡管理和監控配置指導”中的“信息中心”。
同一個監控策略下可以配置多個動作,當監控策略被觸發後,係統會按照動作序號從小到大依次執行這些動作。當新增動作時,請確保動作的執行順序是正確的。如果用戶配置了相同序號的動作,當管理員執行commit命令時,最後一次執行的action生效。
配置action命令時,用戶可以直接輸入參數的值,也可以引用環境變量。關於環境變量的詳細介紹請參見“網絡管理和監控配置指導”中的“EAA”。
【舉例】
# 為CLI監控策略test配置動作:當test被觸發時,生成一條優先級為7、設備號為local3、內容為hello的日誌。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] action 3 syslog priority 7 facility local3 msg hello
commit命令用來啟用CLI監控策略。
【命令】
commit
【缺省情況】
CLI監控策略未被啟用。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【使用指導】
CLI監控策略創建並配置事件和動作後,並不會立即生效,需要執行commit命令才會生效。
修改CLI監控策略的配置後,也需要執行commit命令,新配置才會生效。
【舉例】
# 啟用CLI監控策略test。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] commit
display rtm environment命令用來顯示用戶自定義的EAA環境變量配置。
【命令】
display rtm environment [ var-name ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
var-name:環境變量的名稱,為1~63個字符的字符串,隻能包含數字、字母和下劃線,並且不能以下劃線開頭,區分大小寫。不指定該參數時,顯示所有環境變量的配置。
【舉例】
# 顯示用戶自定義的所有EAA環境變量配置。
<Sysname> display rtm environment
Name Value
save_cmd save main force
show_run_cmd display current-configuration
表1-1 display rtm environment命令信息描述
主要字段 |
描述 |
Name |
環境變量的名稱,最多可顯示30個字符。如果環境變量的名稱超過30個字符,可使用display current-configuration命令查看 |
Value |
環境變量的值,最多可顯示30個字符。如果環境變量的值超過30個字符,可使用display current-configuration命令查看 |
display rtm policy命令用來顯示監控策略的相關信息。
【命令】
display rtm policy { active | registered [ verbose ] } [ policy-name ]
【視圖】
任意視圖
【缺省用戶角色】
network-admin
network-operator
context-admin
context-operator
【參數】
active:顯示正在執行action命令的監控策略的相關信息。
registered:顯示已創建的監控策略的相關信息。
verbose:顯示監控策略的詳細信息。
policy-name:顯示指定監控策略的相關信息。policy-name表示監控策略的名稱,為1~63個字符的字符串,區分大小寫。不指定該參數時,顯示所有正在執行的或者是已創建的監控策略的相關信息。
【使用指導】
本命令用來顯示監控策略的相關信息,CLI監控策略下生效的具體配置請在任意視圖執行display current-configuration命令,或者在CLI監控策略視圖下使用display this命令來查看。
【舉例】
# 顯示所有正在執行action命令的監控策略的相關信息。
<Sysname> display rtm policy active
JID Type Event TimeActive PolicyName
507 CLI INTERFACE Aug 29 14:55:55 2013 test
表1-2 display rtm policy active命令顯示信息描述表
主要字段 |
描述 |
JID |
任務ID,隻有執行display rtm policy active命令時才顯示該信息 |
Type |
監控策略的類型,其中: · TCL表示這個策略是通過Tcl腳本定義的 · CLI表示這個策略是通過命令行定義的 |
Event |
監控策略觸發事件的類型,包括CLI、HOTPLUG、INTERFACE、PROCESS、SNMP、SNMP_NOTIF、SYSLOG和TRACK |
TimeActive |
監控策略開始運行的時間 |
PolicyName |
監控策略的名稱 |
# 顯示所有監控策略的簡要信息。
<Sysname> display rtm policy registered
Total number: 1
Type Event TimeRegistered PolicyName
CLI Aug 29 14:54:50 2013 test
表1-3 display rtm policy registered命令顯示信息描述表
主要字段 |
描述 |
Total number |
監控策略的總個數 |
Type |
監控策略的類型,其中: · TCL表示這個策略是通過Tcl腳本定義的 · CLI表示這個策略是通過命令行定義的 |
Event |
監控策略觸發事件的類型,包括CLI、HOTPLUG、INTERFACE、PROCESS、SNMP、SNMP_NOTIF、SYSLOG和TRACK |
TimeRegistered |
監控策略的創建時間 |
PolicyName |
監控策略的名稱 |
# 顯示所有監控策略的詳細信息。
<Sysname> display rtm policy registered verbose
Total number: 1
Policy Name: test
Policy Type: CLI
Event Type:
TimeRegistered: Aug 29 14:54:50 2013
User-role: network-operator
network-admin
表1-4 display rtm policy registered verbose命令顯示信息描述表
主要字段 |
描述 |
Total number |
監控策略的總數 |
Policy Name |
監控策略的名稱 |
Policy Type |
監控策略的類型,其中: · TCL表示這個策略是通過Tcl腳本定義的 · CLI表示這個策略是通過命令行定義的 |
Event Type |
監控策略觸發事件的類型,包括CLI、HOTPLUG、INTERFACE、PROCESS、SNMP、SNMP_NOTIF、SYSLOG和TRACK |
TimeRegistered |
監控策略的創建時間 |
User-role |
執行監控策略的角色 |
event cli命令用來配置命令行事件。
undo event命令用來取消事件配置。
【命令】
event cli { async [ skip ] | sync } mode { execute | help | tab } pattern regular-exp
undo event
【缺省情況】
未配置命令行事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
async [ skip ]:異步監控。如果指定skip參數,則表示事件發生時,隻執行CLI監控策略中的動作,不執行event cli中指定的命令;如果不指定skip參數,則表示事件發生時,CLI監控策略和event cli中指定的命令同時執行。
sync:同步監控。隻有CLI監控策略執行成功,event cli中指定的命令才能執行。
mode { execute | help | tab }:對命令的監控方式。其中:
· execute表示監控命令行的執行。當用戶執行特定命令時,觸發CLI監控策略。
· help表示監控命令行的“?”幫助。當用戶對指定命令執行幫助操作時,觸發CLI監控策略。
· tab表示監控命令行的Tab補全。當用戶執行指定命令並使用Tab鍵自動補全功能時,觸發CLI監控策略。
pattern regular-exp:用於匹配命令行的正則表達式。隻要輸入的命令行中包含該字符串,則匹配成功,觸發策略執行。關於正則表達式的詳細描述請參見“基礎配置指導”中的“CLI”。
【使用指導】
配置該事件後,當用戶輸入指定的命令並執行相應動作(執行、幫助或者補全)就會觸發策略執行。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,最後一次配置並commit的生效。
【舉例】
# 為CLI監控策略test配置異步CLI事件,當用戶輸入命令中含有display interface brief字符並執行該命令時觸發策略執行,同時跳過命令行執行。
<Sysname>system-view
[Sysname] rtm cli-policy test
[Sysname-rmt-test] event cli async skip mode execute pattern display interface brief
# 為CLI監控策略test配置異步CLI事件,當用戶輸入的命令中含有display interface brief字符並使用了<Tab>鍵補全功能時,觸發策略執行,同時將<Tab>鍵補全的結果返回給用戶。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rmt-test] event cli async mode tab pattern display interface brief
# 為CLI監控策略test配置同步CLI事件,當用戶輸入的命令中含有display interface brief字符並使用了幫助功能時,觸發策略執行。係統等策略執行成功後,返回幫助的結果。
<Sysname>system-view
[Sysname] rtm cli-policy test
[Sysname-rmt-test] event cli sync mode help pattern display interface brief
event hotplug命令用來配置指定成員設備加入/離開IRF事件。
undo event命令用來取消事件配置。
【命令】
event hotplug [ insert | remove ] slot slot-number
undo event
【缺省情況】
未配置熱插拔事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
insert:表示監控指定成員設備加入IRF事件。
remove:表示監控指定成員設備離開IRF事件。
slot slot-number:表示設備在IRF中的成員編號。
【使用指導】
配置該事件後,當指定成員設備加入/離開IRF,會觸發監控策略執行。
不指定insert和remove參數時,表示同時監控加入和離開事件。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,最後一次配置並commit的生效。
【舉例】
# 為CLI監控策略test配置監控事件:指定成員設備加入或離開時觸發策略執行。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] event hotplug slot 1
event interface命令用來配置接口事件。
undo event命令用來取消事件配置。
【命令】
event interface interface-type interface-number monitor-obj monitor-obj start-op start-op start-val start-val restart-op restart-op restart-val restart-val [ interval interval ]
undo event
【缺省情況】
未配置接口事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
interface-type interface-number:表示要監控的接口類型和編號。
monitor-obj monitor-obj:表示要監控的對象,具體描述請見表1-5。
start-op start-op:觸發監控策略執行的操作碼,取值如表1-6所示。
start-val start-val:觸發監控策略執行的監控對象的值,取值範圍為0~4294967295,單位請見表1-5。
restart-op restart-op:重新開啟觸發開關的操作碼,具體描述請見表1-6。
restart-val restart-val:重新開啟觸發開關的監控對象的值,取值範圍為0~4294967295,單位請見表1-5。
interval interval:監控對象數據的采樣周期,取值範圍為1~4294967295,單位為秒,缺省值為300。
監控對象 |
含義 |
input-drops |
采樣周期內,接口接收方向丟棄包的個數 |
input-errors |
采樣周期內,接口接收到的錯誤包的個數 |
output-drops |
采樣周期內,接口發送方向丟棄包的個數 |
output-errors |
采樣周期內,接口發送出去的錯誤包的個數 |
rcv-bps |
采樣周期內,接口接收速率,單位為比特/秒 |
rcv-broadcasts |
采樣周期內,接口接收到的廣播包個數 |
rcv-pps |
接口接收速率,單位為包/秒 |
tx-bps |
接口發送速率,單位為比特/秒 |
tx-pps |
接口發送速率,單位為包/秒 |
比較操作符 |
含義 |
eq |
等於 |
ge |
大於等於 |
gt |
大於 |
le |
小於等於 |
lt |
小於 |
ne |
不等於 |
【使用指導】
接口事件的觸發過程為:
(1) 配置該事件後,觸發開關立即打開。
(2) 當指定接口上的指定報文的數目達到start-op start-op start-val start-val參數指定的條件時,觸發監控策略執行一次(第一次執行),並關閉觸發開關,但係統會繼續監控接口事件。
(3) 當滿足restart-op restart-op restart-val restart-val參數指定的條件時,才重新開啟觸發開關。
(4) 如果指定接口上的指定報文的數目再次達到start-op start-op start-val start-val參數指定的條件時,則再次觸發監控策略執行一次(第二次執行),並關閉觸發開關,係統繼續監控接口事件。
(5) 如此循環。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,最後一次配置並commit的生效。
【舉例】
# 為CLI監控策略test配置監控事件:每60秒獲取一次GigabitEthernet1/0/1接收到的錯誤包的個數。當錯誤包的個數大於1000時觸發test執行並關閉觸發開關,當錯誤包的個數小於50時重新開啟觸發開關,如此循環。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] event interface gigabitethernet 1/0/1 monitor-obj input-errors start-op gt start-val 1000 restart-op lt restart-val 50 interval 60
event process命令用來配置進程事件。
undo event命令用來取消事件配置。
【命令】
event process { exception | restart | shutdown | start } [ name process-name [ instance instance-id ] ] [ slot slot-number ]
undo event
【缺省情況】
未配置進程事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
exception:監控進程異常事件。當進程發生異常時,觸發CLI監控策略。
restart:監控進程重啟事件。當進程重啟時,觸發CLI監控策略。
shutdown:監控進程關閉事件。當進程關閉時,觸發CLI監控策略。
start:監控進程啟動事件。當進程啟動時,觸發CLI監控策略。
name process-name:監控的用戶態進程的名稱,可以是當前正在運行的進程也可以是沒有運行的進程。不指定該參數時,表示所有用戶態進程。
instance instance-id:監控的用戶態進程的實例的編號,取值範圍為0~4294967295,可以是當前不存在的實例號。不指定該參數時,表示指定進程的所有實例。
slot slot-number:表示設備在IRF中的成員編號。不指定該參數時,表示所有成員設備。
【使用指導】
配置該事件後,當指定進程異常、關閉、啟動或重啟時(可以為用戶命令行觸發的或者係統自動觸發的),均觸發監控策略執行。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,最後一次配置並commit的生效。
【舉例】
# 為CLI監控策略test配置監控事件:當進程snmpd重啟時觸發策略執行。
<Sysname>system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] event process restart name snmpd
event snmp oid命令用來配置SNMP操作事件。
undo event命令用來取消事件配置。
【命令】
event snmp oid oid monitor-obj { get | next } start-op start-op start-val start-val restart-op restart-op restart-val restart-val [ interval interval ]
undo event
【缺省情況】
未配置SNMP操作事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
oid oid:表示需要監控的MIB對象的OID,為1~256個字符的字符串。
monitor-obj { get | next }:表示需要監控的SNMP操作。get表示SNMP Get操作;next表示SNMP Get Next操作。
start-op start-op:觸發監控策略執行的操作碼,取值如表1-6所示。
start-val start-val:觸發監控策略執行的值。可以是SNMP模塊支持的所有類型,例如,數字、字符串等。為1~512個字符的字符串。如果該值中包含空格,需要在值的首末添加英文格式的引號,形如”xxx xxx”。
restart-op op:重新開啟觸發開關的操作碼,取值如表1-6所示。
restart-val restart-val:重新開啟觸發開關的監控對象的值。可以是SNMP模塊支持的所有類型,例如,數字、字符串等。為1~512個字符的字符串。如果該值中包含空格,需要在值的首末添加英文格式的引號,形如”xxx xxx”。
interval interval:獲取監控對象數據的時間間隔,取值範圍為1~4294967295,單位為秒,缺省值為300。
【使用指導】
SNMP操作事件的觸發過程為:
(1) 配置該事件後,觸發開關立即打開。
(2) 此後係統按照用戶設定的interval interval定時獲取設備上某個OID對應節點的值,該值達到start-op start-op start-val start-val參數指定的條件時,觸發監控策略執行一次(第一次執行),並關閉觸發開關,但係統會繼續監控SNMP操作事件。
(3) 當滿足restart-op restart-op restart-val restart-val參數指定的條件時,才重新開啟觸發開關。
(4) 如果用戶獲取的MIB對象的值再次達到start-op start-op start-val start-val參數指定的條件時,則再次觸發監控策略執行一次(第二次執行),並關閉觸發開關,係統繼續監控SNMP操作事件。
(5) 如此循環。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,最後一次配置並commit的生效。
配置本命令前,請先開啟SNMP功能,否則,本命令配置失敗。配置本命令後,如果關閉SNMP功能,設備會自動刪除本命令,如需繼續使用本命令,請重新配置。
【舉例】
# 為CLI監控策略test配置監控事件:係統每5秒檢查MIB對象1.3.6.4.9.9.42.1.2.1.6.4的值,當該值等於1時觸發執行監控策略並關閉監控開關,當等於2時重新啟動監控。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] event snmp oid 1.3.6.4.9.9.42.1.2.1.6.4 monitor-obj get start-op eq start-val 1 restart-op eq restart-val 2 interval 5
event snmp-notification命令用來配置SNMP告警事件。
undo event命令用來取消事件配置。
【命令】
event snmp-notification oid oid oid-val oid-val op op [ drop ]
undo event
【缺省情況】
未配置SNMP告警觸發事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
oid oid:告警信息中攜帶的MIB對象的OID,為1~256個字符的字符串。
oid-val oid-val:告警信息中攜帶的MIB對象的值。可以是SNMP模塊支持的所有類型,例如,數字、字符串等。為1~512個字符的字符串。如果該值中包含空格,需要在值的首末添加英文格式的引號,形如”xxx xxx”。
op op:比較操作碼,取值如表1-6所示。
drop:表示匹配成功後丟棄該告警信息。不指定該參數時,表示正常發送。
【使用指導】
配置該事件後,當係統生成一條告警,且告警中攜帶的MIB對象(由oid參數指定)的值到達oid-val oid-val op op指定的條件時,觸發監控策略執行。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,最後一次配置並commit的生效。
配置本命令前,請先開啟SNMP功能,否則,本命令配置失敗。配置本命令後,如果關閉SNMP功能,設備會自動刪除本命令,如需繼續使用本命令,請重新配置。
【舉例】
# 為CLI監控策略test配置SNMP告警監控事件:當告警信息中包含的登錄用戶名為admin時,觸發策略且丟棄該告警。(登錄用戶名對應的MIB節點的OID為1.3.6.1.4.1.25506.2.2.1.1.2.1.0)
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] event snmp-notification oid 1.3.6.1.4.1.25506.2.2.1.1.2.1.0 oid-val admin op eq drop
event syslog命令用來配置日誌事件。
undo event命令用來取消事件配置。
【命令】
event syslog priority { priority | all } msg msg occurs times period period
undo event
【缺省情況】
未配置日誌事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
priority { priority | all }:表示需要匹配的日誌的優先級。其中:
· priority表示需要匹配的日誌的最低優先級,取值範圍為0~7。優先級的數值越小,優先級越高。當level配置為3時,表示能匹配優先級為0~3的日誌。
· all表示和任意優先級匹配,效果同level配置為7。
msg msg:表示需要匹配的日誌的部分或全部。msg表示包含日誌部分或全部內容的正則表達式,為1~255個字符的字符串。
occurs times period period:表示設備在period時間內收到times次指定日誌時觸發監控策略執行。times的取值範圍為1~32;period的取值範圍為1~4294967295,單位為秒。
【使用指導】
配置該事件後,當係統在指定時間段內生成指定的日誌信息時觸發監控策略執行。為了防止循環觸發,RTM模塊產生的日誌不會觸發策略。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,最後一次配置並commit的生效。
正則表達式支持多種特殊字符,特殊字符的匹配規則如表1-7所示。
特殊字符 |
含義 |
舉例 |
^ |
匹配以指定字符開始的行 |
^u隻能匹配以u開始的行,不能匹配以Au開始的行 |
$ |
匹配以指定字符結束的行 |
u$隻能匹配以u結尾的行,不能匹配以uA結尾的行 |
. |
通配符,可代表任何一個字符 |
.s可以匹配as和bs等 |
* |
匹配星號前麵的字符或字符串零次或多次 |
· zo*可以匹配z以及zoo · (zo)*可以匹配zo以及zozo |
+ |
匹配+前麵的字符或字符串一次或多次 |
zo+可以匹配zo以及zoo,但不能匹配z |
| |
匹配|左邊或右邊的整個字符串 |
def|int隻能匹配包含def或者int的字符串所在的行 |
( ) |
表示字符串,一般與“+”或“*”等符號一起使用 |
(123A)表示字符串123A;408(12)+可以匹配40812或408121212等字符串,但不能匹配408 |
\index |
表示重複一次指定字符串,字符串是指\前用()括起來的字符串,index對應\前字符串的順序號按從左至右的順序從1開始編號:如果\前麵隻有一個字符串,則index隻能為1;如果\前麵有n個字符串,則index可以為1到n中的任意整數 |
(string)\1表示把string重複一次,匹配的字符串必須包含stringstring;(string1)(string2)\2表示把string2重複一次,匹配的字符串必須包含string1string2string2;(string1)(string2)\1\2表示先把string1重複一次,再重複一次string2,匹配的字符串必須包含string1string2string1string2 |
[ ] |
表示字符選擇範圍,將以選擇範圍內的單個字符為條件進行匹配,隻要字符串裏包含該範圍的某個字符就能匹配到 |
· [16A]表示可以匹配到的字符串隻需要包含1、6或A中任意一個 · [1-36A] 表示可以匹配到的字符串隻需要包含1、2、3、6或A中任意一個(-為連接符) 如果]需要作為普通字符出現在[ ]內時,必須把]寫在[ ]中字符的最前麵,形如[]string],才能匹配到]。[沒有這樣的限製 |
[^] |
表示選擇範圍外的字符,將以單個字符為條件進行匹配,隻要字符串裏包含該範圍外的某個字符就能匹配到 |
[^16A]表示可匹配的字符串隻需要包含1、6和A之外的任意字符,該字符串也可以包含字符1、6或A,但不能隻包含這三個字符。例如[^16A]可以匹配abc、m16,不能匹配1、16、16A |
{n} |
n是一個非負整數,匹配n次 |
o{2}不能匹配Bob,但是能匹配food |
{n,} |
n是一個非負整數,至少匹配n次 |
o{2,}不能匹配Bob,但能匹配foooood |
{n,m} |
m和n均為非負整數,其中n小於等於m。隻要字符串裏包含n到m個某字符就能匹配到 |
o{1,3}能匹配fod、food、foood、foooood,但不能匹配fd |
\< |
匹配包含指定字符串的字符串,字符串前麵如果有字符則不能是數字、字母和下劃線 |
\<do匹配單詞domain,還可以匹配字符串doa |
\> |
匹配包含指定字符串的字符串,字符串後麵如果有字符則不能是數字、字母和下劃線 |
do\>匹配單詞undo,還可以匹配字符串cdo |
\b |
匹配一個單詞邊界,也就是指單詞和空格間的位置 |
er\b可以匹配never,但不能匹配verb \ber可以匹配erase,但不能匹配verb |
\B |
匹配非單詞邊界 |
er\B能匹配verb,但不能匹配never |
\w |
\w等效於[A-Za-z0-9_],是數字、字母或下劃線 |
v\w能匹配vlan,v\w還能匹配service |
\W |
\W等效於[^A-Za-z0-9_],是除了數字、字母和下劃線之外的任意字符 |
\Wa可以匹配-a,但是不能匹配2a和ba等 |
\ |
轉義操作符,\後緊跟本表中羅列的單個特殊字符時,將去除特殊字符的特定含義 |
· \\可以匹配包含\的字符串 · \^可以匹配包含^的字符串 · \\b可以匹配包含\b的字符串 |
【舉例】
# 為CLI監控策略test配置監控事件:當優先級高於或等於3、內容中含有down的日誌在6秒內出現過5次時觸發執行策略。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] event syslog priority 3 msg down occurs 5 period 6
event track命令用來配置Track事件。
undo event命令用來取消事件配置。
【命令】
event track track-list state { negative | positive } [ suppress-time suppress-time ]
undo event
【缺省情況】
未配置Track事件。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
track-list:Track項列表,表示多個Track項的序號。表示方式為track-list = { track-entry-number [ to track-entry-number ] }&<1-16>。其中,track-entry-number為Track項的序號,取值範圍為1~1024。&<1-16>表示前麵的參數最多可以輸入16次。
state { negative | positive }:監控Track項的狀態變化。其中:
· negative:表示當Track項由Positive狀態變為Negative狀態時,觸發該事件。
· positive:表示當Track項由Negative狀態變為Positive狀態時,觸發該事件。
suppress-time suppress-time:抑製時間,取值範圍為1~4294967295,單位為秒,缺省值為0。
【使用指導】
配置該事件後,當關聯的Track項狀態由Positive變為Negative或者Negative變為Positive時,EAA認為Track事件發生,會觸發監控策略執行。如果關聯多個Track項,則最後一個處於Positive(Negative)狀態的Track項變為Negative(Positive)時,觸發監控策略執行。
例如,配置Track事件中的Track項用於自動檢測本設備和上行BGP鄰居間的鏈路,配置處理動作為自動執行命令peer ignore禁止與下行BGP鄰居建立會話。使用這樣的監控策略可以實現:當設備與上行鄰居的BGP會話都中斷時,能自動斷開與下行鄰居的BGP會話。
為避免Track事件頻繁發生導致監控策略頻繁執行,可以指定抑製時間來控製兩次監控策略執行的時間間隔。如果配置了抑製時間,當Track事件發生,會觸發監控策略執行,並同時開啟抑製定時器。EAA會根據定時器的計時進行如下處理:
· 在抑製定時器超時前以及抑製定時器超時時間點,如果Track事件再次發生,Track事件會被抑製,不會觸發監控策略執行。
· 抑製時間到達後,如果Track事件再次發生,才會再次觸發監控策略執行,並將抑製定時器清零,重新開始計時,以便控製監控策略的執行時間間隔大於抑製時間,直到監控策略被停止為止。
例如:配置Track項1“track 1 interface gigabitethernet 1/0/1”;配置Track事件“event track 1 state negative suppress-time 60”。這就表示:
· 當接口GigabitEthernet1/0/1的狀態變成DOWN時,觸發監控策略執行。
· 如果60s內(包括60s,即1分鍾),GigabitEthernet1/0/1的狀態再次變成DOWN,監控策略不執行,以免1分鍾內接口閃斷導致監控策略頻繁執行。
· 1分鍾後,如果GigabitEthernet1/0/1的狀態再次變成DOWN,監控策略才執行。
同一監控策略下,隻能配置一個事件。如果多次執行event命令配置了不同事件,則最新配置並commit的生效。
【舉例】
# 為Track監控策略test配置監控事件:監控Track項1到8全部變為Negative時,觸發執行策略,並配置抑製時間為180秒。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] event track 1 to 8 state negative suppress-time 180
rtm cli-policy命令用來創建CLI監控策略,並進入CLI監控策略視圖。如果指定的CLI監控策略已經存在,則直接進入CLI監控策略視圖。
undo rtm cli-policy命令來刪除指定的CLI監控策略。
【命令】
rtm cli-policy policy-name
undo rtm cli-policy policy-name
【缺省情況】
不存在CLI監控策略。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
policy-name:CLI監控策略的名稱。為1~63個字符的字符串,區分大小寫。
【使用指導】
創建CLI監控策略後,用戶可以通過命令行給CLI監控策略配置觸發事件以及需要執行的動作。
CLI監控策略配置完成後(即配置完觸發事件以及需要執行的動作後),必須執行commit命令才能啟用CLI監控策略,使配置的事件和動作生效。
多次執行該命令可以創建多個CLI監控策略且數量沒有限製。請盡量確保同時啟用的策略間動作不要衝突,因為當係統同時執行多個策略,且不同策略間動作有衝突時,執行結果是隨機的。
Tcl監控策略和CLI監控策略的名稱可以相同。
【舉例】
# 創建CLI監控策略test並進入CLI監控策略視圖。
<Sysname> system-view
[Sysname] rtm cli-policy test
【相關命令】
· commit
rtm environment命令用來創建監控策略的環境變量。
undo rtm environment命令來刪除指定的環境變量。
【命令】
rtm environment var-name var-value
undo rtm environment var-name
【缺省情況】
不存在用戶自定義的環境變量。係統中支持一係列內部環境變量,不同事件支持的內部環境變量及其意義有所不同,請參見表1-8。
事件 |
內部環境變量的名稱 |
描述 |
CLI |
_cmd |
匹配上的命令 |
SYSLOG |
_syslog_pattern |
匹配的日誌信息的內容 |
HOTPLUG |
_slot |
加入或離開IRF的成員設備的編號 |
INTERFACE |
_ifname |
接口的名稱 |
SNMP |
_oid |
SNMP操作中攜帶的OID |
_oid_value |
OID對應節點的值 |
|
SNMP TRAP |
_oid |
SNMP告警信息中攜帶的OID |
PROCESS |
_process_name |
進程的名稱 |
公共環境變量 |
_event_id |
事件的ID |
_event_type |
事件的類型 |
|
_event_type_string |
事件類型的描述 |
|
_event_time |
事件發生的時間 |
|
_event_severity |
事件的嚴重級別 |
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
var-name:環境變量的名稱,為1~63個字符的字符串,隻能包含數字、字母和下劃線,並且不能以下劃線開頭,區分大小寫。
var-value:環境變量的值。
【使用指導】
在配置監控策略的動作時,用戶可以在應該輸入參數的地方輸入“$環境變量名”,表示此處需要引用環境變量值。係統在運行監控策略的時候,會自動用環境變量值去替代“$環境變量名”。
當同時用到多個環境變量時,請按照$variable_name1$variable_name2...$variable_nameN的格式輸入。
【舉例】
# 設置環境變量if,其值為interface。
<Sysname> system-view
[Sysname] rtm environment if interface
rtm scheduler suspend命令用來暫停運行所有的監控策略,包括CLI監控策略和Tcl監控策略。
undo rtm scheduler suspend命令用來恢複運行監控策略。
【命令】
rtm scheduler suspend
undo rtm scheduler suspend
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【使用指導】
當監控策略被頻繁觸發影響用戶使用設備或者用戶需要修改Tcl監控策略的腳本內容時,可以使用本命令暫停運行所有的監控策略。
監控策略被暫停後,即便滿足條件,也不再觸發action命令。
如果執行本命令時,某個監控策略正在執行action命令,則這個監控策略會繼續執行完所有的action命令,再被暫停。
【舉例】
# 暫停所有的監控策略。
<Sysname> system-view
[Sysname] rtm scheduler suspend
rtm tcl-policy命令用來創建並啟用Tcl監控策略,並將該策略與Tcl腳本綁定。
undo rtm tcl-policy命令來刪除Tcl監控策略。
【命令】
rtm tcl-policy policy-name tcl-filename
undo rtm tcl-policy policy-name
【缺省情況】
不存在Tcl監控策略。
【視圖】
係統視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
policy-name:Tcl監控策略的名稱。為1~63個字符的字符串,區分大小寫。
tcl-filename:Tcl腳本文件的名稱。文件名區分大小寫,擴展名必須為“.tcl”,擴展名不區分大小寫,Tcl腳本文件必須為設備存儲介質上存在的文件。
【使用指導】
策略的具體內容由綁定的Tcl腳本來定義。腳本中會定義策略的觸發事件、事件觸發時要執行的操作、執行操作需要的角色、策略的運行時間等參數。
配置Tcl監控策略時,tcl-filename請使用相對路徑並確保所有的成員設備上都存在該腳本,以免主備倒換或腳本所在成員設備離開IRF後,策略無法執行。
Tcl監控策略啟用後,不允許修改Tcl腳本。如需修改,請先暫停Tcl監控策略,修改後,再啟用Tcl監控策略。否則,Tcl監控策略將不能運行。
不能通過重複執行本命令修改Tcl監控策略綁定的Tcl腳本。如需修改,請先通過undo rtm tcl-policy命令刪除該Tcl監控策略,再重新配置。
【舉例】
# 創建並啟用Tcl監控策略test,並將它和腳本test.tcl綁定。
<Sysname> system-view
[Sysname] rtm tcl-policy test test.tcl
running-time命令用來配置CLI監控策略執行動作的持續時間。
undo running-time命令用來恢複缺省情況。
【命令】
running-time time
undo running-time
【缺省情況】
CLI監控策略執行動作的持續時間為20秒。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
time:CLI監控策略執行動作的持續時間,取值範圍為0~31536000,單位為秒。取值為0時,表示策略可以永久運行下去。
【使用指導】
當條件滿足、監控策略被觸發執行動作時,係統會開始計時。當運行時間到,即便策略還沒有執行完動作,也會立即停止執行。該命令用於限製動作的執行時間,以免動作長時間執行占用係統資源。而策略是否會觸發以及停止後是否會被再次觸發則由event配置決定。
【舉例】
# 配置CLI監控策略test執行動作的持續時間為60秒。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] running-time 60
user-role命令用來配置執行CLI監控策略時使用的用戶角色。
undo user-role命令用來刪除已經配置的指定用戶角色。
【命令】
user-role role-name
undo user-role role-name
【缺省情況】
執行CLI監控策略時使用的用戶角色為創建該策略的用戶的角色。
【視圖】
CLI監控策略視圖
【缺省用戶角色】
network-admin
context-admin
【參數】
role-name:用戶角色名稱,為1~63個字符的字符串,區分大小寫。
【使用指導】
用戶角色中定義了允許用戶操作哪些係統功能以及資源對象,設備支持的每條命令都有缺省用戶角色,如果監控策略中指定的用戶角色權限比命令行的缺省用戶角色的權限小,則不能執行該命令以及該命令後麵的所有動作。如果指定的用戶角色不存在,則監控策略不能執行。如果給某個監控策略配置了多個用戶角色,則使用這些用戶角色權限的並集去執行該策略。例如,給某策略配置了用戶角色A和B,如果策略中的動作是角色A或者B允許執行的,則策略可以執行;如果策略中存在角色A和B都不能執行的命令,則該命令以及該命令後麵的所有動作都不能執行。關於用戶角色的詳細描述請參見“基礎配置指導”中的“RBAC”。
同一監控策略下可配置多個用戶角色,最多可以配置64個有效用戶角色,超過該上限後,新配置的用戶角色即便commit也不會生效。
安全日誌管理員角色與其它用戶角色互斥:為監控策略配置安全日誌管理員角色後,係統會自動刪除當前配置的其它用戶角色;反之亦然。
【舉例】
# 配置執行CLI監控策略test時使用的用戶角色為network-admin和admin。
<Sysname> system-view
[Sysname] rtm cli-policy test
[Sysname-rtm-test] user-role network-admin
[Sysname-rtm-test] user-role admin
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!