目錄

簡介

必要條件

需求

採用元件

設定

CPU利用率高於50%

%SNMP-3-INPUT_QFULL_ERR系統日誌消息

驗證

疑難排解

相關資訊

簡介

本檔案介紹如何設定Cisco IOS®內嵌式事件管理員(EEM)小程式，以擷取show stacks指令的輸出。思科技術協助中心(TAC)通常需要此輸出，才能排解簡單網路管理通訊協定(SNMP)導致的CPU使用率較高問題。

必要條件

需求

思科建議您瞭解以下主題：

- 簡易網路管理通訊協定(SNMP)

- Cisco IOS內嵌式事件管理員(EEM)

- 系統日誌

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- Cisco IOS版本15.1(4)M6

- 思科2811整合式服務路由器

附註：本檔案中的組態應與舊版Cisco IOS軟體搭配使用，因為兩個小程式都使用EEM版本3.0，而Cisco IOS版本12.4(22)T或更新版本支援此版本。但是，這尚未經過測試。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

設定

這些EEM小程式自動執行show stacks命令的輸出捕獲。請注意：

- 兩個小程式都使用SNMP引擎的進程ID(PID)。輸入show processes cpu命令以查詢PID;在本例中，PID為188:

2811#show processes cpu | include SNMP ENGINE

PID Runtime(ms)     Invoked      uSecs   5Sec   1Min   5Min TTY Process

188          40           1      40000  0.00%  0.04%  0.01%   0 SNMP ENGINE

2811#

- 需要EEM 3.0或更高版本才能使用等待操作。輸入show event manager version命令以檢測EEM版本。

- 使用身份驗證、授權和記帳(AAA)的Cisco IOS軟體裝置應定義哪些使用者可以執行CLI操作。使用event manager session cli username user 命令進行此配置，其中user是授權在EEM小程式中執行所有CLI命令的使用者名稱。

- 某些檔案系統可能不支援使用「append」選項重定向輸出。在配置applet之前，請手動測試該程式，以確保可以將輸出重定向到檔案系統。

show stacks命令會顯示指定程式處理的任務。在排查高CPU利用率問題時，瞭解出現這種情況時正在執行哪些任務非常有用。

CPU利用率高於50%

此EEM小程式檢測CPU利用率何時超過50%。這時，show stacks命令的輸出會在九秒內取樣並記錄到快閃記憶體中名為SNMP_STACK.txt的檔案中。此資訊可幫助TAC確定CPU使用率高的原因。

本示例調查由SNMP引起的高CPU條件；可以使用類似的EEM小程式來收集不同的輸出集，以調查由不同進程引起的高CPU問題。

event manager applet SNMP_STACK

event snmp oid 1.3.6.1.4.1.9.9.109.1.1.1.1.10.1 get-type exact entry-op gt

entry-val "50" exit-op lt exit-val "15" poll-interval 2 maxrun 20

action 0.0 syslog msg "High CPU DETECTED"

action 0.1 cli command "enable"

action 1.1 cli command "show clock | append flash:SNMP_STACK.TXT"

action 1.2 cli command "show proc cpu sort | append flash:SNMP_STACK.TXT"

action 2.1 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 2.2 wait 1

action 2.3 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 2.4 wait 1

action 2.5 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 2.6 wait 1

action 2.7 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 2.8 wait 1

action 2.9 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.1 wait 1

action 3.2 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.3 wait 1

action 3.4 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.5 wait 1

action 3.6 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.7 wait 1

action 3.8 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

%SNMP-3-INPUT_QFULL_ERR系統日誌消息

如果生成%SNMP-3-INPUT_QFULL_ERR系統日誌消息，則會啟用此EEM小程式。這時，show stacks命令的輸出會在九秒內取樣並記錄到快閃記憶體中名為SNMP_STACK.txt的檔案中。此資訊可幫助TAC確定CPU使用率高的原因。

event manager applet SNMP_STACK

event syslog pattern "%SNMP-3-INPUT_QFULL_ERR"

action 1.0 cli command "enable"

action 2.1 cli command "show clock | append flash:SNMP_STACK.TXT"

action 2.2 cli command "show proc cpu sort | append flash:SNMP_STACK.TXT"

action 3.1 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.2 wait 1

action 3.3 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.4 wait 1

action 3.5 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.6 wait 1

action 3.7 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 3.8 wait 1

action 3.9 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 4.1 wait 1

action 4.2 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 4.3 wait 1

action 4.4 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 4.5 wait 1

action 4.6 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 4.7 wait 1

action 4.8 cli command "show stacks 188 | append flash:SNMP_STACK.TXT"

action 4.9 wait 1

驗證

目前沒有適用於此組態的驗證程序。

疑難排解

目前尚無適用於此組態的具體疑難排解資訊。

相關資訊

- 嵌入式事件管理器配置指南，Cisco IOS版本15M&T

- 技術支援與文件 - Cisco Systems