Cisco IOS 和 NX-OS 软件 : Cisco IOS Embedded Event Manager (EEM)

获取从show stacks命令配置的输出的EEM Applet

2016 年 10 月 27 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 8 月 22 日) | 反馈

简介

本文描述如何配置Cisco IOS被嵌入的活动管理器(EEM) applet为了获取从show stacks命令的输出。Cisco技术支持中心(TAC)通常需要此输出为了排除故障简单网络管理协议(SNMP)导致的高CPU利用率问题。

贡献用Andres波拉斯和雷斯希门尼斯, Cisco TAC工程师。

先决条件

要求

Cisco 建议您了解以下主题:

  • 简单网络管理协议 (SNMP)
  • Cisco IOS嵌入式活动管理器(EEM)
  • Syslog

使用的组件

本文档中的信息基于以下软件和硬件版本:

  • Cisco IOS版本15.1(4)M6
  • Cisco 2811 集成多业务路由器

注意:在本文的配置应该工作与初期的Cisco IOS软件版本,因为两applet使用EEM版本3.0, Cisco IOS版本12.4(22)T或以上支持。然而,这未测试。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。

配置

这些EEM applet自动化进程获取从show stacks命令的输出。注意, :

  • 两applet使用进程ID (PID) SNMP引擎。输入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或以上要求为了使用等待操作。输入在显示事件管理器版本命令为了检测EEM版本。
  • 使用验证、授权和统计(AAA)的Cisco IOS软件设备应该定义哪个用户能执行CLI操作。请使用活动管理器会话cli username命令此配置,用户是授权的用户名执行所有CLI in命令EEM applet。
  • 一些文件系统不可以支持与‘添附’选项重定向输出。在您配置applet前,请手工测试此为了保证您能重定向输出到您的文件系统。

show stacks命令显示由特定的程序处理的任务。当排除故障高CPU利用率问题时,发现任务被执行的是有用的,当情况发生时。

在50%上的CPU利用率

当CPU利用率在50%上,去此EEM applet检测。那时,从show stacks命令的输出在呼叫在闪存内的SNMP_STACK.txt的文件被采样九秒并且被记录。此信息帮助TAC识别高CPU利用率的原因。

此示例调查SNMP造成的一个高效CPU使用状况;您能使用一相似的EEM applet为了收集一组不同的输出调查一不同的进程导致的高CPU问题。

event manager applet SNMP_STACK
event snmp oid 1.3.6.1.4.1.9.9.109.1.1.1.1.6.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 applet激活。那时,从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

验证

当前没有可用于此配置的验证过程。

故障排除

目前没有针对此配置的故障排除信息。

相关信息



Document ID: 116142