Escritura de las Políticas de Embedded Event Manager Usando Tcl

Anuncio
Escritura de las Políticas de Embedded Event Manager Usando Tcl
Descargue este capítulo
Escritura de las Políticas de Embedded Event Manager Usando Tcl
Descargue el libro completo
Guía de configuración de la administración del Cisco IOS Network, versión 12.2SR (PDF - 8 MB)
Feedback
Contenidos
Escritura de las Políticas de Embedded Event Manager Usando Tcl
Encontrar la información de la característica
Contenido
Prerrequisitos para Escribir Políticas de Embedded Event Manager Usando Tcl
Información sobre la Escritura de Políticas de Embedded Event Manager Usando Tcl
Directivas EEM
Categorías de Extensiones de Comando de Tcl de Políticas de EEM
Flujo General de Detección y Recuperación de Eventos EEM
Seguro-TCL
Soporte de Bytecode para EEM 2.4
Sustitución del Registro
Convenciones para la Asignación de Nombres de Archivo de Cisco para EEM
Cómo Escribir Políticas de Embedded Event Manager Usando Tcl
Registro y Definición de un Script EEM Tcl
Prerrequisitos
Ejemplos
Visualización de Políticas Registradas EEM
Cancelación del Registro de las Políticas EEM
Ejemplos
Suspensión de la Ejecución de Políticas EEM
Ejemplos
Administración de Políticas de EEM
Ejemplos
Modificación del Tamaño de Tabla de Historial y Visualización de Datos de Historial de EEM
Visualización de la Métrica de la Confiabilidad del Proceso de Modularidad de Software mediante EEM
Consejos de Troubleshooting
Modificación de las Políticas de EEM de Ejemplo
Directivas de la muestra EEM
Programación de Políticas EMM con Tcl
Estructura y requisitos de la directiva Tcl
Estatus de la entrada EEM
Estado de salida EEM
Directivas EEM y número de error de Cisco
Consejos de Troubleshooting
Creación de un Índice de la Biblioteca Tcl de Usuario de EEM
Creación de un Índice de Paquete Tcl de Usuario EEM
Ejemplos de Configuración para la Escritura de las Políticas de Embedded Event Manager Utilizando Tcl
Asignación de un Nombre de Usuario para una Sesión Tcl: Ejemplos
Demostración del Detector de Eventos EEM: Ejemplos
Programación de Políticas con Tcl: Ejemplo de Scripts de Muestra
Debugging de Políticas de Embedded Event Manager: Ejemplos
Rastreo de las Operaciones del Comando set de Tcl: Ejemplo:
Detector de Eventos RPC: Ejemplo:
Adonde ir después
Referencias adicionales
Documentos Relacionados
MIB
RFC
Asistencia Técnica
Referencia de Extensiones de Comandos de Tcl de Políticas de EEM
Extensiones de Comandos Tcl de Registro de Eventos de EEM
event_register_appl
event_register_cli
event_register_counter
event_register_gold
event_register_interface
event_register_ioswdsysmon
event_register_ipsla
event_register_nf
event_register_none
event_register_oir
event_register_process
event_register_resource
event_register_rf
el event_register_routing
event_register_rpc
event_register_snmp
event_register_snmp_notification
event_register_snmp_object
event_register_syslog
event_register_timer
event_register_timer_subscriber
event_register_track
event_register_wdsysmon
Extensiones de Comandos de Tcl de Información de Eventos de EEM
event_reqinfo
Comando Extension Tcl del evento EEM
event_completion
event_completion_with_wait
event_publish
event_wait
Extensiones del comando Tcl del soporte de los eventos múltiples EEM
activador
correlativo
atributo
Extensiones de Comandos Tcl de Acciones de EEM
action_policy
action_process
action_program
action_reload
action_script
action_snmp_trap
action_snmp_object_value
action_switch
action_syslog
action_track_read
action_track_set
Extensiones de Comandos de Tcl de Utilidades de EEM
appl_read
appl_reqinfo
appl_setinfo
counter_modify
descripción
fts_get_stamp
register_counter
register_timer
timer_arm
timer_cancel
unregister_counter
Extensiones del Comando Tcl de Información del Sistema EEM
sys_reqinfo_cli_freq
sys_reqinfo_cli_history
sys_reqinfo_cpu_all
sys_reqinfo_crash_history
sys_reqinfo_mem_all
sys_reqinfo_proc
sys_reqinfo_proc_all
sys_reqinfo_routername
sys_reqinfo_snmp
sys_reqinfo_syslog_freq
sys_reqinfo_syslog_history
Extensiones del Comando Debug de la Biblioteca EEM
cli_debug
smtp_debug
Extensiones de Comando de la Biblioteca SMTP
smtp_send_email
smtp_subst
Extensiones de Comando de la Biblioteca CLI
cli_close
cli_exec
cli_get_ttyname
cli_open
cli_read
cli_read_drain
cli_read_line
cli_read_pattern
cli_run
cli_run_interactive
cli_write
Soporte de la biblioteca XML-PI CLI
xml_pi_exec
xml_pi_parse
xml_pi_read
xml_pi_write
Extensiones de Comando de la Biblioteca de Contexto Tcl
context_retrieve
context_save
Extensiones del comando Tcl del registro del evento para EEM 3,2
event_register_identity
event_register_mat
event_register_neighbhor_discovery
Información sobre Funciones para Escribir Políticas de Embedded Event Manager con Tcl
Escritura de las Políticas de Embedded Event Manager Usando Tcl
Primera publicación: De octubre el 31 de 2005
Última actualización: Mayo 31, 2010
Este módulo describe cómo los desarrollares de software pueden escribir y personalizar las directivas integradas del
administrador del evento (EEM) usando los scripts del Tool Command Language (Tcl) para manejar los incidentes y los eventos
del Cisco IOS Software. EEM es un proceso directiva-conducido mediante el cual los incidentes en el sistema informático de
Cisco IOS Software están señalados a través de una interfaz programada definida de la aplicación (API). El motor de políticas
EEM recibe notificaciones cuando ocurren fallas y otros eventos. Las políticas de EEM implementan la recuperación basándose
en el estado actual del sistema y en las acciones especificados en la política para un evento determinado. Las acciones de
recuperación se desencadenan cuando se ejecuta la política.
Encontrar la información de la característica
Su versión de software puede no soportar todas las características documentadas en este módulo. Para la últimas información y
advertencias de la característica, vea los Release Note para su plataforma y versión de software. Para encontrar la información
sobre las características documentadas en este módulo, y ver una lista de las versiones en las cuales se soporta cada
característica, vea “información de la característica para escribir las directivas integradas del administrador del evento usando la
sección Tcl”.
Utilice el Cisco Feature Navigator para encontrar la información sobre el soporte del Soporte de la plataforma y de la imagen del
software de Cisco. Para acceder a Cisco Feature Navigator, vaya a http://www.cisco.com/go/cfn. Una cuenta en Cisco.com no
se requiere.
Contenido
•
Prerrequisitos para Escribir Políticas de Embedded Event Manager Usando Tcl
•
Información sobre la Escritura de Políticas de Embedded Event Manager Usando Tcl
•
Cómo Escribir Políticas de Embedded Event Manager Usando Tcl
•
Ejemplos de Configuración para la Escritura de las Políticas de Embedded Event Manager Utilizando Tcl
•
Adonde ir después
•
Referencias adicionales
•
Referencia de Extensiones de Comandos de Tcl de Políticas de EEM
•
Información sobre Funciones para Escribir Políticas de Embedded Event Manager con Tcl
Prerrequisitos para Escribir Políticas de Embedded Event Manager Usando Tcl
• Antes de escribir las directivas EEM, usted debe ser familiar con el módulo “de la descripción integrada del administrador
del evento”.
• Si usted quiere escribir las directivas EEM usando los comandos del comando line interface(cli), usted debe ser familiar
con “las directivas integradas escritura del administrador del evento usando el módulo del Cisco IOS CLI”.
Información sobre la Escritura de Políticas de Embedded Event Manager Usando Tcl
Para escribir las directivas EEM usando el Tcl, usted debe entender los conceptos siguientes:
•
Directivas EEM
•
Categorías de Extensiones de Comando de Tcl de Políticas de EEM
•
Flujo General de Detección y Recuperación de Eventos EEM
•
Seguro-TCL
•
Soporte de Bytecode para EEM 2.4
•
Sustitución del Registro
•
Convenciones para la Asignación de Nombres de Archivo de Cisco para EEM
Directivas EEM
EEM ofrece la capacidad de monitorear los eventos y de tomar informativo o la acción correctiva cuando los eventos
monitoreados ocurren o alcanzan un umbral. Una política EEM es una entidad que define un evento y las acciones que se
tomarán cuando ocurra ese evento. Hay dos tipos de políticas de EEM: un applet o un script. Un applet es una forma sencilla de
directiva que se defina dentro de la configuración del comando line interface(cli). Un script es un tipo de política que se escribe
en Tool Command Language (Tcl).
Applet de EEM
Un applet de EEM es un método sucinto para definir criterios de filtrado de eventos y las acciones que se deberán llevar a cabo
cuando se produzca el evento correspondiente. En el modo de configuración del applet EEM, soportan a tres tipos de
sentencias de configuración. Utilizan a los comandos event de especificar los criterios del evento para accionar el applet para
ejecutarse, se utilizan los comandos de la acción de especificar una acción para realizarse cuando se acciona el applet EEM, y
set se utiliza el comando de fijar el valor de una variable del applet EEM. Solamente la variable del _exit_status se soporta
actualmente para set el comando.
Solamente un Comandos de configuración de eventos se permiten dentro de una configuración del applet. Cuando se sale el
submode de la configuración del applet y no hay comando event presente, una advertencia es el exponer visualizado que no se
asocia ningún evento al applet. Si no se especifica ningún evento, el applet no se considera registrado. Cuando no se asocia
ninguna acción al applet, los eventos todavía se accionan pero no se realiza ningunas acciones. Se permite a los comandos
configuration de la acción múltiple dentro de una configuración del applet. Utilice show event manager policy registered el
comando de visualizar una lista de applet registradoes.
Antes de modificar un applet de EEM, tenga en cuenta que el applet existente no se sustituye hasta que salga del modo de
configuración del applet. Cuando se modifica el subprograma en el modo de configuración de subprograma, puede estar en
ejecución el subprograma existente. Es seguro modificar el applet sin desregistrarlo, porque los cambios se escriben a un
archivo temporal. Cuando se sale del modo de configuración del applet, se desregistra el applet antiguo y se registra la nueva
versión.
Identifican a los comandos configuration de la acción dentro de un applet únicamente usando label el argumento, que puede ser
cualquier valor de la cadena. Las acciones se clasifican dentro de un applet en la secuencia clave alfanumérica ascendente
usando label el argumento como el criterio de ordenación, y se ejecutan usando esta secuencia. El mismo label argumento se
puede utilizar en diversos applet; las escrituras de la etiqueta deben ser únicas solamente dentro de un applet.
Embedded Event Manager programa y ejecuta políticas basándose en una especificación de evento incluida en la propia
política. Cuando dan salida al modo de configuración del applet, EEM examina los comandos del evento y de la acción se
ingresan que y registra el applet que se ejecutará cuando ocurre un evento especificado.
Para más detalles sobre la escritura de las directivas EEM usando el Cisco IOS CLI, vea “las directivas integradas escritura del
administrador del evento usando el módulo del Cisco IOS CLI”.
Script EEM
Todos los scripts integrados del administrador del evento se escriben en el Tcl. El Tcl es un lenguaje del comando basado en
string que se interpreta en el tiempo de ejecución. La versión del Tcl soportada es versión 8.3.4 Tcl más el soporte agregado del
script. Los scripts se definen usando un editor ASCII en otro dispositivo, no en el dispositivo de interconexión de redes. El script
después se copia al dispositivo de networking y se registra con EEM. Los scripts tcl se soportan por EEM. Pues una regla
aplicada, las directivas integradas del administrador del evento es las rutinas de servicio efímeras que se deben interpretar y
ejecutar en menos de 20 segundos de tiempo transcurrido. Si más de 20 segundos de tiempo transcurrido se requieren, el
parámetro del maxrun se puede especificar en la declaración del event_register para especificar cualquier valor deseado.
Las directivas EEM utilizan el alcance total de las capacidades de lenguaje Tcl. Sin embargo, Cisco proporciona las mejoras al
lenguaje Tcl bajo la forma de Extensiones del comando Tcl que faciliten la escritura de las directivas EEM. Las categorías
principales de Extensiones del comando Tcl identifican el evento detectado, la acción subsiguiente, la información utilitaria, los
valores de contador, y la información del sistema.
EEM le permite escribir e implementar sus propias políticas usando Tcl. La escritura de un script EEM implica:
• Seleccionando el evento Tcl ordene la extensión que establece los criterios usados para determinar cuando se funciona
con la directiva.
•
Definiendo las opciones del detector de evento asociadas a detectar el evento.
•
Elegir las acciones para implementar la recuperación o para responder al evento detectado.
Categorías de Extensiones de Comando de Tcl de Políticas de EEM
Hay diversas categorías de Extensiones del comando Tcl de la directiva EEM.
Observelas Extensiones del comando Tcl disponibles en cada uno de estas categorías para el uso en todas las directivas EEM
se describen en las secciones posteriores en este documento.
Categoría
Definición
Extensiones del
comando Tcl del
evento EEM
(tres tipos: la
Información del
evento, el registro del
evento, y el evento
publican)
Esta categoría es representada por la familiaxxx del event_register_ de
comandos evento-específicos. Hay una extensión separada del comando Tcl
de la Información del evento en esta categoría también: event_reqinfo. Éste
es el comando usado en las directivas para preguntar el EEM para la
información sobre un evento. Hay también un evento EEM publica la
extensión del comando Tcl event_publish que publica un evento específico a
la aplicación.
Extensiones del
comando Tcl de la
acción EEM
Estas Extensiones del comando Tcl (por ejemplo, action_syslog) son
utilizadas por las directivas para responder a o para recuperarse de un evento
o de un incidente. Además de estas Extensiones, los desarrolladores pueden
utilizar el lenguaje Tcl para implementar cualquier acción deseada.
Extensiones utilitarias Estas Extensiones del comando Tcl se utilizan para extraer, para salvar, para
del comando EEM
fijar, o para modificar la Información de la aplicación, los contadores, o los
Tcl
temporizadores.
Extensiones del
comando Tcl de la
información del
sistema EEM
Esta categoría es representada por sys_reqinfola familiaxxx del _de
comandos sistema-específicos de la información. Estos comandos son
utilizados por una directiva de recopilar la información del sistema.
Extensiones del
comando Tcl del
contexto EEM
Estas Extensiones del comando Tcl se utilizan para salvar y para extraer un
contexto Tcl (las variables visibles y sus valores).
Flujo General de Detección y Recuperación de Eventos EEM
EEM es un marco flexible basado en políticas que soporta el monitoreo in-box de diversos componentes del sistema con la
ayuda de agentes de software denominados detectores de eventos. El cuadro 1 muestra la relación entre el servidor EEM, los
editores del evento de la base (detectores de evento), y los suscriptores del evento (directivas). Básicamente, los editores de
eventos examinan eventos y los publican cuando hay una coincidencia en una especificación de evento proporcionada por el
suscriptor del evento. Los detectores de evento notifican al servidor EEM cuando ocurre un evento de interés.
Cuando se detecta un evento o un incidente, el administrador del evento integrado determina de los editores del evento — un
ejemplo sería el editor de los eventos OIR en el cuadro 1 — si ha ocurrido un registro para el incidente o el evento encontrado.
EEM hace juego la información de registro con los datos de evento sí mismo del evento. Una directiva se registra para el evento
detectado con el _de la extensión del comando event_registerTclxxx. La extensión del comando Tcl de la Información del
evento event_reqinfo se utiliza en la directiva para preguntar al administrador del evento integrado para la información
sobre el evento detectado.
Figura 1 Detectores de Eventos Incrustados del Núcleo del Administrador de Eventos
Seguro-TCL
El Seguro-TCL es un mecanismo de seguridad que permite que el Scripts TCL untrusted se ejecute en un intérprete que fue
creado en el modo seguro. El intérprete seguro tiene un conjunto de comandos restricto que evita el acceder de algunos
recursos del sistema y el dañar del host y de otras aplicaciones. Por ejemplo, no permite los comandos de acceder los
directorios de Cisco IOS File System críticos.
Los scripts definidos por Cisco funcionan con por completo… el modo, pero los scripts definidos por el usario se ejecutan en el
modo Seguro-TCL. El Seguro-TCL permite que Cisco inhabilite o que personalice los comandos individuales Tcl. Para más
detalles sobre los comandos Tcl, vaya a http://www.tcl.tk/man/.
La lista siguiente de comandos Tcl se restringe con algunas excepciones. Las restricciones se observan contra cada comando o
palabra clave del comando:
•
cd — El directorio del cambio no se permite a uno de los nombres de directorio Cisco restrictos.
• encoding — Se permiten encoding nameslos comandos encoding convertfrom, encoding convertto y. encoding
system El comando sin los argumentos se permite, pero encoding system el comando con ?encoding? la palabra clave
no se permite.
•
exec — No permitido.
•
fconfigure — Permitido.
•
file — Se permiten los siguientes:
file dirname file exists file extension file isdirectory file join file pathtype file rootname file split file stat file tail -
•
file — Los siguientes no se permiten:
file atime file attributes file channels file copy file delete file executable file isfile file link file lstat file mkdir file mtime file nativename file normalize file owned file readable file readlink file rename file rootname file separator file size file system file type file volumes file writable -
•
glob — glob El comando no se permite al buscar en uno de los directorios Cisco restrictos. Si no, se permite.
• load — Solamente los archivos que están en el directorio de la política de usuario o el directorio de biblioteca de usuario
se permiten para ser cargados. Los paquetes estáticos (por ejemplo, las bibliotecas que consisten en el código del C) no se
permiten para ser cargados con load el comando.
•
open — open El comando no se permite para un archivo que esté situado en uno de los directorios Cisco restrictos.
•
pwd — pwd El comando no se permite.
•
socket — socket Se permite el comando.
• source — source El comando se permite para los archivos que están en el directorio de la política de usuario o el
directorio de biblioteca de usuario.
Soporte de Bytecode para EEM 2.4
En el Cisco IOS Release 12.4(20)T, EEM 2,4 introduce el soporte del lenguaje del bytecode (BCL) validando los archivos con la
extensión estándar .tbc del script del bytecode. La versión 8.3.4 Tcl define un BCL e incluye a un compilador que traduzca el
Scripts TCL a BCL. Las Extensiones de archivo de políticas válidas EEM en EEM 2,4 para el usuario y políticas del sistema son
.tcl (archivos de texto Tcl) y .tbc (el bytecode Tcl clasifía).
Salvar el Scripts TCL en el bytecode mejora la velocidad de ejecución de la directiva porque se precompila el código, crea los
tamaños más pequeños de la directiva, y obscurece el código de la directiva. La ofuscación hace un poco más difícil modificar
los scripts y oculta la lógica para preservar los derechos de propiedad intelectual.
El soporte para el bytecode se está agregando para proporcionar otra opción para la versión del código soportado y confiado
en. Recomendamos que usted se ejecuta solamente entendido bien, o confiado en y software admitido en los dispositivos de
red. Para generar el bytecode Tcl para el soporte IOS EEM, utilice las versiones 1,4 o 1,5 de TclPro.
Para traducir un script Tcl al bytecode usted puede utilizar el procomp, el compilador de TclPro de la parte de libremente, o el
equipo del desarrollo Tcl del estado activo. Cuando un script Tcl se compila usando el procomp, el código es revuelto y se
genera un archivo .tbc. Los archivos del bytecode son independientes de la plataforma y se pueden generar en cualquier
sistema operativo en el cual TclPro esté disponible, incluyendo Windows, Linux, y UNIX. Procomp es parte de TclPro y
disponible desde http://www.tcl.tk/software/tclpro.
Sustitución del Registro
Además de la substitución regular Tcl, EEM 2,3 (en los Cisco IOS Releases 12.2(33)SXH y 12.2(33)SB, y posterior las
versiones) permite la substitución de un parámetro individual en una línea de declaración del registro del evento EEM con una
variable de entorno.
EEM 2,4 en el Cisco IOS Release 12.4(20)T introduce la capacidad de substituir los parámetros múltiples en las líneas de
declaración del registro del evento por una sola variable de entorno.
Observesolamente la substitución de parámetro múltiple de los primeros soportes de la variable de entorno. Los parámetros
individuales se pueden todavía especificar con las variables de entorno adicionales después de la variable inicial.
Para ilustrar la substitución, una sola variable de entorno, $_eem_syslog_statement se configura como:
::cisco::eem::event_register_syslog pattern COUNT
Usando la substitución del registro, la variable de entorno $_eem_syslog_statement se utiliza en la política de usuario siguiente
EEM:
$_eem_syslog_statement occurs $_eem_occurs_val
action_syslog "this is test 3"
Las variables de entorno deben ser definidas antes de que una directiva usando ellas se registre. Para definir la variable de
entorno $_eem_syslog_statement:
Router(config)# event manager environment eem_syslog_statement
::cisco::eem::event_register_syslog pattern COUNT
Router(config)# event manager environment eem_occurs_val 2
Convenciones para la Asignación de Nombres de Archivo de Cisco para EEM
Todos los nombres de la directiva del administrador del evento, archivos de la admite una política (por ejemplo, los archivos de
plantilla del email), y nombres de fichero integrados de la biblioteca son constantes con la convención para nombres del archivo
de Cisco. A este respecto, los nombres de fichero integrados de la directiva del administrador del evento se adhieren a la
especificación siguiente:
• Un prefijo opcional - Obligatorio. , indica, si está presente, que ésta es una política del sistema que se debe registrar
automáticamente en el momento del boot si aún no se ha registrado. Por ejemplo: Mandatory.sl_text.tcl.
• Una parte del cuerpo del nombre de fichero que contiene una abreviatura del dos-carácter (véase el cuadro 2) para el
primer evento especificado; una pieza del caracter de subrayado; y una pieza descriptiva del campo que identifica más lejos
la directiva.
•
Una parte del sufijo del nombre de archivo definida como .tcl.
Los archivos de plantilla integrados del email del administrador del evento consisten en un prefijo del nombre de fichero del
email_template, seguido por una abreviatura que identifique el uso de la plantilla del email.
Los nombres de fichero integrados de la biblioteca del administrador del evento consisten en una parte del cuerpo del nombre
de fichero que contiene el campo descriptivo que identifica el uso de la biblioteca, seguido por el _lib, y una pieza del sufijo del
nombre de fichero definida como .tcl.
ap
event_register_appl
cl
event_register_cli
ct
event_register_counter
vaya
event_register_gold
si
event_register_interface
io
event_register_ioswdsysmon
la
event_register_ipsla
N-F
event_register_nf
no
event_register_none
oi
event_register_oir
banda
event_register_process
rf
event_register_rf
rs
event_register_resource
rt
el event_register_routing
rp
event_register_rpc
sl
event_register_syslog
sn
event_register_snmp
st
event_register_snmp_notification
tan
event_register_snmp_object
tm
event_register_timer
tr
event_register_track
ts
event_register_timer_subscriber
wd
event_register_wdsysmon
Cómo Escribir Políticas de Embedded Event Manager Usando Tcl
Esta sección contiene las siguientes tareas:
•
Registro y Definición de un Script EEM Tcl
•
Visualización de Políticas Registradas EEM
•
Cancelación del Registro de las Políticas EEM
•
Suspensión de la Ejecución de Políticas EEM
•
Administración de Políticas de EEM
•
Modificación del Tamaño de Tabla de Historial y Visualización de Datos de Historial de EEM
•
Visualización de la Métrica de la Confiabilidad del Proceso de Modularidad de Software mediante EEM
•
Modificación de las Políticas de EEM de Ejemplo
•
Programación de Políticas EMM con Tcl
•
Creación de un Índice de la Biblioteca Tcl de Usuario de EEM
•
Creación de un Índice de Paquete Tcl de Usuario EEM
Registro y Definición de un Script EEM Tcl
Realice esta tarea de configurar las variables de entorno y de registrar una directiva EEM. EEM programa y ejecuta políticas
basadas en la especificación de un evento incluida en la propia política. Cuando se registra una directiva EEM, el software
examina la directiva y la registra que se ejecutará cuando ocurre el evento especificado.
Prerrequisitos
Usted debe tener una directiva disponible que se escriba en el lenguaje de secuencia de comandos de TCL. Se proporcionan
las directivas de la muestra — vea los detalles en “la sección de las directivas de la muestra EEM” para ver qué directivas están
disponibles para la imagen del Cisco IOS Release que usted está utilizando — y estas directivas de la muestra están salvadas
en el directorio de la política del sistema.
PASOS SUMARIOS
1. enable
2. show event manager environment [all | variable-name]
3. configure terminal
4. event manager environment variable-name string
5. Relance el paso 4 para configurar todas las variables de entorno requeridas por la directiva para ser registrado en el
paso 6.
6. event manager policy policy-filename [type{system | user}] []trap
7. exit
PASOS DETALLADOS
Comando o acción
Paso enable
1
Propósito
Habilita el modo EXEC privilegiado.
• Ingrese su contraseña si se le pide
que lo haga.
Example:
Router> enable
Paso show event manager environment [ (Opcional) Muestra el nombre y el valor de
all | variable-name]
2
las variables de entorno de EEM.
• La palabra clave optativa all visualiza
todas las variables de entorno EEM.
Example:
Router# show event manager
environment all
• El argumento optativo variable-name
visualiza la información sobre la variable
de entorno especificada.
Paso configure terminal
3
Ingresa en el modo de configuración global.
Paso event manager environment
variable-name string
4
Configura el valor de la variable de entorno
EEM especificada.
Example:
Router# configure terminal
• En este ejemplo, el software asigna
una variable de entorno del temporizador
CRON que se fijará al segundo minuto
de cada hora de cada día.
Example:
Router(config)# event manager
environment _cron_entry 0-59/2
0-23/1 * * 0-6
Paso Relance el paso 4 para configurar todas —
5
las variables de entorno requeridas por
la directiva para ser registrado en el
paso 6.
Paso event manager policy policyfilename [type {system | user}]
6
[trap]
Example:
Router(config)# event manager
policy tm_cli_cmd.tcl type
system
Registra la política de EEM que se ejecutará
cuando ocurra el evento especificado
definido dentro de la política.
• Utilice system la palabra clave para
registrar una política del sistema definida
por Cisco.
• Utilice user la palabra clave para
registrar una política del sistema definida
por el usario.
• Utilice trap la palabra clave para
generar un SNMP trap cuando se
acciona la directiva.
• En este ejemplo, la muestra EEM
tm_cli_cmd.tcl nombrado directiva se
registra como política del sistema.
Paso exit
7
Example:
Router(config)# exit
Salidas modo de configuración global y
devoluciones al modo EXEC privilegiado.
Ejemplos
En el siguiente ejemplo, utilizan al comando privileged exec del entorno del administrador del evento de la demostración de
visualizar el nombre y el valor de todas las variables de entorno EEM.
Router# show event manager environment all
No.
Name
Value
1
_cron_entry
0-59/2 0-23/1 * * 0-6
2
_show_cmd
show ver
3
_syslog_pattern
.*UPDOWN.*Ethernet1/0.*
4
_config_cmd1
interface Ethernet1/0
5
_config_cmd2
no shut
Visualización de Políticas Registradas EEM
Realice esta tarea optativa de visualizar las directivas registradoas EEM.
PASOS SUMARIOS
1. enable
2. show event manager policy registered []event-typeevent-name [time-ordered | name-ordered] []detailed policyfilename
PASOS DETALLADOS
Paso 1 enable
Habilita el modo EXEC privilegiado. Ingrese su contraseña si se le pide que lo haga.
Router> enable
[]del paso show event manager policy registered 2event-type event-name[time-ordered | name-ordered] []detailed
policy-filename
Utilice este comando con time-ordered la palabra clave al mostrar información sobre las directivas actualmente registradoas
clasificadas por el tiempo, por ejemplo:
Router# show event manager policy registered time-ordered
No.
Type
Event Type
Trap
Time Registered
Name
1
system
timer cron
Off
Wed May11
tm_cli_cmd.tcl
01:43:18 2005
name {crontimer2} cron entry {0-59/1 0-23/1 * * 0-7}
nice 0 priority normal maxrun 240
2
system
syslog
Off
Wed May11
01:43:28 2005
sl_intf_down.tcl
01:43:38 2005
pr_cdp_abort.tcl
occurs 1 pattern {.*UPDOWN.*Ethernet1/0.*}
nice 0 priority normal maxrun 90
3
system
proc abort
Off
Wed May11
instance 1 path {cdp2.iosproc}
nice 0 priority normal maxrun 20
Utilice este comando con name-ordered la palabra clave al mostrar información sobre las directivas actualmente registradoas
clasificadas por nombre, por ejemplo:
Router# show event manager policy registered name-ordered
No.
Type
Event Type
Trap
Time Registered
Name
1
system
proc abort
Off
Wed May11
01:43:38 2005
pr_cdp_abort.tcl
Off
Wed May11
01:43:28 2005
sl_intf_down.tcl
01:43:18 2005
tm_cli_cmd.tcl
instance 1 path {cdp2.iosproc}
nice 0 priority normal maxrun 20
2
system
syslog
occurs 1 pattern {.*UPDOWN.*Ethernet1/0.*}
nice 0 priority normal maxrun 90
3
system
timer cron
Off
Wed May11
name {crontimer2} cron entry {0-59/1 0-23/1 * * 0-7}
nice 0 priority normal maxrun 240
Utilice este comando con event-type la palabra clave al mostrar información sobre las directivas actualmente registradoas para
el tipo de evento especificado en event-name el argumento, por ejemplo:
Router# show event manager policy registered event-type syslog
No.
Type
Event Type
Time Registered
Name
1
system
syslog
Wed May11
sl_intf_down.tcl
01:43:28 2005
occurs 1 pattern {.*UPDOWN.*Ethernet1/0.*}
nice 0 priority normal maxrun 90
Cancelación del Registro de las Políticas EEM
Realice esta tarea para remover una política de EEM del archivo de configuración en ejecución. La ejecución de la política se
cancela.
PASOS SUMARIOS
1. enable
2. show event manager policy registered []event-typeevent-name [system | user] [time-ordered | name-ordered] []
detailed policy-filename
3. configure terminal
4. ningún event manager policy policy-filename
5. exit
6. Relance el paso 2 para asegurarse de que se ha quitado la directiva.
PASOS DETALLADOS
Comando o acción
Paso enable
1
Example:
Router> enable
Propósito
Habilita el modo EXEC privilegiado.
• Ingrese su contraseña si se le
pide que lo haga.
Paso show event manager policy registered (Opcional) Muestra las políticas EEM
[event-type event-name] [system |
2
que están registradas actualmente.
user] [time-ordered | name-ordered]
[detailed policy-filename]
•
El opcional system o user la
palabra clave visualiza el sistema o
las políticas de usuario registrado.
Example:
Router# show event manager policy
registered
• Si no se especifica ninguna
palabra clave, las políticas
registradas EEM para todos los
tipos de evento se muestran por
orden de hora.
Paso configure terminal
3
Ingresa en el modo de configuración
global.
Paso no event manager policy policyfilename
4
Remueve la política EEM de la
configuración, haciendo que no se
registre la política.
Example:
Router# configure terminal
Example:
Router(config)# no event manager
policy pr_cdp_abort.tcl
• En este ejemplo, no la forma
del comando se utiliza para
desregistrar una directiva
especificada.
Paso exit
5
Salidas modo de configuración global
y devoluciones al modo EXEC
privilegiado.
Example:
Router(config)# exit
Paso Relance el paso 2 para asegurarse de que se —
6
ha quitado la directiva.
Example:
Router# show event manager policy
registered
Ejemplos
En el siguiente ejemplo, utilizan al comando privileged exec registrado directiva del administrador del evento de la
demostración de visualizar las tres directivas EEM que se registran actualmente:
Router# show event manager policy registered
No.
Type
Event Type
Trap
Time Registered
1
system
timer cron
Off
Tue Oct11
Name
01:43:18 2005 tm_cli_cmd.tcl
name {crontimer2} cron entry {0-59/1 0-23/1 * * 0-7}
nice 0 priority normal maxrun 240.000
2
system
syslog
Off
Tue Oct11
01:43:28 2005 sl_intf_down.tcl
occurs 1 pattern {.*UPDOWN.*Ethernet1/0.*}
nice 0 priority normal maxrun 90.000
3
system
proc abort
Off
Tue Oct11
01:43:38 2005 pr_cdp_abort.tcl
instance 1 path {cdp2.iosproc}
nice 0 priority normal maxrun 20.000
Después de que se visualicen las Políticas actuales, se decide para borrar la directiva pr_cdp_abort.tcl usando la forma no del
comando policy del eventmanager:
Router# configure terminal
Router(config)# no event manager policy pr_cdp_abort.tcl
Router(config)# exit
Ingresan al comando privileged exec registrado directiva del administrador del evento de la demostración otra vez de
visualizar las directivas EEM que se registran actualmente. La directiva pr_cdp_abort.tcl se registra no más.
Router# show event manager policy registered
No.
Type
Event Type
Trap
Time Registered
1
system
timer cron
Off
Tue Oct11
Name
01:45:17 2005 tm_cli_cmd.tcl
name {crontimer2} cron entry {0-59/1 0-23/1 * * 0-7}
nice 0 priority normal maxrun 240.000
2
system
syslog
Off
Tue Oct11
01:45:27 2005 sl_intf_down.tcl
occurs 1 pattern {.*UPDOWN.*Ethernet1/0.*}
nice 0 priority normal maxrun 90.000
Suspensión de la Ejecución de Políticas EEM
Realiza esta tarea para suspender inmediatamente la ejecución de todas las políticas EEM. Suspender las directivas, en vez de
desregistrarlas, pudo ser necesario por razones del funcionamiento o la Seguridad temporal.
PASOS SUMARIOS
1. enable
2. show event manager policy registered[]event-typeevent-name [system | user] [time-ordered | name-ordered] []
detailed policy-filename
3. configure terminal
4. event manager scheduler suspend
5. exit
PASOS DETALLADOS
Comando o acción
Paso enable
1
Example:
Router> enable
Propósito
Habilita el modo EXEC privilegiado.
• Ingrese su contraseña si se le
pide que lo haga.
Paso show event manager policy registered (Opcional) Muestra las políticas EEM
[event-type event-name] [system |
2
que están registradas actualmente.
user] [time-ordered | name-ordered]
[detailed policy-filename]
Example:
Router# show event manager policy
registered
• El opcional system o user la
palabra clave visualiza el sistema o
las políticas de usuario registrado.
• Si no se especifica ninguna
palabra clave, las políticas
registradas EEM para todos los
tipos de evento se muestran por
orden de hora.
Paso configure terminal
3
Ingresa en el modo de configuración
global.
Paso event manager scheduler suspend
4
Suspende inmediatamente la
ejecución de todas las políticas de
EEM.
Paso exit
5
Salidas modo de configuración global
y devoluciones al modo EXEC
privilegiado.
Example:
Router# configure terminal
Example:
Router(config)# event manager
scheduler suspend
Example:
Router(config)# exit
Ejemplos
En el siguiente ejemplo, utilizan al comando privileged exec registrado directiva del administrador del evento de la
demostración de visualizar todas las directivas registradoas EEM:
Router# show event manager policy registered
No.
Type
Event Type
Trap
Time Registered
Name
1
system
timer cron
Off
Sat Oct11
tm_cli_cmd.tcl
01:43:18 2003
name {crontimer2} cron entry {0-59/1 0-23/1 * * 0-7}
nice 0 priority normal maxrun 240.000
2
system
syslog
Off
Sat Oct11
01:43:28 2003
sl_intf_down.tcl
01:43:38 2003
pr_cdp_abort.tcl
occurs 1 pattern {.*UPDOWN.*Ethernet1/0.*}
nice 0 priority normal maxrun 90.000
3
system
proc abort
Off
Sat Oct11
instance 1 path {cdp2.iosproc}
nice 0 priority normal maxrun 20.000
Ingresan al comando suspend del planificador de trabajos del administrador del evento de suspender inmediatamente la
ejecución de todas las directivas EEM:
Router# configure terminal
Router(config)# event manager scheduler suspend
*Nov 2 15:34:39.000: %HA_EM-6-FMS_POLICY_EXEC: fh_io_msg: Policy execution has been
suspended
Administración de Políticas de EEM
Realice esta tarea de especificar un directorio para utilizar para salvar los archivos de biblioteca del usuario o las directivas
definidas por el usario EEM.
Observeesta tarea se aplica solamente a las directivas EEM que se escriben usando el Scripts TCL.
PASOS SUMARIOS
1. enable
2. show event manager directory user[library | policy]
3. configure terminal
4. event manager directory user {library path | policy path}
5. exit
PASOS DETALLADOS
Comando o acción
Paso enable
1
Example:
Router> enable
Propósito
Habilita el modo EXEC privilegiado.
• Ingrese su contraseña si se le pide
que lo haga.
Paso show event manager directory
user [library | policy]
2
Example:
Router# show event manager
directory user library
(Opcional) visualiza el directorio para utilizar
para salvar la biblioteca o los archivos de
políticas de usuario EEM.
• La palabra clave optativa library
visualiza el directorio para utilizar para
los archivos de biblioteca del usuario.
• La palabra clave optativa policy
visualiza el directorio para utilizar para
las directivas definidas por el usario
EEM.
Paso configure terminal
3
Ingresa en el modo de configuración global.
Paso event manager directory user {
library path | policy path}
4
Especifica un directorio que se utilizará para
almacenar archivos de biblioteca de usuario
o políticas de EEM definidas por el usuario.
Example:
Router# configure terminal
Example:
Router(config)# event manager
directory user library
disk0:/usr/lib/tcl
Paso exit
5
Example:
Router(config)# exit
• Utilice path el argumento para
especificar el nombre de acceso absoluto
al directorio de usuario.
Salidas modo de configuración global y
devoluciones al modo EXEC privilegiado.
Ejemplos
En el siguiente ejemplo, utilizan al comando privileged exec del usuario del directorio del administrador del evento de la
demostración de visualizar el directorio, si existe, para utilizar para salvar los archivos de biblioteca del usuario EEM:
Router# show event manager directory user library
disk0:/usr/lib/tcl
Modificación del Tamaño de Tabla de Historial y Visualización de Datos de Historial de EEM
Realice esta tarea opcional para cambiar el tamaño de las tablas del historial y para mostrar los datos del historial EEM.
PASOS SUMARIOS
1. enable
2. configure terminal
3. event manager history size {events | traps} []size
4. exit
5. show event manager history events []detailed del []maximumnumber
6. show event manager history traps {server | policy}
PASOS DETALLADOS
Paso 1 enable
Habilita el modo EXEC privilegiado. Ingrese su contraseña si se le pide que lo haga.
Router> enable
Paso 2 configure terminal
Ingresa en el modo de configuración global.
Router# configure terminal
Paso 3 event manager history size {events | traps} []size
Utilice este comando para cambiar el tamaño de tabla del historial de eventos de EEM o el tamaños de la tabla del historial de
trampas SNMP de EEM. En el siguiente ejemplo, el tamaño de la tabla del historial de eventos de EEM se cambia a 30
entradas:
Router(config)# event manager history size events 30
Paso 4 exit
Salidas modo de configuración global y devoluciones al modo EXEC privilegiado.
Router(config)# exit
[]del [] show event manager history events del pasodetailed 5maximum number
Utilice este comando al mostrar información sobre cada evento EEM se ha accionado que.
Router# show event manager history events
No.
Time of Event
Event Type
Name
1
Fri Sep
9 13:48:40 2005
syslog
applet: one
2
Fri Sep
9 13:48:40 2005
syslog
applet: two
3
Fri Sep
9 13:48:40 2005
syslog
applet: three
4
Fri Sep
9 13:50:00 2005
timer cron
script: tm_cli_cmd.tcl
5
Fri Sep
9 13:51:00 2005
timer cron
script: tm_cli_cmd.tcl
Paso 6 show event manager history traps [server | policy]
Utilice este comando para visualizar las trampas SNMP de EEM enviadas desde el servidor EEM o desde una política de EEM.
Router# show event manager history traps
No.
Time
1
Fri Sep
2
Fri Sep
Trap Type
Name
9 13:48:40 2005
server
applet: four
9 13:57:03 2005
policy
script: no_snmp_test.tcl
Visualización de la Métrica de la Confiabilidad del Proceso de Modularidad de Software mediante EEM
Realice esta tarea optativa de visualizar la métrica de la confiabilidad para los procesos de la modularidad del Cisco IOS
Software. show event manager metric processes El comando fue introducido en las versiones del Cisco IOS Release
12.2(18)SXF4 y Posterior y se soporta solamente en las imágenes de la modularidad del software.
PASOS SUMARIOS
1. enable
2. show event manager metric processes {all | process-name}
PASOS DETALLADOS
Paso 1 enable
Habilita el modo EXEC privilegiado. Ingrese su contraseña si se le pide que lo haga.
Router> enable
Paso 2 show event manager metric process {all | process-name}
Utilice este comando de visualizar los datos métricos de la confiabilidad para los procesos. El sistema guarda un expediente de
cuando los procesos comienzan y terminan, y estos datos se utilizan como la base para el análisis de confiabilidad. En este
ejemplo parcial, las primeras y más recientes entradas que muestran los datos métricos para los procesos en todos los
indicadores luminosos LED amarillo de la placa muestra gravedad menor insertados en el sistema se visualizan.
Router# show event manager metric process all
=====================================
process name: devc-pty, instance: 1
sub_system id: 0, version: 00.00.0000
-------------------------------last event type: process start
recent start time: Fri Oct10
20:34:40 2005
recent normal end time: n/a
recent abnormal end time: n/a
number of times started: 1
number of times ended normally: 0
number of times ended abnormally: 0
most recent 10 process start times:
-------------------------Fri Oct10
20:34:40 2005
--------------------------
most recent 10 process end times and types:
cumulative process available time: 6 hours 30 minutes 7 seconds 378 milliseconds
cumulative process unavailable time: 0 hours 0 minutes 0 seconds 0 milliseconds
process availability:
0.100000000
number of abnormal ends within the past 60 minutes (since reload): 0
number of abnormal ends within the past 24 hours (since reload): 0
number of abnormal ends within the past 30 days (since reload): 0
.
.
.
=====================================
process name: cdp2.iosproc, instance: 1
sub_system id: 0, version: 00.00.0000
--------------------------------
last event type: process start
recent start time: Fri Oct10
20:35:02 2005
recent normal end time: n/a
recent abnormal end time: n/a
number of times started: 1
number of times ended normally: 0
number of times ended abnormally: 0
most recent 10 process start times:
-------------------------Fri Oct10
20:35:02 2005
--------------------------
most recent 10 process end times and types:
cumulative process available time: 6 hours 29 minutes 45 seconds 506 milliseconds
cumulative process unavailable time: 0 hours 0 minutes 0 seconds 0 milliseconds
process availability:
0.100000000
number of abnormal ends within the past 60 minutes (since reload): 0
number of abnormal ends within the past 24 hours (since reload): 0
number of abnormal ends within the past 30 days (since reload): 0
Consejos de Troubleshooting
Utilice el comando debug event manager en modo EXEC privilegiado para resolver problemas de operaciones de comandos
de EEM. Utilice los comandos de debugging con precaución, ya que el volumen de la salida generada puede ralentizar o
detener las operaciones del router. Recomendamos utilizar este comando solamente bajo supervisión de un ingeniero de Cisco.
Modificación de las Políticas de EEM de Ejemplo
Realice esta tarea de modificar una de las directivas de la muestra. El Cisco IOS Software contiene algunas directivas de la
muestra en las imágenes que contienen al administrador del evento integrado. Los desarrolladores de las directivas EEM
pueden modificar estas directivas personalizando el evento para el cual la directiva debe ser funcionada con y las opciones ser
asociada al registro y a la respuesta al evento. Además, los desarrolladores pueden seleccionar las acciones para ser
implementado cuando la directiva se ejecuta.
Directivas de la muestra EEM
Cisco incluye un conjunto de las directivas de la muestra mostradas en el cuadro 3. Usted puede copiar las directivas de la
muestra a un directorio de usuario y después modificar las directivas, o usted puede escribir sus propias directivas. El Tcl es
actualmente el único lenguaje de la secuenciación de comandos soportado por Cisco para la creación de la directiva. Las
directivas Tcl se pueden modificar usando un editor de textos tal como Emacs. Las directivas deben ejecutar dentro de un
número definido de segundos del tiempo transcurrido, y la variable de tiempo se puede configurar dentro de una directiva. El
valor por defecto es actualmente 20 segundos.
El cuadro 3 describe las directivas de la muestra EEM.
Nombre de la
directiva
Descripción
pr_cdp_abort.tcl
Insertado en las Imágenes de la Modularidad de Software de Cisco IOS
Release 12.2(18)SXF4. Esta directiva monitorea para los eventos del aborto
del proceso cdp2.iosproc. Registrará un mensaje en SYSLOG y enviará un
correo electrónico con los detalles de la cancelación.
pr_crash_reporter.tcl
Insertado en las Imágenes de la Modularidad de Software de Cisco IOS
Release 12.2(18)SXF4. Esta directiva monitorea para todos los eventos de
proceso del aborto. Cuando ocurre un evento, la directiva enviará la
información del desperfecto, incluyendo el archivo del crashdump, al URL
especificado donde una secuencia de comandos CGI procesa los datos.
pr_iprouting_abort.tcl Insertado en las Imágenes de la Modularidad de Software de Cisco IOS
Release 12.2(18)SXF4. Esta directiva monitorea para los eventos del aborto
del proceso iprouting.iosproc. Registrará un mensaje en SYSLOG y enviará
un correo electrónico con los detalles de la cancelación.
sl_intf_down.tcl
Esta directiva se ejecuta cuando se registra un mensaje de Syslog
configurable. Ejecutará un comando de CLI configurable y enviará los
resultados por correo electrónico.
tm_cli_cmd.tcl
Esta directiva se ejecuta usando una entrada configurable CRON. Ejecutará
un comando de CLI configurable y enviará los resultados por correo
electrónico.
tm_crash_history.tcl
Insertado en las Imágenes de la Modularidad de Software de Cisco IOS
Release 12.2(18)SXF4. Esta directiva se ejecuta en la medianoche cada día y
los email un informe de proceso del historial de la caída a una dirección de
correo electrónico especificada.
tm_crash_reporter.tcl Introducido en el Cisco IOS Release 12.4(2)T. Esta directiva se ejecuta
5 segundos después de que se registra. Si la directiva se guarda en la
configuración, también se ejecutará cada vez que recargan al router. La
directiva indicará por la razón de la recarga. Si la recarga era debido a una
caída, la directiva buscará para el último archivo CRASHINFO y enviará esta
información a una ubicación del URL especificado.
tm_fsys_usage.tcl
Insertado en las Imágenes de la Modularidad de Software de Cisco IOS
Release 12.2(18)SXF4. Esta política se ejecuta utilizando una entrada CRON
configurable y monitorea el uso del espacio en disco. Un mensaje de Syslog
será visualizado si el uso del espacio en disco cruza los umbrales
configurables.
wd_mem_reporter.tcl Insertado en las Imágenes de la Modularidad de Software de Cisco IOS
Release 12.2(18)SXF4. Esta directiva señala sobre las condiciones de la
memoria del sistema baja cuando la cantidad de memoria de las caídas
disponibles debajo del 20 por ciento de la memoria de sistema disponible
inicial. Un mensaje de Syslog será visualizado y, opcionalmente, un email
será enviado.
Para más detalles sobre las directivas de la muestra disponibles y cómo ejecutarlas, vea “la versión parcial de programa del
detector de evento EEM: Sección Ejemplos".
PASOS SUMARIOS
1. enable
2. show event manager policy available detailed policy-filename
3. Corte y pegar el contenido de la directiva de la muestra visualizada en la pantalla a un editor de textos.
4. Edite la directiva y sálvela con un nuevo nombre de fichero.
5. Copie el nuevo archivo de nuevo a la memoria de memoria Flash del router.
6. configure terminal
7. event manager directory user {library path | policy path}
8. event manager policy policy-filename [type{system | user}] []trap
PASOS DETALLADOS
Paso 1 enable
Habilita el modo EXEC privilegiado. Ingrese su contraseña si se le pide que lo haga.
Router> enable
Paso 2 show event manager policy available detailed policy-filename
Muestra la política de muestra especificada real, incluyendo los detalles sobre las variables de entorno usadas por la política y
las instrucciones para ejecutar la política. En el Cisco IOS 12.2(18)SXF4, detailed la palabra clave fue introducida para los
show event manager policy available y show event manager policy registered comandos. En las versiones de Cisco IOS
anteriores a la 12.2(18)SXF4, debe copiar uno de los dos scripts Tcl de la sección de ejemplos de configuración de este
documento (vea "Programación de Políticas con Tcl: Sección "Ejemplo de Secuencias de Comandos de Muestra"). En el
siguiente ejemplo, se muestran en la pantalla los detalles de la política tm_cli_cmd.tcl de ejemplo.
Router# show event manager policy available detailed tm_cli_cmd.tcl
Paso 3 Corte y pegar el contenido de la directiva de la muestra visualizada en la pantalla a un editor de textos.
Utilice las funciones de edición y copiado para mover el contenido desde el router hasta un editor de textos en otro dispositivo.
Paso 4 Edite la directiva y sálvela con un nuevo nombre de fichero.
Utilice al editor de textos para modificar la directiva como script Tcl. Para las convenciones para nombres del archivo, vea
“convención para nombres del archivo de Cisco para la sección EEM”.
Paso 5 Copie el nuevo archivo de nuevo a la memoria de memoria Flash del router.
Copie el archivo en el sistema de archivos Flash en el router, normalmente disk0:. Para obtener más detalles sobre la copia de
archivos, vea el capítulo "Uso del Sistema de archivos de Cisco IOS" de la Guía de Configuración de Aspectos Fundamentales
de la Configuración de Cisco IOS.
Paso 6 configure terminal
Ingresa en el modo de configuración global.
Router# configure terminal
Paso 7 event manager directory user {library path | policy path}
Especifica un directorio que se utilizará para almacenar archivos de biblioteca de usuario o políticas de EEM definidas por el
usuario. En el siguiente ejemplo, el directorio user_library en el disk0 se especifica como el directorio para almacenar los
archivos de la biblioteca del usuario.
Router(config)# event manager directory user library disk0:/user_library
Paso 8 event manager policy policy-filename [type{system | user}] []trap
Registra la política de EEM que se ejecutará cuando ocurra el evento especificado definido dentro de la política. En el siguiente
ejemplo, la nueva directiva EEM nombrada test.tcl se registra como directiva definida por el usario.
Router(config)# event manager policy test.tcl type user
Programación de Políticas EMM con Tcl
Realice esta tarea de ayudarle a programar una directiva usando las Extensiones del comando Tcl. Recomendamos que usted
copia una política existente y lo modificamos. Hay dos porciones requeridas que deben existir en una directiva EEM Tcl:
event_register la extensión del comando Tcl y el cuerpo. El resto de las secciones mostradas en “el concepto de la estructura y
de los requisitos de la directiva Tcl” son opcionales.
Estructura y requisitos de la directiva Tcl
Todas las directivas EEM comparten la misma estructura, mostrada en el cuadro 2. Hay dos partes de a la directiva EEM se
requieren que: event_register la extensión del comando Tcl y el cuerpo. Las partes de restantes la directiva son opcionales: la
necesidad del entorno define, importación namespace, estatus de la entrada, y estado de salida.
Cuadro 2 estructura y requisitos de la directiva Tcl
El comienzo de cada directiva debe describir y registrar el evento para detectar usando event_register una extensión del
comando Tcl. Esta parte de la directiva programa el funcionamiento de la directiva. El código Tcl del siguiente ejemplo muestra
cómo registrar event_register_timer la extensión del comando Tcl:
::cisco::eem::event_register_timer cron name crontimer2 cron_entry $_cron_entry maxrun 240
La necesidad del entorno define la sección es opcional e incluye la definición de las variables de entorno. El código Tcl del
siguiente ejemplo muestra cómo marcar para, y definir, algunas variables de entorno.
# Check if all the env variables that we need exist.
# If any of them does not exist, print out an error msg and quit.
if {![info exists _email_server]} {
set result \
"Policy cannot be run: variable _email_server has not been set"
error $result $errorInfo
}
if {![info exists _email_from]} {
set result \
"Policy cannot be run: variable _email_from has not been set"
error $result $errorInfo
}
if {![info exists _email_to]} {
set result \
"Policy cannot be run: variable _email_to has not been set"
error $result $errorInfo
La sección de la importación namespace es opcional y define las bibliotecas de código. El código Tcl del siguiente ejemplo
muestra cómo configurar una sección de la importación namespace.
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
El cuerpo de la directiva es una estructura requerida y pudo contener el siguiente:
•
event_reqinfo La extensión del comando Tcl de la Información del evento que se utiliza para preguntar el EEM para la
información sobre el evento detectado.
• Las Extensiones del comando Tcl de la acción, por ejemplo action_syslog, que se utilizan para especificar las acciones
del específico EEM.
• Las Extensiones del comando Tcl de la información del sistema, por ejemplo sys_reqinfo_routername, que se utilizan
para obtener la información de sistema general.
• Uso de la biblioteca SMTP (para enviar las notificaciones por correo electrónico) o de la biblioteca CLI (para ejecutar los
comandos CLI) de una política.
• Extensiones context_savedel comando context_retrieve y Tcl que se utilizan para salvar las variables Tcl para uso de
otras directivas.
El código Tcl del siguiente ejemplo muestra el código para preguntar un evento y para registrar un mensaje como parte de la
sección del cuerpo.
# Query the event info and log a message.
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
global timer_type timer_time_sec
set timer_type $arr_einfo(timer_type)
set timer_time_sec $arr_einfo(timer_time_sec)
# Log a message.
set msg [format "timer event: timer type %s, time expired %s" \
$timer_type [clock format $timer_time_sec]]
action_syslog priority info msg $msg
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
Estatus de la entrada EEM
La parte del estatus de la entrada una directiva EEM se utiliza para determinar si una directiva anterior se ha funcionado con
para el mismo evento, y para determinar el estado de salida de la directiva anterior. Si se define la variable del _entry_status,
una directiva anterior se ha ejecutado ya para este evento. El valor de la variable del _entry_status determina el código de
retorno de la directiva anterior.
Las designaciones de estado de la entrada pueden utilizar uno de tres valores posibles: 0 (la política anterior se ejecutó
correctamente), Not=0 (la política anterior no se ejecutó correctamente) y Undefined (no se ejecutó ninguna política anterior).
Estado de salida EEM
Cuando una directiva acaba de funcionar con su código, se fija un valor de la salida. El valor de la salida es utilizado por el
administrador del evento integrado para determinar independientemente de si aplicar la acción predeterminada para este
evento, si lo hay. Un valor igual a cero significa no realizar la acción predeterminada. Un valor distinto de cero significa realizar
la acción predeterminada. El estado de salida se pasara a las políticas subsiguientes que se ejecuten para el mismo evento.
Directivas EEM y número de error de Cisco
Algunas extensiones del comando Tcl EEM fijaron una variable global Tcl _cerrno de Número de Error de Cisco. Siempre que
se establece _cerrno, otras cuatro variables globales Tcl se derivan de _cerrno y se establecen con ella (_cerr_sub_num,
_cerr_sub_err, _cerr_posix_err y _cerr_str).
Por ejemplo, action_syslog el comando en el ejemplo abajo fija estas variables globales como efecto secundario de la
ejecución del comando:
action_syslog priority warning msg "A sample message generated by action_syslog"
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
_cerrno: valores devueltos de 32 bits del error
El conjunto del _cerrno por un comando se puede representar como número entero de 32 bits de la forma siguiente:
XYSSSSSSSSSSSSSEEEEEEEEPPPPPPPPP
Por ejemplo, el valor devuelto siguiente del error se pudo volver de una extensión del comando EEM Tcl:
862439AE
Este número se interpreta como el valor de 32 bits siguiente:
10000110001001000011100110101110
Este número entero de 32 bits se divide para arriba en las cinco variables mostradas en el cuadro 4.
Variable
Descripción
XY
La clase de error (indica la gravedad del error). Esta variable corresponde a
los primeros dos bits en el valor devuelto de 32 bits del error; 10 en el caso
arriba, que indica CERR_CLASS_WARNING:
Vea el cuadro 5 para las cuatro codificaciones de la clase de error posible
específicas a esta variable.
SSSSSSSSSSSSSS El número del subsistema que generó la mayoría del error reciente
(13 bits = 8192 valores). Éste es los 13 bits siguientes de la secuencia de 32
bits, y su valor del número entero se contiene en $_cerr_sub_num.
Variable
Descripción
EEEEEEEE
Los valores específicos (8 bits = 256) del número de error del subsistema.
Este segmento es los 8 bits siguientes de la secuencia de 32 bits, y la cadena
correspondiente a este número de error se contiene en $_cerr_sub_err.
PPPPPPPP
El código de error del paso POSIX (9 bits = 512 valores). Esto representa el
último de la secuencia de 32 bits, y la cadena correspondiente a este código
de error se contiene en $_cerr_posix_err.
Codificaciones de la clase de error para XY
El primer variable, XY, se refiere a las codificaciones de la clase de error posible mostradas en el cuadro 5.
:
00
CERR_CLASS_SUCCESS
01
CERR_CLASS_INFO
10
CERR_CLASS_WARNING
11
CERR_CLASS_FATAL
Un valor devuelto del error de cero significa el ÉXITO.
PASOS SUMARIOS
1. enable
2. show event manager policy available detailed policy-filename
3. Corte y pegar el contenido de la directiva de la muestra visualizada en la pantalla a un editor de textos.
4. Defina la extensión event_register requerida del comando Tcl.
5. Agregue el namespace apropiado bajo:: jerarquía de Cisco.
6. Programe la necesidad define la sección para marcar para saber si hay cada variable de entorno que se utilice en esta
directiva.
7. Programe el cuerpo del script.
8. Marque el estatus de la entrada para determinar si una directiva se ha ejecutado previamente para este evento.
9. Marque el estado de salida para determinar independientemente de si aplicar la acción predeterminada para este
evento, si existe una acción predeterminada.
10. Fije las variables globales Tcl del número de error de Cisco (_cerrno).
11 Salve el script Tcl con un nuevo nombre de fichero, y copie el script Tcl al router.
12. configure terminal
13. event manager directory user {library path | policy path}
14. event manager policy policy-filename [type {system | user}] []trap
15. Haga la directiva ejecutar, y observe la directiva.
16. Utilice las técnicas de debugging si la directiva no ejecuta correctamente.
PASOS DETALLADOS
Paso 1 enable
Habilita el modo EXEC privilegiado. Ingrese su contraseña si se le pide que lo haga.
Router> enable
Paso 2 show event manager policy available detailed policy-filename
Muestra la política de muestra especificada real, incluyendo los detalles sobre las variables de entorno usadas por la política y
las instrucciones para ejecutar la política. En el Cisco IOS 12.2(18)SXF4, detailed la palabra clave fue introducida para los
show event manager policy available y show event manager policy registered comandos. En las versiones de Cisco IOS
anteriores a la 12.2(18)SXF4, debe copiar uno de los dos scripts Tcl de la sección de ejemplos de configuración de este
documento (vea "Programación de Políticas con Tcl: Sección "Ejemplo de Secuencias de Comandos de Muestra"). En el
siguiente ejemplo, se muestran en la pantalla los detalles de la política tm_cli_cmd.tcl de ejemplo.
Router# show event manager policy available detailed tm_cli_cmd.tcl
Paso 3 Corte y pegar el contenido de la directiva de la muestra visualizada en la pantalla a un editor de textos.
Utilice las funciones de edición y copiado para mover el contenido desde el router hasta un editor de textos en otro dispositivo.
Utilice al editor de textos para editar la directiva como script Tcl.
Paso 4 Defina la extensión event_register requerida del comando Tcl.
Elija la extensión event_register apropiada del comando Tcl del cuadro 6 para el evento que usted quiere detectar, y agreguela
a la directiva.
Extensiones del comando Tcl del registro del evento
event_register_appl
event_register_cli
event_register_counter
event_register_gold
event_register_interface
event_register_ioswdsysmon
event_register_ipsla
event_register_nf
event_register_none
event_register_oir
event_register_process
event_register_resource
event_register_rf
el event_register_routing
event_register_rpc
event_register_snmp
event_register_snmp_notification
event_register_snmp_object
event_register_syslog
event_register_timer
event_register_timer_subscriber
event_register_track
event_register_wdsysmon
Paso 5 Agregue el namespace apropiado bajo:: jerarquía de Cisco.
Los desarrolladores de la directiva pueden utilizar el nuevo namespace:: Cisco en las directivas Tcl para agrupar todas las
Extensiones usadas por el Cisco IOS EEM. Hay dos espacios de nombres bajo:: jerarquía de Cisco, y demostraciones del
cuadro 7 que la categoría de extensión del comando EEM Tcl pertenece bajo cada namespace.
Namespace
Categoría de comando Extension Tcl
:: Cisco:: eem
Registro del evento EEM
Información del evento EEM
El evento EEM publica
Acción EEM
Utilidad EEM
Biblioteca del contexto EEM
Información del sistema EEM
Biblioteca CLI
:: Cisco:: liberación
Biblioteca S TP
La nota aseegura que usted importa los espacios de nombres apropiados o utiliza el comando names calificado al
usar los comandos antedichos.
Paso 6 Programe la necesidad define la sección para marcar para saber si hay cada variable de entorno que se utilice
en esta directiva.
Esto es un paso opcional. La necesidad define es una sección de la directiva que las pruebas si algunas variables de entorno
EEM que sean requeridas por la directiva están definidas antes de que se tomen las acciones de recuperación. La necesidad
define la sección no se requiere si la directiva no utiliza ninguna variables de entorno EEM. Las variables de entorno EEM para
los scripts EEM son las variables globales Tcl que son externo definido a la directiva antes de que se funcione con la directiva.
Para definir una variable de entorno EEM, utilice el comando CLI integrado del entorno del administrador del evento del
comando configuration del administrador del evento. Por el convenio todas las variables de entorno de Cisco EEM comienzan
con el “_” (un caracter de subrayado). Para evitar conflictos futuros, se ruega a los clientes que no definan nuevas variables que
comiencen por "_".
Nota usted puede visualizar las variables de entorno integradas del administrador del evento fijadas en su sistema
usando show event manager environment el comando privileged exec.
Por ejemplo, las variables de entorno integradas del administrador del evento definidas por las directivas de la muestra incluyen
las variables del email. Las directivas de la muestra que envían el email deben tener las variables mostradas en el conjunto del
cuadro 8 para funcionar correctamente.
El cuadro 8 describe las variables de entorno e-correo-específicas usadas en las directivas de la muestra EEM.
Variable de
Entorno
_email_server
Descripción
Ejemplo:
Servidor de correo con Simple Mail
Transfer Protocol (SMTP) utilizado
para enviar correo electrónico.
El email Nombre del servidor puede estar
en de los formatos siguientes de la
plantilla:
• nombre de usuario:
password@host
•
username@host
•
host
_email_to
La dirección a la que se envía el correo [email protected]
electrónico.
_email_from
La dirección desde la que se envía el
correo electrónico.
[email protected]
_email_cc
El direccionamiento al cual el email
debe ser copiado.
[email protected]
El siguiente ejemplo de una necesidad define las demostraciones de la sección cómo programar una comprobación para las
variables de entorno e-correo-específicas.
El ejemplo del ejemplo 1 de la necesidad define
if {![info exists _email_server]} {
set result \
"Policy cannot be run: variable _email_server has not been set"
error $result $errorInfo
}
if {![info exists _email_from]} {
set result \
"Policy cannot be run: variable _email_from has not been set"
error $result $errorInfo
}
if {![info exists _email_to]} {
set result \
"Policy cannot be run: variable _email_to has not been set"
error $result $errorInfo
}
if {![info exists _email_cc]} {
set result \
"Policy cannot be run: variable _email_cc has not been set"
error $result $errorInfo
}
Paso 7 Programe el cuerpo del script.
En esta sección del script, usted puede definir el siguiente un de los:
•
event_reqinfo La extensión del comando Tcl de la Información del evento que se utiliza para preguntar el EEM para la
información sobre el evento detectado.
• Las Extensiones del comando Tcl de la acción, por ejemplo action_syslog, que se utilizan para especificar las acciones
del específico EEM.
• Las Extensiones del comando Tcl de la información del sistema, por ejemplo sys_reqinfo_routername, que se utilizan
para obtener la información de sistema general.
• Extensiones context_save del comando context_retrieve y Tcl que se utilizan para salvar las variables Tcl para uso de
otras directivas.
• Uso de la biblioteca SMTP (para enviar las notificaciones por correo electrónico) o de la biblioteca CLI (para ejecutar los
comandos CLI) de una política.
Paso 8 Marque el estatus de la entrada para determinar si una directiva se ha ejecutado previamente para este evento.
Si la directiva anterior es acertada, la Política actual puede o no puede requerir la ejecución. Las designaciones de estado de la
entrada pueden utilizar uno de tres valores posibles: 0 (la política anterior se ejecutó correctamente), Not=0 (la política anterior
no se ejecutó correctamente) y Undefined (no se ejecutó ninguna política anterior).
Paso 9 Marque el estado de salida para determinar independientemente de si aplicar la acción predeterminada para
este evento, si existe una acción predeterminada.
Un valor igual a cero significa no realizar la acción predeterminada. Un valor distinto de cero significa realizar la acción
predeterminada. El estado de salida se pasara a las políticas subsiguientes que se ejecuten para el mismo evento.
Paso 10 Fije las variables globales Tcl del número de error de Cisco (_cerrno).
Algunas extensiones del comando Tcl EEM fijaron una variable global Tcl _cerrno de Número de Error de Cisco. Siempre que
se establece _cerrno, otras cuatro variables globales Tcl se derivan de _cerrno y se establecen con ella (_cerr_sub_num,
_cerr_sub_err, _cerr_posix_err y _cerr_str).
Por ejemplo, action_syslog el comando en el ejemplo abajo fija estas variables globales como efecto secundario de la
ejecución del comando:
action_syslog priority warning msg "A sample message generated by action_syslog
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
Paso 11 Salve el script Tcl con un nuevo nombre de fichero, y copie el script Tcl al router.
Los nombres de fichero integrados de la directiva del administrador del evento se adhieren a la especificación siguiente:
• Un prefijo opcional - Obligatorio. , indica, si está presente, que ésta es una política del sistema que se debe registrar
automáticamente en el momento del boot si aún no se ha registrado. Por ejemplo: Mandatory.sl_text.tcl.
• Una parte del cuerpo del nombre de fichero que contiene una abreviatura del dos-carácter (véase el cuadro 2) para el
primer evento especificado; una pieza de carácter del caracter de subrayado; y una pieza descriptiva del campo más futuro
identificando la directiva.
•
Una parte del sufijo del nombre de archivo definida como .tcl.
Para más detalles, vea “convención para nombres del archivo de Cisco para la sección EEM”.
Copie el archivo en el sistema de archivos Flash en el router, normalmente disk0:. Para obtener más detalles sobre la copia de
archivos, vea el capítulo "Uso del Sistema de archivos de Cisco IOS" de la Guía de Configuración de Aspectos Fundamentales
de la Configuración de Cisco IOS.
Paso 12 configure terminal
Ingresa en el modo de configuración global.
Router# configure terminal
Paso 13 event manager directory user {library path | policy path}
Especifica un directorio que se utilizará para almacenar archivos de biblioteca de usuario o políticas de EEM definidas por el
usuario. En el siguiente ejemplo, el directorio user_library en el disk0 se especifica como el directorio para almacenar los
archivos de la biblioteca del usuario.
Router(config)# event manager directory user library disk0:/user_library
Paso 14 event manager policy policy-filename [type {system | user}] []trap
Registra la política de EEM que se ejecutará cuando ocurra el evento especificado definido dentro de la política. En el siguiente
ejemplo, la nueva directiva EEM nombrada cl_mytest.tcl se registra como directiva definida por el usario.
Router(config)# event manager policy cl_mytest.tcl type user
Paso 15 Haga la directiva ejecutar, y observe la directiva.
Para probar que la directiva se ejecuta, genere las condiciones que harán la directiva ejecutar y observar que la directiva se
ejecuta como se esperaba.
Paso 16 Utilice las técnicas de debugging si la directiva no ejecuta correctamente.
Utilice el comando CLI del administrador del evento del debug del Cisco IOS con sus diversas palabras claves de hacer el
debug de los problemas. Refiera a la sección de los “consejos de Troubleshooting” para más información sobre usar las
palabras claves TCL-específicas.
Consejos de Troubleshooting
• Utilice debug event manager tcl commandsel comando CLI de hacer el debug de los problemas con los comandos de
la extensión Tcl. Cuando está habilitado, este comando muestra todos los datos pasados y leídos de la sesión TTY que
gestiona las interacciones de la CLI. Estos datos ayudan a asegurar a los usuarios que los comandos que están pasando al
CLI son válidos.
• La biblioteca CLI permite que los usuarios ejecuten comandos CLI y obtengan la salida de los comandos en Tcl. Utilice
debug event manager tcl cli-library el comando CLI de hacer el debug de los problemas con la biblioteca CLI.
• La biblioteca SMTP permite que los usuarios envíen mensajes de correo electrónico a un servidor de correo electrónico
SMTP. Utilice el comando CLI smtp_library tcl del administrador del evento del debug de hacer el debug de los
problemas con la biblioteca S TP. Cuando está habilitado, este comando muestra todos los datos que se pasan y releen en
las rutinas de la biblioteca SMTP. Estos datos ayudan a asegurar a los usuarios que los comandos que están pasando a la
biblioteca S TP son válidos.
• El Tcl es un lenguaje flexible que permite que usted reemplace los comandos. Por ejemplo, usted puede modificar set el
comando y crear una versión set del comando que visualiza un mensaje cuando se fija una variable scalar. Cuando set el
comando se ingresa en una directiva, se visualiza un mensaje siempre se fija una variable scalar, y ésta proporciona una
manera de hacer el debug de las variables scalares. Para ver un ejemplo de esta técnica de debugging, vea “localizar las
operaciones de comando set Tcl: Sección Ejemplo".
Para ver los ejemplos de las algunas de estas técnicas de debugging, vea “las directivas integradas debugging del
administrador del evento: Sección Ejemplos".
Creación de un Índice de la Biblioteca Tcl de Usuario de EEM
Realice esta tarea de crear un archivo de índice que contenga un directorio de todos los procedimientos contenidos en una
biblioteca de los archivos Tcl. Esta tarea permite que usted pruebe el soporte de la biblioteca en EEM Tcl. En esta tarea, un
directorio de biblioteca se crea para contener los archivos de biblioteca Tcl, los archivos se copian en el directorio, y se crea un
tclIndex del índice) que contiene un directorio de todos los procedimientos en los archivos de biblioteca. Si el índice no se crea,
los procedimientos Tcl no serán encontrados cuando se funciona con una directiva EEM que se refiere a un procedimiento Tcl.
PASOS SUMARIOS
1. En su puesto de trabajo (UNIX, Linux, PC, o mac) cree un directorio de biblioteca y copie los archivos de biblioteca Tcl
en el directorio.
2. tclsh
3. auto_mkindex directory_name *.tcl
4. Copie los archivos de biblioteca Tcl del paso 1 y el archivo del tclIndex del paso 3 al directorio usado para salvar los
archivos de biblioteca de usuario en el router objetivo.
5. Copie un archivo de políticas definido por el usario EEM escrito en el Tcl al directorio usado para salvar las directivas
definidas por el usario EEM en el router objetivo.
6. enable
7. configure terminal
8. event manager directory user library path
9. event manager directory user policy path
10. event manager policy policy-filename [type {system | user}] []trap
11. event manager run policy-filename
PASOS DETALLADOS
Paso 1 En su puesto de trabajo (UNIX, Linux, PC, o mac) cree un directorio de biblioteca y copie los archivos de
biblioteca Tcl en el directorio.
Los archivos de siguiente ejemplo se pueden utilizar para crear un tclIndex en un puesto de trabajo que ejecuta el shell Tcl:
lib1.tcl
proc test1 {} {
puts "In procedure test1"
}
proc test2 {} {
puts "In procedure test2"
}
lib2.tcl
proc test3 {} {
puts "In procedure test3"
}
Paso 2 tclsh
Utilice este comando para ingresar al shell Tcl.
workstation% tclsh
Paso 3 auto_mkindex directory_name *.tcl
Utilice auto_mkindex el comando de crear el archivo del tclIndex. El archivo del tclIndex que contiene un directorio de todos los
procedimientos contuvo en los archivos de biblioteca Tcl. Recomendamos que usted ejecuta el auto_mkindex dentro de un
directorio porque puede solamente haber un solo archivo del tclIndex en cualquier directorio y usted puede tener otros archivos
Tcl que se agruparán junto. El auto_mkindex corriente en un directorio determina que el archivo de origen o los archivos tcl se
ponga en un índice usando un tclIndex específico.
workstation% auto_mkindex eem_library *.tcl
Se crea el siguiente ejemplo TclIndex cuando los archivos lib1.tcl y lib2.tcl están en un directorio de archivo de biblioteca y
auto_mkindex se funciona con el comando.
tclIndex
# Tcl autoload index file, version 2.0
# This file is generated by the "auto_mkindex" command
# and sourced to set up indexing information for one or
# more commands.
Typically each line is a command that
# sets an element in the auto_index array, where the
# element name is the name of a command and the value is
# a script that loads the command.
set auto_index(test1) [list source [file join $dir lib1.tcl]]
set auto_index(test2) [list source [file join $dir lib1.tcl]]
set auto_index(test3) [list source [file join $dir lib2.tcl]]
Paso 4 Copie los archivos de biblioteca Tcl del paso 1 y el archivo del tclIndex del paso 3 al directorio usado para
salvar los archivos de biblioteca de usuario en el router objetivo.
Paso 5 Copie un archivo de políticas definido por el usario EEM escrito en el Tcl al directorio usado para salvar las
directivas definidas por el usario EEM en el router objetivo. El directorio puede ser el mismo directorio usado en el Paso
4.
El directorio para almacenar políticas definidas por el usuario EEM puede ser el mismo directorio usado en el Paso 4. La
directiva definida por el usario del siguiente ejemplo EEM se puede utilizar para probar el soporte de la biblioteca Tcl en EEM.
libtest.tcl
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
global auto_index auto_path
puts [array names auto_index]
if { [catch {test1} result]} {
puts "calling test1 failed result = $result $auto_path"
}
if { [catch {test2} result]} {
puts "calling test2 failed result = $result $auto_path"
}
if { [catch {test3} result]} {
puts "calling test3 failed result = $result $auto_path"
}
Paso 6 enable
Habilita el modo EXEC privilegiado. Ingrese su contraseña si se le pide que lo haga.
Router> enable
Paso 7 configure terminal
Habilita el modo de configuración global.
Router# configure terminal
Paso 8 event manager directory user library path
Use este comando para especificar el directorio de la biblioteca de usuario de EEM; éste es el directorio al que se han copiado
los archivos del Paso 4 .
router(config)# event manager directory user library disk2:/eem_library
Paso 9 event manager directory user policy path
Utilice este comando para especificar el directorio de políticas de usuario de EEM; éste es el directorio en el que se copió el
archivo del Paso 5 .
router(config)# event manager directory user policy disk2:/eem_policies
Paso 10 event manager policy policy-name [type {system | user} [trap]
Utilice este comando para registrar una política de EEM definida por el usuario. En este ejemplo, la directiva nombrada libtest.tcl
se registra.
router(config)# event manager policy libtest.tcl
Paso 11 event manager run policy-name
Use este comando para ejecutar manualmente una política de EEM. En este ejemplo, la directiva nombrada libtest.tcl es
ejecutarse para probar el soporte Tcl en EEM. La salida de ejemplo muestra que la prueba para el soporte Tcl en EEM era
acertada.
router(config)# event manager run libtest.tcl
The following output is displayed:
01:24:37: %HA_EM-6-LOG: libtest.tcl: In procedure test1
01:24:37: %HA_EM-6-LOG: libtest.tcl: In procedure test2
01:24:37: %HA_EM-6-LOG: libtest.tcl: In procedure test3
Creación de un Índice de Paquete Tcl de Usuario EEM
Realice esta tarea de crear un archivo de índice del paquete Tcl que contenga un directorio de todos los paquetes y de la
información de la versión Tcl contenidos en una biblioteca de los archivos de paquete Tcl. Los paquetes Tcl se soportan usando
la palabra clave package Tcl, y este soporte fue introducido en el Cisco IOS Release 12.4(11)T.
Los paquetes Tcl están situados en el directorio de biblioteca de sistema EEM o el directorio de biblioteca de usuario EEM.
Cuando package require se ejecuta un comando Tcl, el directorio de biblioteca de usuario se busca primero para un archivo
pkgIndex.tcl. Si el archivo pkgIndex.tcl no se encuentra en el directorio de usuario, se busca el directorio de biblioteca de
sistema. En esta tarea, un directorio del paquete Tcl — el archivo pkgIndex.tcl — se crea en el directorio de biblioteca apropiado
usando el comando pkg_mkIndex de contener la información sobre todos los paquetes Tcl contenidos en el directorio junto con
la información de la versión. Si el índice no se crea, los paquetes Tcl no serán encontrados cuando se funciona con una
directiva EEM que contiene un comando Tcl package require .
Usando el soporte del paquete Tcl en EEM, los usuarios pueden acceder a los paquetes tales como XML_RPC para el Tcl.
Cuando se crea el índice del paquete Tcl, un script Tcl puede hacer fácilmente una llamada de XML-RPC a una entidad externa.
Los paquetesde la nota implementados en el C que programa el código no se soportan en EEM.
PASOS SUMARIOS
1. En su puesto de trabajo (UNIX, Linux, PC, o mac) cree un directorio de biblioteca y copie los archivos de paquete Tcl en
el directorio.
2. tclsh
3. pkg_mkIndex directory_name *.tcl
4. Copie los archivos de paquete Tcl del paso 1 y el archivo del pkgIndex del paso 3 al directorio usado para salvar los
archivos de biblioteca de usuario en el router objetivo.
5. Copie un archivo de políticas definido por el usario EEM escrito en el Tcl al directorio usado para salvar las directivas
definidas por el usario EEM en el router objetivo.
6. enable
7. configure terminal
8. event manager directory user library path
9. event manager directory user policy path
10. event manager policy policy-filename [type {system | user}] []trap
11. event manager run policy-filename
PASOS DETALLADOS
Paso 1 En su puesto de trabajo (UNIX, Linux, PC, o mac) cree un directorio de biblioteca y copie los archivos de
paquete Tcl en el directorio.
Paso 2 tclsh
Utilice este comando para ingresar al shell Tcl.
workstation% tclsh
Paso 3 pkg_mkindex directory_name *.tcl
Utilice pkg_mkindex el comando de crear el archivo del pkgIndex. El archivo del pkgIndex contiene un directorio de todos los
paquetes contenidos en los archivos de biblioteca Tcl. Recomendamos que usted ejecuta el pkg_mkindex dentro de un
directorio porque puede solamente haber un solo archivo del pkgIndex en cualquier directorio y usted puede tener otros archivos
Tcl que se agruparán junto. El pkg_mkindex corriente en un directorio determina que el archivo de paquete o los archivos Tcl se
ponga en un índice usando un pkgIndex específico.
workstation% pkg_mkindex eem_library *.tcl
Se crea el pkgIndex del siguiente ejemplo cuando algunos archivos de paquete Tcl están en un directorio de archivo de
biblioteca y pkg_mkindex se funciona con el comando.
pkgIndex
# Tcl package index file, version 1.1
# This file is generated by the "pkg_mkIndex" command
# and sourced either when an application starts up or
# by a "package unknown" script. It invokes the
# "package ifneeded" command to set up package-related
# information so that packages will be loaded automatically
# in response to "package require" commands. When this
# script is sourced, the variable $dir must contain the
# full path name of this file's directory.
package ifneeded xmlrpc 0.3 [list source [file join $dir xmlrpc.tcl]]
Paso 4 Copie los archivos de biblioteca Tcl del paso 1 y el archivo del pkgIndex del paso 3 al directorio usado para
salvar los archivos de biblioteca de usuario en el router objetivo.
Paso 5 Copie un archivo de políticas definido por el usario EEM escrito en el Tcl al directorio usado para salvar las
directivas definidas por el usario EEM en el router objetivo. El directorio puede ser el mismo directorio usado en el Paso
4.
El directorio para almacenar políticas definidas por el usuario EEM puede ser el mismo directorio usado en el Paso 4. La
directiva definida por el usario del siguiente ejemplo EEM se puede utilizar para probar el soporte del paquete Tcl en EEM.
packagetest.tcl
::cisco::eem::event_register_none maxrun 1000000.000
#
# test if xmlrpc available
#
#
# Namespace imports
#
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
#
package require xmlrpc
puts "Did you get an error?"
Paso 6 enable
Habilita el modo EXEC privilegiado. Ingrese su contraseña si se le pide que lo haga.
Router> enable
Paso 7 configure terminal
Habilita el modo de configuración global.
Router# configure terminal
Paso 8 event manager directory user library path
Use este comando para especificar el directorio de la biblioteca de usuario de EEM; éste es el directorio al que se han copiado
los archivos del Paso 4 .
router(config)# event manager directory user library disk2:/eem_library
Paso 9 event manager directory user policy path
Utilice este comando para especificar el directorio de políticas de usuario de EEM; éste es el directorio en el que se copió el
archivo del Paso 5 .
router(config)# event manager directory user policy disk2:/eem_policies
Paso 10 event manager policy policy-name [type {system | user} [trap]
Utilice este comando para registrar una política de EEM definida por el usuario. En este ejemplo, la directiva nombrada
packagetest.tcl se registra.
router(config)# event manager policy packagetest.tcl
Paso 11 event manager run policy-name
Use este comando para ejecutar manualmente una política de EEM. En este ejemplo, la directiva nombrada packagetest.tcl es
ejecutarse para probar el soporte del paquete Tcl en EEM.
router(config)# event manager run packagetest.tcl
Ejemplos de Configuración para la Escritura de las Políticas de Embedded Event Manager Utilizando
Tcl
Esta sección contiene los ejemplos de configuración siguientes:
•
Asignación de un Nombre de Usuario para una Sesión Tcl: Ejemplos
•
Demostración del Detector de Eventos EEM: Ejemplos
•
Programación de Políticas con Tcl: Ejemplo de Scripts de Muestra
•
Debugging de Políticas de Embedded Event Manager: Ejemplos
•
Rastreo de las Operaciones del Comando set de Tcl: Ejemplo:
•
Detector de Eventos RPC: Ejemplo:
Asignación de un Nombre de Usuario para una Sesión Tcl: Ejemplos
Las demostraciones del siguiente ejemplo cómo fijar un nombre de usuario que se asociará a una sesión Tcl. Si usted está
utilizando la Seguridad del Authentication, Authorization, and Accounting (AAA) y implementa la autorización sobre una base del
comando, usted debe utilizar event manager session cli username el comando de fijar un nombre de usuario que se asociará
a una sesión Tcl. Se utiliza el nombre de usuario cuando una directiva Tcl ejecuta un comando CLI. El TACACS+ verifica cada
comando CLI que usa el nombre de usuario asociado a la sesión Tcl que está funcionando con la directiva. Los comandos de
las directivas Tcl no se verifican generalmente porque el router debe estar en el modo EXEC privilegiado para registrar la
directiva. En el ejemplo, el nombre de usuario es su nombre, y éste es el nombre de usuario se utiliza que siempre que una
sesión del comando CLI se inicie dentro de una directiva EEM.
configure terminal
event manager session cli username yourname
end
Demostración del Detector de Eventos EEM: Ejemplos
Este ejemplo utiliza las directivas de la muestra para demostrar cómo utilizar las directivas integradas del administrador del
evento. Proceda a través de las secciones siguientes a ver cómo utilizar las directivas de la muestra:
•
Descripciones de la directiva de la muestra EEM
•
Variables de entorno del administrador del evento para las directivas de la muestra
•
Registro de las directivas algún EEM
•
Detalles de la configuración básica para todas las directivas de la muestra
•
Usando las directivas de la muestra
Descripciones de la directiva de la muestra EEM
Este ejemplo de configuración ofrece algunas de las directivas de la muestra EEM:
•
ap_perf_test_base_cpu.tcl — Se ejecuta para medir el rendimiento de la CPU de las directivas EEM.
•
no_perf_test_init.tcl — Se ejecuta para medir el rendimiento de la CPU de las directivas EEM.
• sl_intf_down.tcl — Se ejecuta cuando se registra un mensaje de Syslog configurable. Ejecuta hasta dos comandos CLI y
email configurables los resultados.
• tm_cli_cmd.tcl — Se ejecuta usando una entrada configurable CRON. Ejecuta un comando CLI configurable y los email
los resultados.
• tm_crash_reporter.tcl — Introducido en el Cisco IOS Release 12.4(2)T, 12.2(31)SB3, y 12.2(33)SRB. Se ejecuta 5
segundos después de que se registra y 5 segundos después de que el router arranca. Cuando está accionado, el script
intenta encontrar el motivo de la recarga. Si la razón de la recarga se debió a un colapso, la política busca el archivo
crashinfo relacionado y envía esta información a una ubicación URL especificada por el usuario en la variable de entorno
_crash_reporter_url.
• tm_fsys_usage.tcl — Introducido en las imágenes de la modularidad del Cisco IOS Software del Cisco IOS Release
12.2(18)SXF4. Esta política se ejecuta utilizando una entrada CRON configurable y monitorea el uso del espacio en disco.
Se visualiza un mensaje de Syslog si el uso del espacio en disco cruza los umbrales configurables.
Variables de entorno del administrador del evento para las directivas de la muestra
Las variables de entorno del administrador del evento son las variables globales Tcl se registran que son externo definido a la
directiva EEM antes de la directiva y funcionamiento. Las directivas de la muestra requieren tres de las variables de entorno del
email ser fijadas (véase el cuadro 8 para una lista de las variables del email); solamente el _email_cc es opcional. Otro
requerido y las configuraciones de variable opcional se delinean en las tablas siguientes.
El cuadro 9 describe las variables de entorno EEM que deben ser fijadas antes de que se funcione con la directiva de la
muestra ap_perf_test_base_cpu.tcl.
Variable de
Entorno
Descripción
Ejemplo:
_perf_iterations
El número de iteraciones sobre las cuales para funcionar con
la medida.
100
_perf_cmd1
El primer comando CLI no interactivo que se ejecuta como
enable
parte de la prueba de la medida. Esta variable es opcional y no
es necesario especificarla.
_perf_cmd2
El segundo comando CLI no interactivo que está como parte
de la prueba de la medida. Para utilizar _perf_cmd2,
_perf_cmd1 debe ser definido. Esta variable es opcional y no
es necesario especificarla.
_perf_cmd3
El comando CLI no interactivo del tercero que está como parte show interface
de la prueba de la medida. Para utilizar _perf_cmd3,
counters
_perf_cmd1 debe ser definido. Esta variable es opcional y no protocol status
es necesario especificarla.
show version
El cuadro 10 describe las variables de entorno EEM que deben ser fijadas antes de que se funcione con la directiva de la
muestra no_perf_test_init.tcl.
Variable de
Entorno
Descripción
Ejemplo:
_perf_iterations
El número de iteraciones sobre las cuales para funcionar con
la medida.
100
_perf_cmd1
El primer comando CLI no interactivo que se ejecuta como
enable
parte de la prueba de la medida. Esta variable es opcional y no
es necesario especificarla.
_perf_cmd2
El segundo comando CLI no interactivo que está como parte
de la prueba de la medida. Para utilizar _perf_cmd2,
_perf_cmd1 debe ser definido. Esta variable es opcional y no
es necesario especificarla.
show version
_perf_cmd3
El comando CLI no interactivo del tercero que está como parte show interface
de la prueba de la medida. Para utilizar _perf_cmd3,
counters
_perf_cmd1 debe ser definido. Esta variable es opcional y no protocol status
es necesario especificarla.
El cuadro 11 describe las variables de entorno EEM que deben ser fijadas antes de que se funcione con la directiva de la
muestra sl_intf_down.tcl.
Variable de
Entorno
Descripción
Ejemplo:
_config_cmd1
El primer comando de configuración que se
ejecuta.
interface Ethernet1/0
_config_cmd2
El segundo comando configuration se ejecuta
que. Esta variable es opcional y no es necesario
especificarla.
no shutdown
_syslog_pattern
Una cadena de coincidencia de patrón de
expresión normal que se utiliza para comparar
mensajes de Syslog para determinar cuando se
ejecuta la política.
.*UPDOWN.*FastEthernet0/0.*
El cuadro 12 describe las variables de entorno EEM que deben ser fijadas antes de que se funcione con la directiva de la
muestra tm_cli_cmd.tcl.
Variable de
Entorno
Descripción
Ejemplo:
_cron_entry
Una especificación CRON que determina cuándo se
ejecutará la política.
0-59/1 0-23/1 * *
0-7
_show_cmd
El comando CLI de ser ejecutado cuando se funciona con la show version
directiva.
El cuadro 13 describe las variables de entorno EEM que deben ser fijadas antes de que se funcione con la directiva de la
muestra tm_crash_reporter.tcl.
Variable de Entorno Descripción
Ejemplo:
_crash_reporter_debug Un valor que identifica si la
información del debug para
tm_crash_reporter.tcl será
habilitada. Esta variable es
opcional y no es necesario
especificarla.
1
_crash_reporter_url
http://www.example.com/fm/interface_tm.cgi
La ubicación URL a la cual se
envía el informe de crash.
El cuadro 14 describe las variables de entorno EEM que deben ser fijadas antes de que se funcione con la directiva de la
muestra tm_fsys_usage.tcl.
Variable de Entorno
Descripción
Ejemplo:
_tm_fsys_usage_cron
Una especificación CRON que se utiliza en
0-59/1 0-23/1 * *
event_register la extensión del comando Tcl. Si está sin 0-7
especificar, la directiva tm_fsys_usage.tcl se acciona
una vez por el minuto. Esta variable es opcional y no es
necesario especificarla.
_tm_fsys_usage_debug
Cuando esta variable se fija a un valor de 1, la
1
información del uso del disco se visualiza para todas las
entradas en el sistema. Esta variable es opcional y no es
necesario especificarla.
_tm_fsys_usage_
freebytes
Umbral libre del byte para los sistemas o los prefijos
específicos. Si el espacio libre cae por debajo de un
determinado valor, se muestra una alerta. Esta variable
es opcional y no es necesario especificarla.
disk2:98000000
_tm_fsys_usage_percent Umbrales de porcentaje del uso del disco para los
nvram:25
sistemas o los prefijos específicos. Si el porcentaje del
disk2:5
uso del disco excede un porcentaje dado, se visualiza
una advertencia. Si no se especifica, el porcentaje
predeterminado de uso del disco es el 80 por ciento para
todos los sistemas. Esta variable es opcional y no es
necesario especificarla.
Registro de las directivas algún EEM
Las directivas algún EEM deben ser desregistradas y después ser reregistradas si se modifica una variable de entorno EEM
después de que se registre la directiva. La declaraciónxxx del event_register_ que aparece al inicio de la directiva contiene
algunas de las variables de entorno EEM, y esta declaración se utiliza para establecer las condiciones bajo las cuales se
funciona con la directiva. Si se modifican las variables de entorno después de que se haya registrado la directiva, las
condiciones pueden llegar a ser inválidas. Para evitar cualquier error, la directiva debe ser desregistrada y después ser
reregistrada. Las variables siguientes son afectadas:
•
_cron_entry en la directiva tm_cli_cmd.tcl
•
_syslog_pattern en la directiva sl_intf_down.tcl
Detalles de la configuración básica para todas las directivas de la muestra
Para permitir que el email sean enviados del administrador del evento integrado, hostname y ip domain-name los comandos
debe ser configurada. Las variables de entorno EEM deben también ser fijadas. Después de que se haya iniciado una imagen
del Cisco IOS, utilice la configuración inicial siguiente, substituyendo los valores apropiados para su red. Las variables de
entorno para la directiva de la muestra del tm_fsys_usage (véase el cuadro 14) son todas opcionales y no se enumeran aquí:
hostname cpu
ip domain-name example.com
event manager environment _email_server ms.example.net
event manager environment _email_to [email protected]
event manager environment _email_from [email protected]
event manager environment _email_cc [email protected]
event manager environment _cron_entry 0-59/2 0-23/1 * * 0-7
event manager environment _show_cmd show event manager policy registered
event manager environment _syslog_pattern .*UPDOWN.*FastEthernet0/0
event manager environment _config_cmd1 interface Ethernet1/0
event manager environment _config_cmd2 no shutdown
event manager environment _crash_reporter_debug 1
event manager environment _crash_reporter_url
http://www.example.com/fm/interface_tm.cgi
end
Usando las directivas de la muestra
Esta sección contiene los escenarios de configuración siguientes para demostrar cómo utilizar las algunas directivas Tcl de la
muestra:
•
Funcionar con la directiva de la muestra Mandatory.go_*.tcl
•
Funcionar con las directivas de la muestra ap_perf_test_base_cpu.tcl y no_perf_test_init.tcl
•
Funcionar con la directiva de la muestra sl_intf_down.tcl
•
Funcionar con la directiva de la muestra tm_cli_cmd.tcl
•
Funcionar con la directiva de la muestra tm_crash_reporter.tcl
•
Funcionar con la directiva de la muestra tm_fsys_usage.tcl
Funcionar con la directiva de la muestra Mandatory.go_*.tcl
Hay Scripts TCL del ORO para cada prueba que se ejecute como directiva del ORO EEM de la parte de. Usted puede modificar
el script TCL para la prueba, especifica la cuenta de fallas consecutiva, y también cambia la acción correctiva predeterminada.
Por ejemplo, uno podría eligió accionar abajo un indicador luminoso LED amarillo de la placa muestra gravedad menor del
linecard, en vez de la restauración o de otras acciones basadas CLI.
Para cada prueba registradoa, un script del valor por defecto TCL es disponible, que se pueden registrar con el sistema, y
coincidencias con la acción predeterminada. Esto puede entonces ser reemplazada modificando estos scripts.
La tabla siguiente muestra que una lista del obligatorio limpia que ORO instalado en EEM. Cada uno de las directivas realiza
una cierta clase de acción tal como reajuste del indicador luminoso LED amarillo de la placa muestra gravedad menor o
inhabilitar el puerto.
Scripts TCL del ORO
Prueba
Mandatory.go_asicsync.tcl
TestAsicSync
Mandatory.go_bootup.tcl
Campo común para todas las pruebas del bootup.
Mandatory.go_fabric.tcl
TestFabricHealth
Mandatory.go_fabrich0.tcl
TestFabricCh0Health
Mandatory.go_fabrich1.tcl
TestFabricCh1Health
Mandatory.go_ipsec.tcl
TestIPSecEncrypDecrypPkt
Mandatory.go_mac.tcl
TestMacNotification
Mandatory.go_nondislp.tcl
TestNonDisruptiveLoopback
Mandatory.go_scratchreg.tcl
TestScratchRegister
Mandatory.go_sprping.tcl
TestSPRPInbandPing
La siguiente configuración de muestra demuestra cómo utilizar esta política. Comenzando en el modo EXEC de usuario, ingrese
enable el comando en el prompt de router. El router ingresa al modo EXEC privilegiado, donde se puede ingresar el comando
show event manager policy registered para verificar que actualmente no hay ninguna política registrada. El comando
siguiente es el comando show event manager policy available, para mostrar qué políticas están disponibles para instalarse.
Después de que usted ingrese configure terminal el comando de alcanzar al modo de configuración global, usted puede
registrar la directiva mandatory.go_*.tcl con EEM usando el comando event manager policy . Salga del modo de configuración
global y ingrese el comando registrado directiva showevent del administrador de verificar otra vez que se ha registrado la
directiva.
enable
show event manager policy registered
show event manager policy available
configure terminal
event manager policy Mandatory.go_spuriousisr.tcl
end
show event manager policy registered
show event manager environment
Funcionar con las directivas de la muestra ap_perf_test_base_cpu.tcl y no_perf_test_init.tcl
Éstos muestrean las directivas miden el rendimiento de la CPU de las directivas EEM. Las directivas ayudan a encontrar la
época de ejecución media de cada directiva EEM y utilizan la biblioteca CLI para ejecutar los comandos configuration
especificados en las variables de entorno _perf_cmd1 y, opcionalmente, _perf_cmd2 y _perf_cmd3 EEM.
La siguiente configuración de muestra demuestra cómo utilizar esta política. Comenzando en el modo EXEC de usuario, ingrese
enable el comando en el prompt de router. El router ingresa al modo EXEC privilegiado, donde se puede ingresar el comando
show event manager policy registered para verificar que actualmente no hay ninguna política registrada. El comando
siguiente es el comando show event manager policy available, para mostrar qué políticas están disponibles para instalarse.
Después de que usted ingrese configure terminal el comando de alcanzar al modo de configuración global, ingrese service
timestamps debug datetime msec el comando y entonces usted puede registrar las directivas ap_perf_test_base_cpu.tcl y
no_perf_test_init.tcl con EEM usando el comando event manager policy . Salga del modo de configuración global e ingrese de
nuevo el comando show event manager policy registered para verificar que se ha registrado la política.
Las directivas ap_perf_test_base_cpu.tcl y no_perf_test_init.tcl necesitan ser registradas juntas, pues se ejecutan como
conjunto de prueba. Usted puede funcionar con la directiva no_perf_test_init.tcl para comenzar las pruebas. Analice los
resultados usando los mensajes de Syslog de cada iteración. El número total de iteración es especificado por los
_perf_iterations variables. Tome la diferencia de tiempo y divídala por el número total de iteraciones para conseguir la época de
ejecución media de cada directiva EEM.
enable
show event manager policy registered
show event manager policy available
show event manager environment
configure terminal
service timestamps debug datetime msec
event manager environment _perf_iterations 100
event manager policy ap_perf_test_base_cpu.tcl
event manager policy no_perf_test_init.tcl
end
show event manager policy registered
show event manager policy available
show event manager environment
event manager run no_perf_test_init.tcl
Funcionar con la directiva de la muestra no_perf_test_init.tcl
Medidas este política de la muestra el rendimiento de la CPU de las directivas EEM. Las ayudas de la directiva para encontrar la
época de ejecución media de cada directiva EEM y utilizan la biblioteca CLI para ejecutar los comandos configuration
especificados en las variables de entorno _perf_cmd1 y, opcionalmente, _perf_cmd2 y _perf_cmd3 EEM.
La siguiente configuración de muestra demuestra cómo utilizar esta política. Comenzando en el modo EXEC de usuario, ingrese
enable el comando en el prompt de router. El router ingresa al modo EXEC privilegiado, donde se puede ingresar el comando
show event manager policy registered para verificar que actualmente no hay ninguna política registrada. El comando
siguiente es el comando show event manager policy available, para mostrar qué políticas están disponibles para instalarse.
Después de que usted ingrese configure terminal el comando de alcanzar al modo de configuración global, usted puede
registrar la directiva no_perf_test_init.tcl con EEM usando el comando event manager policy . Salga del modo de configuración
global y ingrese el comando registrado directiva showevent del administrador de verificar otra vez que se ha registrado la
directiva.
Analice los resultados usando los mensajes de Syslog de cada iteración. El número total de iteración es especificado por los
_perf_iterations variables. Tome la diferencia de tiempo y divídala por el número total de iteraciones para conseguir la época de
ejecución media de cada directiva EEM.
enable
show event manager policy registered
show event manager policy available
configure terminal
event manager policy no_perf_test_init.tcl
end
show event manager policy registered
show event manager environment
Funcionar con la directiva de la muestra sl_intf_down.tcl
Esta directiva de la muestra demuestra la capacidad de modificar la configuración cuando un mensaje de Syslog con un modelo
específico se registra. La directiva recopila la información detallada sobre el evento y utiliza la biblioteca CLI para ejecutar los
comandos configuration especificados en las variables de entorno _config_cmd1 y, opcionalmente, _config_cmd2 EEM. Se
envía un mensaje de correo electrónico con los resultados del comando CLI.
La siguiente configuración de muestra demuestra cómo utilizar esta política. Comenzando en el modo EXEC de usuario, ingrese
enable el comando en el prompt de router. El router ingresa al modo EXEC privilegiado, donde se puede ingresar el comando
show event manager policy registered para verificar que actualmente no hay ninguna política registrada. El comando
siguiente es el comando show event manager policy available, para mostrar qué políticas están disponibles para instalarse.
Después de que usted ingrese configure terminal el comando de alcanzar al modo de configuración global, usted puede
registrar la directiva sl_intf_down.tcl con EEM usando el comando event manager policy . Salga del modo de configuración
global y ingrese el comando registrado directiva showevent del administrador de verificar otra vez que se ha registrado la
directiva.
La directiva se ejecuta cuando va una interfaz abajo. Ingrese el comando del entorno del administrador del evento de la
demostración de visualizar los valores variables del entorno actual. Desenchufe el cable (o configure un apagar) para la
interfaz especificada en la variable de entorno _syslog_pattern EEM. La interfaz va abajo, indicando a la daemon del Syslog que
registre un mensaje de Syslog sobre la interfaz que está abajo, y se llama el detector del evento de syslog.
El detector del evento de syslog revisa las especificaciones excepcionales del evento y encuentra una coincidencia para el
cambio de estado de la interfaz. Se notifica el servidor EEM, y el servidor funciona con la directiva que se registra para manejar
este evento — sl_intf_down.tcl.
enable
show event manager policy registered
show event manager policy available
configure terminal
event manager policy sl_intf_down.tcl
end
show event manager policy registered
show event manager environment
Funcionar con la directiva de la muestra tm_cli_cmd.tcl
Esta directiva de la muestra demuestra la capacidad de ejecutar periódicamente un comando CLI y al email los resultados. La
especificación "0-59/2 0-23/1 * * el 0-7" CRON hace esta directiva ser funcionada con en el segundo minuto de cada hora. La
directiva recopila la información detallada sobre el evento y utiliza la biblioteca CLI para ejecutar los comandos configuration
especificados en el _show_cmd de la variable de entorno EEM. Se envía un mensaje de correo electrónico con los resultados
del comando CLI.
La siguiente configuración de muestra demuestra cómo utilizar esta política. Comenzando en el modo EXEC de usuario, ingrese
enable el comando en el prompt de router. El router ingresa en el modo EXEC privilegiado, que permite ingresar el comando
show event manager policy registered para verificar que actualmente no hay ninguna política registrada. El comando
siguiente es el comando show event manager policy available, para mostrar qué políticas están disponibles para instalarse.
Después de que usted ingrese configure terminal el comando de alcanzar al modo de configuración global, usted puede
registrar la directiva tm_cli_cmd.tcl con EEM usando el comando event manager policy . Salga del modo de configuración
global y ingrese el comando registrado directiva showevent del administrador de verificar que se ha registrado la directiva.
El detector del evento de temporización acciona un evento para este caso periódicamente según la cadena CRON fijada en la
variable de entorno EEM _cron_entry. Se notifica el servidor EEM, y el servidor funciona con la directiva que se registra para
manejar este evento — tm_cli_cmd.tcl.
enable
show event manager policy registered
show event manager policy available
configure terminal
event manager policy tm_cli_cmd.tcl
end
show event manager policy registered
Funcionar con la directiva de la muestra tm_crash_reporter.tcl
Esta directiva de la muestra demuestra la capacidad de enviar un informe en formato de HTTP de la caída a una ubicación URL.
Si el registro de la directiva se guarda en el archivo de configuración de inicio, la directiva se acciona 5 segundos después del
bootup. Cuando está accionado, el script intenta encontrar el motivo de la recarga. Si la razón de la recarga se debió a un
colapso, la política busca el archivo crashinfo relacionado y envía esta información a una ubicación URL especificada por el
usuario en la variable de entorno _crash_reporter_url. Una secuencia de comandos CGI, interface_tm.cgi, se ha creado para
recibir el URL de la directiva tm_crash_reporter.tcl y para salvar la información del desperfecto en las bases de datos locales en
la máquina de la blanco URL.
Se ha creado y se diseña para ejecutarse en una máquina que contiene un servidor HTTP y es accesible una secuencia de
comandos CGI Perl, interface_tm.cgi, por el router que funciona con la directiva tm_crash_reporter.tcl. El script interface_tm.cgi
analiza los datos pasajeros en ella de tm_crash_reporter.tcl y añade la información del desperfecto al final del fichero a un
archivo de texto, creando un historial de todas las caídas en el sistema. Además, la información detallada en cada caída se
salva en tres archivos en un directorio de base de datos de la caída que sea especificado por el usuario. Otra secuencia de
comandos CGI Perl, crash_report_display.cgi, se ha creado para visualizar la información salvada en la base de datos creada
por el script interface_tm.cgi. El script crash_report_display.cgi se debe colocar en la misma máquina que contiene
interface_tm.cgi. La máquina debe funcionar con a un buscador Web tal como Internet Explorer o Netscape. Cuando se ejecuta
el script crash_report_display.cgi, visualiza la información del desperfecto en un formato legible.
La siguiente configuración de muestra demuestra cómo utilizar esta política. Comenzando en el modo EXEC de usuario, ingrese
enable el comando en el prompt de router. El router ingresa en el modo EXEC privilegiado, que permite ingresar el comando
show event manager policy registered para verificar que actualmente no hay ninguna política registrada. El comando
siguiente es el comando show event manager policy available, para mostrar qué políticas están disponibles para instalarse.
Después de que usted ingrese configure terminal el comando de alcanzar al modo de configuración global, usted puede
registrar la directiva tm_crash_reporter.tcl con EEM usando el comando event manager policy . Salga del modo de
configuración global y ingrese el comando registrado directiva showevent del administrador de verificar que se ha registrado
la directiva.
enable
show event manager policy registered
show event manager policy available
configure terminal
event manager policy tm_crash_reporter.tcl
end
show event manager policy registered
Funcionar con la directiva de la muestra tm_fsys_usage.tcl
Esta directiva de la muestra demuestra la capacidad monitorea periódicamente el uso y el informe del espacio en disco con el
Syslog cuando se han cruzado los umbrales configurables.
La siguiente configuración de muestra demuestra cómo utilizar esta política. Comenzando en el modo EXEC de usuario, ingrese
enable el comando en el prompt de router. El router ingresa al modo EXEC privilegiado, donde se puede ingresar el comando
show event manager policy registered para verificar que actualmente no hay ninguna política registrada. El comando
siguiente es el comando show event manager policy available, para mostrar qué políticas están disponibles para instalarse.
Después de que usted ingrese configure terminal el comando de alcanzar al modo de configuración global, usted puede
registrar la directiva tm_fsys_usage.tcl con EEM usando el comando event manager policy . Salga del modo de configuración
global y ingrese el comando registrado directiva showevent del administrador de verificar otra vez que se ha registrado la
directiva. Si usted había configurado las variables de entorno opcionales unas de los que se utilizan en la directiva
tm_fsys_usage.tcl, el comando show event manager environment visualiza las variables configuradas.
enable
show event manager policy registered
show event manager policy available
configure terminal
event manager policy tm_fsys_usage.tcl
end
show event manager policy registered
show event manager environment
Programación de Políticas con Tcl: Ejemplo de Scripts de Muestra
Esta sección contiene algunas de las directivas de la muestra que se incluyen como políticas del sistema EEM. Para más
detalles sobre estas directivas, vea “la versión parcial de programa del detector de evento EEM: Sección Ejemplos".
•
Directiva de la muestra Mandatory.go_ipsec.tcl
•
directiva de la muestra ap_perf_test_base_cpu.tcl
•
directiva de la muestra tm_cli_cmd.tcl
•
directiva de la muestra sl_intf_down.tcl
Directiva de la muestra Mandatory.go_ipsec.tcl
La directiva siguiente de la muestra para la prueba de TestIPSecEncrypDecrypPkt.
::cisco::eem::event_register_gold card all testing_type monitoring test_name Tes
tIPSecEncrypDecrypPkt consecutive_failure 6 platform_action 0 queue_priority las
t
#
#
#
GOLD TestIPSecEncrypDecrypPkt Test TCL script
#
March 2005, Hai Qiu
#
#
Copyright (c) 2005-2007 by cisco Systems, Inc.
#
All rights reserved.
#
#
# Register for TestIPSecEncrypDecrypPkt test even
# the elements for register the event
# card [all | card #]
# sub_card [all | sub_card #]
# severity_major | severity_minor | severity_normal
# new_failure [true | false]
default :
severity_normal
default: dont_care
# testing_type [bootup | ondemand | schedule | monitoring]
# test_name [ test name ]
# test_id [ test # ]
# consecutive_failure [ consecutive_failure # ]
# platform_action [action_flag]
# action_flag [ 0 | 1 | 2 ]
# queue_priority [ normal | low | high | last]
default: normal
#
# Note:
#
#
1: "card" element is required. If other elements are not specified,
treat them as dont care, or default.
#
#
2: action_flag is platform specific. It is up to platform to
#
determine what action need to be taken based on the value
#
For Cat6k platform
#
action_flag 0 : TCL script take action to reset card
#
action_flag 1 : TCL script doesn't take action to reset card
#
action_flag 2 : TCL script takes action to reset card for bootup diag
#
#
when there is major error
action_flag 3 : TCL script doesn't take action to reset card for
#
bootup diag when there is major error
#
#
3: "queue_priority last" would guarantee this policy will be executed last
#
if there are other EEM events in queue with queue priority other
#
than "last"
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
# 1. query the information of latest triggered eem event
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
puts "GOLD EEM TCL policy for TestIPSecEncrypDecrypPkt"
#set msg [format "array=%s", array names arr_einfo]
#puts "msg $msg"
#set msg $arr_einfo(msg)
set card $arr_einfo(card)
set sub_card $arr_einfo(sub_card)
#set overall_result $arr_einfo(overall_result)
#puts "GOLD event msg recieved: $card/$sub_card overall_result= $overall_result"
# 2. execute the user-defined config commands
if [catch {cli_open} result] {
error $result $errorInfo
} else {
array set cli1 $result
}
if [catch {cli_exec $cli1(fd) "en"} result] {
error $result $errorInfo
}
# Use "diagn action mod mod# test testname default" command
# for default platform action
if [catch {cli_exec $cli1(fd) "diagnostic action mod $card test TestIPSecEncrypD
ecrypPkt default"} result] {
error $result $errorInfo
} else {
set cmd_output $result
}
if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
error $result $errorInfo
}
directiva de la muestra ap_perf_test_base_cpu.tcl
Las medidas política siguientes de la muestra el rendimiento de la CPU de las directivas EEM.
::cisco::eem::event_register_appl sub_system 798 type 9999
#---------------------------------# EEM policy used for measuring the cpu performance of EEM policies.
#
# July 2005, Cisco EEM team
#
# Copyright (c) 2005, 2006 by cisco Systems, Inc.
# All rights reserved.
#-----------------###
### Input arguments:
###
### arg1 $iter
- current iteration count
###
### The following EEM environment variables are used:
###
### _perf_iterations (mandatory) - number of iterations over which we
###
will run our measurement.
### Example:
### event manager environment _perf_iterations 100
###
### _perf_cmd1 (optional)
- optional non interactive cli command
###
to be executed as part of the
###
measurement test.
### Example:
### event manager environment _perf_cmd1 enable
###
### _perf_cmd2 (optional)
###
- optional non interactive cli command
to be executed as part of the
###
measurement test.
###
To use _perf_cmd2, _perf_cmd1 MUST
###
be defined.
### Example:
### event manager environment _perf_cmd2 show ver
###
### _perf_cmd3 (optional)
- optional non interactive cli command
###
to be executed as part of the
###
measurement test.
###
To use _perf_cmd3, _perf_cmd1 MUST
###
be defined.
### Example:
### event manager environment _perf_cmd3 show int counters protocol status
###
### Description:
###
Iterate through _perf_iterations of this policy.
###
It is up to the user to calculate the average
###
execution time based on the system timestamps.
###
Optional commands _perf_cmd1,
###
_perf_cmd2 and _perf_cmd3 are executed if defined.
###
###
A value of 100 is a good starting point.
###
### Outputs:
###
Console output.
###
### Usage example:
###
>conf t
###
>service timestamps debug datetime msec
###
>event manager environment _perf_iterations 100
###
>event manager policy ap_perf_base_cpu.tcl
###
>event manager policy no_perf_test_init.tcl
###
>end
###
2d19h: %SYS-5-CONFIG_I: Configured from console by console
###
>event manager run no_perf_test_init.tcl
###
###
Oct 16 14:57:17.284: %SYS-5-CONFIG_I: Configured from console by console
###
>event manager run no_perf_test_init.tcl
###
###
###
###
###
###
Oct 16 19:32:02.772: %HA_EM-6-LOG:
eem_policy/no_perf_test_init.tcl: EEM performance test start
Oct 16 19:32:03.115: %HA_EM-6-LOG:
eem_policy/ap_perf_test_base_cpu.tcl: EEM performance test iteration 1
Oct 16 19:32:03.467: %HA_EM-6-LOG:
###
eem_policy/ap_perf_test_base_cpu.tcl: EEM performance test iteration 2
###
...
###
Oct 16 19:32:36.936: %HA_EM-6-LOG:
###
###
eem_policy/ap_perf_test_base_cpu.tcl: EEM performance test iteration 100
###
Oct 16 19:32:36.936: %HA_EM-6-LOG:
eem_policy/ap_perf_test_base_cpu.tcl: EEM performance test end
###
###
The user must calculate execution time and average time of execution.
###
In this example, total time = 19:32:36.936 - 19:32:02.772 = 34.164
###
Average script execution time = 341.64 milliseconds
###
# check if all the env variables we need exist
# If any of them doesn't exist, print out an error msg and quit
if {![info exists _perf_iterations]} {
set result \
"Policy cannot be run: variable _perf_iterations has not been set"
error $result $errorInfo
}
# ensure our target iteration count > 0
if {$_perf_iterations <= 0} {
set result \
"Policy cannot be run: variable _perf_iterations <= 0"
error $result $errorInfo
}
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
# query the event info
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
set iter $arr_einfo(data1)
set iter [expr $iter + 1]
# if _perf_cmd1 is defined
if {[info exists _perf_cmd1]} {
# open the cli library
if [catch {cli_open} result] {
error $result $errorInfo
} else {
array set cli1 $result
}
# execute the comamnd defined in _perf_cmd1
if [catch {cli_exec $cli1(fd) $_perf_cmd1} result] {
error $result $errorInfo
}
# if _perf_cmd2 is defined
if {[info exists _perf_cmd2]} {
# execute the comamnd defined in _perf_cmd2
if [catch {cli_exec $cli1(fd) $_perf_cmd2} result] {
error $result $errorInfo
} else {
set cmd_output $result
}
}
# if _perf_cmd3 is defined
if {[info exists _perf_cmd3]} {
# execute the comamnd defined in _perf_cmd3
if [catch {cli_exec $cli1(fd) $_perf_cmd3} result] {
error $result $errorInfo
} else {
set cmd_output $result
}
}
# close the cli library
if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
error $result $errorInfo
}
}
# log a message
set msg [format "EEM performance test iteration %s" $iter]
action_syslog priority info msg $msg
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
# use the context info from the previous run to determine when to end
if {$iter >= $_perf_iterations} {
#log the final messages
action_syslog priority info msg "EEM performance test end"
if {$_cerrno != 0} {
set result [format \
"component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
exit 0
}
# cause the next iteration to run
event_publish sub_system 798 type 9999 arg1 $iter
if {$_cerrno != 0} {
set result [format \
"component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
directiva de la muestra tm_cli_cmd.tcl
La directiva siguiente de la muestra funciona con una entrada configurable CRON. La directiva ejecuta Cisco IOS CLI
configurable ordena y los email los resultados. Un archivo del registro opcional puede ser definido al cual la salida se añade al
final del fichero con un grupo fecha/hora.
::cisco::eem::event_register_timer cron name crontimer2 cron_entry $_cron_entry maxrun 240
#-----------------------------------------------------------------# EEM policy that will periodically execute a cli command and email the
# results to a user.
#
# July 2005, Cisco EEM team
#
# Copyright (c) 2005 by cisco Systems, Inc.
# All rights reserved.
#------------------------------------------------------------------
### The following EEM environment variables are used:
###
### _cron_entry (mandatory)
- A CRON specification that determines
###
when the policy will run. See the
###
IOS Embedded Event Manager
###
documentation for more information
###
on how to specify a cron entry.
### Example: _cron_entry
0-59/1 0-23/1 * * 0-7
###
### _log_file (mandatory without _email_....)
###
- A filename to append the output to.
###
If this variable is defined, the
###
output is appended to the specified
###
file with a timestamp added.
### Example: _log_file
disk0:/my_file.log
###
### _email_server (mandatory without _log_file)
###
- A Simple Mail Transfer Protocol (SMTP)
###
mail server used to send e-mail.
### Example: _email_server
mailserver.example.com
###
### _email_from (mandatory without _log_file)
###
### Example: _email_from
- The address from which e-mail is sent.
[email protected]
###
### _email_to (mandatory without _log_file)
###
### Example: _email_to
- The address to which e-mail is sent.
[email protected]
###
### _email_cc (optional)
- The address to which the e-mail must
###
be copied.
### Example: _email_cc
[email protected]
###
### _show_cmd (mandatory)
- The CLI command to be executed when
###
the policy is run.
### Example: _show_cmd
show version
###
# check if all required environment variables exist
# If any required environment variable does not exist, print out an error msg and quit
if {![info exists _log_file]} {
if {![info exists _email_server]} {
set result \
"Policy cannot be run: variable _log_file or _email_server has not been set"
error $result $errorInfo
}
if {![info exists _email_from]} {
set result \
"Policy cannot be run: variable _log_file or _email_from has not been set"
error $result $errorInfo
}
if {![info exists _email_to]} {
set result \
"Policy cannot be run: variable _log_file ore _email_to has not been set"
error $result $errorInfo
}
if {![info exists _email_cc]} {
#_email_cc is an option, must set to empty string if not set.
set _email_cc ""
}
}
if {![info exists _show_cmd]} {
set result \
"Policy cannot be run: variable _show_cmd has not been set"
error $result $errorInfo
}
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
# query the event info and log a message
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
global timer_type timer_time_sec
set timer_type $arr_einfo(timer_type)
set timer_time_sec $arr_einfo(timer_time_sec)
# log a message
set msg [format "timer event: timer type %s, time expired %s" \
$timer_type [clock format $timer_time_sec]]
action_syslog priority info msg $msg
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
# 1. execute the command
if [catch {cli_open} result] {
error $result $errorInfo
} else {
array set cli1 $result
}
if [catch {cli_exec $cli1(fd) "en"} result] {
error $result $errorInfo
}
# save exact execution time for command
set time_now [clock seconds]
# execute command
if [catch {cli_exec $cli1(fd) $_show_cmd} result] {
error $result $errorInfo
} else {
set cmd_output $result
# format output: remove trailing router prompt
regexp {\n*(.*\n)([^\n]*)$} $result dummy cmd_output
}
if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
error $result $errorInfo
}
# 2. log the success of the CLI command
set msg [format "Command \"%s\" executed successfully" $_show_cmd]
action_syslog priority info msg $msg
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
# 3. if _log_file is defined, then attach it to the file
if {[info exists _log_file]} {
# attach output to file
if [catch {open $_log_file a+} result] {
error $result
}
set fileD $result
# save timestamp of command execution
#
(Format = 00:53:44 PDT Mon May 02 2005)
set time_now [clock format $time_now -format "%T %Z %a %b %d %Y"]
puts $fileD "%%% Timestamp = $time_now"
puts $fileD $cmd_output
close $fileD
}
# 4. if _email_server is defined send the email out
if {[info exists _email_server]} {
set routername [info hostname]
if {[string match "" $routername]} {
error "Host name is not configured"
}
if [catch {smtp_subst [file join $tcl_library email_template_cmd.tm]} \
result] {
error $result $errorInfo
}
if [catch {smtp_send_email $result} result] {
error $result $errorInfo
}
}
directiva de la muestra sl_intf_down.tcl
La directiva siguiente de la muestra se ejecuta cuando se registra un mensaje de Syslog configurable. La directiva ejecuta un
comando CLI configurable y los email los resultados.
::cisco::eem::event_register_syslog occurs 1 pattern $_syslog_pattern maxrun 90
#-----------------------------------------------------------------# EEM policy to monitor for a specified syslog message.
# Designed to be used for syslog interface-down messages.
# When event is triggered, the given config commands will be run.
#
# July 2005, Cisco EEM team
#
# Copyright (c) 2005 by cisco Systems, Inc.
# All rights reserved.
#-----------------------------------------------------------------### The following EEM environment variables are used:
###
### _syslog_pattern (mandatory)
- A regular expression pattern match string
###
that is used to compare syslog messages
###
to determine when policy runs
### Example: _syslog_pattern
.*UPDOWN.*FastEthernet0/0.*
###
### _email_server (mandatory)
- A Simple Mail Transfer Protocol (SMTP)
###
mail server used to send e-mail.
### Example: _email_server
mailserver.example.com
###
### _email_from (mandatory)
### Example: _email_from
- The address from which e-mail is sent.
[email protected]
###
### _email_to (mandatory)
### Example: _email_to
- The address to which e-mail is sent.
[email protected]
###
### _email_cc (optional)
- The address to which the e-mail must
###
be copied.
### Example: _email_cc
[email protected]
###
### _config_cmd1 (optional)
- The first configuration command that
###
is executed.
### Example: _config_cmd1
interface Ethernet1/0
###
### _config_cmd2 (optional)
- The second configuration command that
###
is executed.
### Example: _config_cmd2
no shutdown
###
# check if all the env variables we need exist
# If any of them doesn't exist, print out an error msg and quit
if {![info exists _email_server]} {
set result \
"Policy cannot be run: variable _email_server has not been set"
error $result $errorInfo
}
if {![info exists _email_from]} {
set result \
"Policy cannot be run: variable _email_from has not been set"
error $result $errorInfo
}
if {![info exists _email_to]} {
set result \
"Policy cannot be run: variable _email_to has not been set"
error $result $errorInfo
}
if {![info exists _email_cc]} {
#_email_cc is an option, must set to empty string if not set.
set _email_cc ""
}
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
# 1. query the information of latest triggered eem event
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
set msg $arr_einfo(msg)
set config_cmds ""
# 2. execute the user-defined config commands
if [catch {cli_open} result] {
error $result $errorInfo
} else {
array set cli1 $result
}
if [catch {cli_exec $cli1(fd) "en"} result] {
error $result $errorInfo
}
if [catch {cli_exec $cli1(fd) "config t"} result] {
error $result $errorInfo
}
if {[info exists _config_cmd1]} {
if [catch {cli_exec $cli1(fd) $_config_cmd1} result] {
error $result $errorInfo
}
append config_cmds $_config_cmd1
}
if {[info exists _config_cmd2]} {
if [catch {cli_exec $cli1(fd) $_config_cmd2} result] {
error $result $errorInfo
}
append config_cmds "\n"
append config_cmds $_config_cmd2
}
if [catch {cli_exec $cli1(fd) "end"} result] {
error $result $errorInfo
}
if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
error $result $errorInfo
}
after 60000
# 3. send the notification email
set routername [info hostname]
if {[string match "" $routername]} {
error "Host name is not configured"
}
if [catch {smtp_subst [file join $tcl_library email_template_cfg.tm]} result] {
error $result $errorInfo
}
if [catch {smtp_send_email $result} result] {
error $result $errorInfo
}
El archivo de plantilla siguiente del email se utiliza con la directiva de la muestra EEM arriba:
email_template_cfg.tm
Mailservername: $_email_server
From: $_email_from
To: $_email_to
Cc: $_email_cc
Subject: From router $routername: Periodic $_show_cmd Output
$cmd_output
Debugging de Políticas de Embedded Event Manager: Ejemplos
La demostración de los siguientes ejemplos cómo hacer el debug de la biblioteca CLI y la biblioteca S TP.
Hacer el debug de la biblioteca CLI
La biblioteca CLI permite que los usuarios ejecuten comandos CLI y obtengan la salida de los comandos en Tcl. Un comando
integrado debug del administrador del evento se ha proporcionado para los usuarios de esta biblioteca. El comando de habilitar
el debugging de la biblioteca CLI es debug event manager tcl cli_library. Cuando está habilitado, este comando muestra
todos los datos pasados y leídos de la sesión TTY que gestiona las interacciones de la CLI. Estos datos ayudan a asegurar a
los usuarios que los comandos que están pasando al CLI son válidos.
Ejemplo del comando cli_library tcl del administrador del evento del debug
Este ejemplo utiliza la directiva sl_intf_down.tcl de la muestra. Cuando está accionado, sl_intf_down.tcl pasa un comando
configuration al CLI a través de la biblioteca CLI. El comando pasajero adentro debajo es. Este show event manager
environmentcomando no es comando válido en el modo de configuración. Sin el comando enabled debug , la salida se
muestra abajo:
00:00:57:sl_intf_down.tcl[0]:config_cmds are show eve man env
00:00:57:%SYS-5-CONFIG_I:Configured from console by vty0
Note que eso con la salida sobre el usuario no sabría independientemente de si el comando tuvo éxito en el CLI. Con debug
event manager tcl cli_library el comando enabled, el usuario ve el siguiente:
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : CTL : cli_open called.
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT : nelson>
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : IN
: nelson>enable
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT : nelson#
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : IN
: nelson#configure terminal
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT : Enter configuration commands, one
per line. End with CNTL/Z.
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT : nelson(config)#
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : IN
environment
: nelson(config)#show event manager
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT :
^
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT : % Invalid input detected at '^'
marker.
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT : nelson(config)#
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : IN
: nelson(config)#end
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : OUT : nelson#
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : CTL : cli_close called.
01:17:07: sl_intf_down.tcl[0]: DEBUG(cli_lib) : IN
: nelson#exit
01:17:07: sl_intf_down.tcl[0]: config_cmds are show event manager environment
01:17:07: %SYS-5-CONFIG_I: Configured from console by vty0
La salida antedicha muestra que show event manager environment es un comando inválido en el modo de configuración. EN
la palabra clave significa todos los datos pasajeros adentro al TTY a través de la biblioteca CLI. La palabra clave de la SALIDA
significa toda la parte posterior de los datos se leyeron del TTY a través de la biblioteca CLI. La palabra clave CTL significa las
funciones del ayudante usadas en la biblioteca CLI. Estas funciones del ayudante se utilizan para configurar y para quitar las
conexiones al CLI.
Hacer el debug de la biblioteca S TP
La biblioteca SMTP permite que los usuarios envíen mensajes de correo electrónico a un servidor de correo electrónico SMTP.
Un comando integrado debug del administrador del evento se ha proporcionado para los usuarios de esta biblioteca. El
comando de habilitar el debugging de la biblioteca S TP es debug event manager tcl smtp_library. Cuando está habilitado,
este comando muestra todos los datos que se pasan y releen en las rutinas de la biblioteca SMTP. Estos datos ayudan a
asegurar a los usuarios que los comandos que están pasando a la biblioteca S TP son válidos.
Ejemplo del comando smtp_library tcl del administrador del evento del debug
Este ejemplo utiliza la directiva tm_cli_cmd.tcl de la muestra. Cuando está accionado, tm_cli_cmd.tcl funciona con el comando a
través show event manager policy available system de la biblioteca CLI. El resultado entonces se envía a un usuario a través
de la biblioteca S TP. La salida ayudará a hacer el debug de cualquier problema relacionado con usar la biblioteca S TP.
Con debug event manager tcl smtp_library el comando enabled, los usuarios ven el siguiente en la consola:
00:39:46: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
XXXX 1.1.0; Tue, 25 Jun 2002 14:20:39 -0700 (PDT)
: 220 XXXX.example.com ESMTP
00:39:46: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : HELO XXXX.example.com
00:39:46: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
XXXX.example.com [XXXX], pleased to meet you
: 250 XXXX.example.com Hello
00:39:46: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : MAIL FROM:<[email protected]>
00:39:46: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
ok
: 250 <[email protected]>... Sender
00:39:46: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : RCPT TO:<[email protected]>
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
Recipient ok
: 250 <[email protected]>...
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : RCPT TO:<[email protected]>
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
Recipient ok
: 250 <[email protected]>...
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : DATA
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
on a line by itself
: 354 Enter mail, end with "."
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : Date: 25 Jun 2002 14:35:00 UTC
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : Message-ID:
<[email protected]>
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : From: [email protected]
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : To: [email protected]
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : Cc: [email protected]
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : Subject: From router nelson:
Periodic show eve man po ava system Output
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : No.
Name
Type
Time Created
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : 1
20:42:34 2002
pr_cdp_abort.tcl
system
Fri May3
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : 2
20:42:54 2002
pr_iprouting_abort.tcl
system
Fri May3
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : 3
02:16:33 2002
sl_intf_down.tcl
system
Wed Apr3
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : 4
23:34:16 2002
tm_cli_cmd.tcl
system
Mon Jun24
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : 5
05:53:15 2002
tm_crash_hist.tcl
system
Wed Mar27
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : nelson#
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write :
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : .
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
for delivery
: 250 ADE90179 Message accepted
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_write : QUIT
00:39:47: tm_cli_cmd.tcl[0]: DEBUG(smtp_lib) : smtp_read
connection
: 221 XXXX.example.com closing
Rastreo de las Operaciones del Comando set de Tcl: Ejemplo:
El Tcl es un lenguaje flexible. Uno de los aspectos flexibles del Tcl es que usted puede reemplazar los comandos. En este
ejemplo, se retitula set el comando Tcl mientras que el _set y una nueva versión set del comando se crea que visualiza un
mensaje que contiene el texto “configuración” y añade la variable scalar al final del fichero se está fijando que. Este ejemplo se
puede utilizar para localizar todos los casos de las variables scalares que son fijadas.
rename set _set
proc set {var args} {
puts [list setting $var $args]
uplevel _set $var $args
};
Cuando esto se coloca en una directiva, un mensaje se visualiza siempre se fija una variable scalar, por ejemplo:
02:17:58: sl_intf_down.tcl[0]: setting test_var 1
Detector de Eventos RPC: Ejemplo:
TCL script (rpccli.tcl):
::cisco::eem::event_register_rpc
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
proc run_cli { clist } {
set rbuf ""
if {[llength $clist] < 1} {
return -code ok $rbuf
}
if {[catch {cli_open} result]} {
return -code error $result
} else {
array set cliarr $result
}
if {[catch {cli_exec $cliarr(fd) "enable"} result]} {
return -code error $result
}
if {[catch {cli_exec $cliarr(fd) "term length 0"} result]} {
return -code error $result
}
foreach cmd $clist {
if {[catch {cli_exec $cliarr(fd) $cmd} result]} {
return -code error $result
}
append rbuf $result
}
if {[catch {cli_close $cliarr(fd) $cliarr(tty_id)} result]} {
puts "WARNING: $result"
}
return -code ok $rbuf
}
proc run_cli_interactive { clist } {
set rbuf ""
if {[llength $clist] < 1} {
return -code ok $rbuf
}
if {[catch {cli_open} result]} {
return -code error $result
} else {
array set cliarr $result
}
if {[catch {cli_exec $cliarr(fd) "enable"} result]} {
return -code error $result
}
if {[catch {cli_exec $cliarr(fd) "term length 0"} result]} {
return -code error $result
}
foreach cmd $clist {
array set sendexp $cmd
if {[catch {cli_write $cliarr(fd) $sendexp(send)} result]} {
return -code error $result
}
foreach response $sendexp(responses) {
array set resp $response
if {[catch {cli_read_pattern $cliarr(fd) $resp(expect)} result]} {
return -code error $result
}
if {[catch {cli_write $cliarr(fd) $resp(reply)} result]} {
return -code error $result
}
}
if {[catch {cli_read $cliarr(fd)} result]} {
return -code error $result
}
append rbuf $result
}
if {[catch {cli_close $cliarr(fd) $cliarr(tty_id)} result]} {
puts "WARNING: $result"
}
return -code ok $rbuf
}
array set arr_einfo [event_reqinfo]
set args $arr_einfo(argc)
set cmds [list]
for { set i 0 } { $i < $args } { incr i } {
set arg "arg${i}"
# Split each argument on the '^' character.
The first element is
# the command, and each subsequent element is a prompt followed by
# a response to that prompt.
set cmdlist [split $arr_einfo($arg) "^"]
set cmdarr(send) [lindex $cmdlist 0]
set cmdarr(responses) [list]
if { [expr ([llength $cmdlist] - 1) % 2] != 0 } {
return -code 88
}
set cmdarr(responses) [list]
for { set j 1 } { $j < [llength $cmdlist] } { incr j 2 } {
set resps(expect) [lindex $cmdlist $j]
set resps(reply) [lindex $cmdlist [expr $j + 1]]
lappend cmdarr(responses) [array get resps]
}
lappend cmds [array get cmdarr]
}
set rc [catch {run_cli_interactive $cmds} output]
if { $rc != 0 } {
error $output $errorInfo
return -code 88
}
puts $output
Adonde ir después
•
Para obtener información sobre la descripción general de EEM, vaya al módulo "Descripción General de Embedded
Event Manager".
• Para la información sobre la escritura de las directivas EEM usando el Cisco IOS CLI, van “las directivas integradas
escritura del administrador del evento usando al módulo del Cisco IOS CLI”.
Referencias adicionales
Las secciones siguientes proporcionan las referencias relacionadas con la escritura de las directivas integradas del
administrador del evento usando el Tcl.
Documentos Relacionados
Tema relacionado
Título del documento
Comandos de Cisco IOS
El Cisco IOS domina los
comandos list, todos las
versiones
Comandos de administración de red (incluidos los comandos
EEM): sintaxis de comandos completa, valores predeterminados,
modo de comandos, historial de comandos, pautas de uso y
ejemplos
Referencia de Comandos de
Administración de Redes de
Cisco IOS
Descripción General de Embedded Event Manager
Módulo integrado de la
descripción del administrador del
evento.
Escritura de políticas de Embedded Event Manager mediante la
CLI
Módulo Escritura de Políticas de
Embedded Event Manager
Usando el Cisco IOS CLI
Administrador de Recursos Incrustado
Módulo Embedded Resource
Manager
MIB
MIB
Link del MIB
CISCOPara localizar y descargar MIB de plataformas, versiones de Cisco IOS y
EMBEDDEDconjuntos de funciones seleccionados, utilice Cisco MIB Locator, que se
EVENT-MGR-MIB encuentra en la siguiente URL:
http://www.cisco.com/cisco/web/LA/support/index.html
RFC
RFC
Título
Esta función no soporta RFCs nuevos o modificados, y el soporte de los RFCs existentes no
ha sido modificado por ella.
—
Asistencia Técnica
Descripción
Link
El Web site del soporte y de la documentación http://www.cisco.com/cisco/web/LA/support/index.html
de Cisco proporciona los recursos en línea
para descargar la documentación, el software,
y las herramientas. Utilice estos recursos para
instalar y para configurar el software y para
resolver problemas y para resolver los
problemas técnicos con los Productos Cisco y
las Tecnologías. El acceso a la mayoría de las
herramientas en el Web site del soporte y de
la documentación de Cisco requiere una
identificación del usuario y una contraseña del
cisco.com.
Referencia de Extensiones de Comandos de Tcl de Políticas de EEM
Esta sección documenta las categorías siguientes de la extensión del comando Tcl de la directiva EEM:
•
Extensiones de Comandos Tcl de Registro de Eventos de EEM
•
Extensiones de Comandos de Tcl de Información de Eventos de EEM
•
Comando Extension Tcl del evento EEM
•
Extensiones de Comandos Tcl de Acciones de EEM
•
Extensiones de Comandos de Tcl de Utilidades de EEM
•
Extensiones del Comando Tcl de Información del Sistema EEM
•
Extensiones del Comando Debug de la Biblioteca EEM
•
Extensiones de Comando de la Biblioteca SMTP
•
Extensiones de Comando de la Biblioteca CLI
•
Extensiones de Comando de la Biblioteca de Contexto Tcl
•
Extensiones del comando Tcl del registro del evento para EEM 3,2
Observepara todas las Extensiones del comando EEM Tcl, si hay un error, la cadena vuelta del resultado Tcl contiene la
información del error.
Observelos argumentos para los cuales no se especifica ningún rango numérico lleva un número entero a partir de la 2147483648 2147483647, inclusivo.
Utilizan a los convenios siguientes para el sintaxis documentado en las páginas de la extensión del comando Tcl:
•
Un argumento optativo se muestra dentro de los corchetes, por ejemplo:
[type?]
•
¿Un signo de interrogación? representa una variable que se ingresará.
•
Las opciones entre los argumentos son representadas por los tubos, por ejemplo:
prioridad baja|normal|alto
Extensiones de Comandos Tcl de Registro de Eventos de EEM
•
event_register_appl
•
event_register_cli
•
event_register_counter
•
event_register_gold
•
event_register_interface
•
event_register_ipsla
•
event_register_nf
•
event_register_ioswdsysmon
•
event_register_none
•
event_register_oir
•
event_register_process
•
event_register_resource
•
event_register_rf
•
el event_register_routing
•
event_register_rpc
•
event_register_snmp
•
event_register_snmp_notification
•
event_register_snmp_object
•
event_register_syslog
•
event_register_timer
•
event_register_timer_subscriber
•
event_register_track
•
event_register_wdsysmon
event_register_appl
Registros para un evento de aplicación. Utilice esta extensión del comando Tcl para funcionar con una directiva cuando un
evento de aplicación se acciona después de la ejecución de otra directiva event_publish de una extensión del comando Tcl;
event_publish la extensión del comando publica un evento de aplicación.
Para registrarse para un evento de aplicación, un subsistema debe ser especificado. Una directiva Tcl o el administrador del
evento integrado interno (EEM) API puede publicar un evento de aplicación. Si el evento está siendo publicado por una
directiva, el argumento del sub_system que es reservado para una directiva es 798.
Sintaxis
event_register_appl [tag ?] sub_system ? type ? [queue_priority low|normal|high|last]
[maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
sub_system
Número (obligatorio) asignado a la directiva EEM que publicó el evento de aplicación.
El número se fija a 798 porque el resto de los números son reservados para el uso de
Cisco. Si este argumento no se especifica, se corresponden con todos los
componentes.
tipo
Subtipo (obligatorio) del evento dentro del evento especificado. Los argumentos
sub_system y type identifican de forma única un evento de aplicación. Si este
argumento no se especifica, corresponden con a todos los tipos. Si usted especifica
este argumento, usted debe elegir un número entero entre 1 y 4294967295, inclusivo.
Debe haber una coincidencia del componente y del tipo entre event_publish la
extensión del comando y event_register_appl la extensión del comando para que la
publicación y el registro a trabajar.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Si existen las condiciones múltiples, el evento de aplicación será aumentado cuando se satisfacen todas las condiciones.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_cli
Registros para un evento CLI. Utilice esta extensión del comando Tcl para funcionar con una directiva cuando ingresan a un
comando CLI de un modelo específico basó en las coincidencias de patrones realizadas contra un comando CLI ampliado.
Observeal usuario puede ingresar un comando CLI abreviado, por ejemplo sh mem summary, y el analizador de sintaxis
ampliará el comando a show memory summary de realizar corresponder con.
Observelas funciones proporcionadas en el detector de evento CLI permite solamente una coincidencia en IOS CLI un
comando válido sí mismo del patrón de expresión normal. Esto no incluye el texto después de un carácter del tubo cuando
se utiliza el cambio de dirección.
Sintaxis
event_register_cli [tag ?] sync yes|no skip yes|no
[occurs ?] [period ?] pattern ? [default ?] [enter] [questionmark] [tab] [mode]
[queue_priority low|normal|high|last] [maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
sincronice
El Sí (obligatorio) A significa que la directiva (el evento publica) se ejecutará
síncrono con el comando CLI; un no significa que el evento publica será
asynchronously realizado con el comando CLI. El detector de evento será notificado
cuando la directiva completa el funcionamiento. El estado de salida de la directiva
indica independientemente de si el comando CLI debe ser ejecutado: si el estado
de salida es cero, así que significa que la directiva está ejecutada con éxito, no
ejecutarán al comando CLI; si no, ejecutarán al comando CLI.
salto
Obligatorio si existe el argumento del sincronizar es no y si el argumento del
sincronizar está “sí.” Si el argumento del salto está “sí,” significa que el comando
CLI no debe ser ejecutado. Si es el argumento del salto “no,” significa que el
comando CLI debe ser ejecutado.
Advierta cuando el argumento del salto está “sí,” los resultados
involuntarios puede ser producido si las Coincidencias de patrones se
hacen para los comandos configuration porque no ejecutarán al comando
CLI que hace juego la expresión normal.
ocurre
(Opcional) el número de acontecimientos antes del evento se aumenta. Si este
argumento no se especifica, el evento se aumenta en el primer acontecimiento. Si
se especifica este argumento, debe ser un número entero entre 1 y 4294967295,
inclusivo.
período
(Opcional) especifica una ventana de fecha y hora de mirada posterior en la cual
todos los eventos CLI deban ocurrir (ocurre la cláusula debe ser satisfecha) para
que un evento sea publicado (especificado en el formato del [.MMM]
SSSSSSSSSS, donde SSSSSSSSSS debe ser un número entero que representa
los segundos entre 0 y 4294967295, inclusivo, y donde el MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si este argumento
no se especifica, se utiliza el evento más reciente.
modelo
(Obligatorio) especifica la expresión normal usada para realizar las Coincidencias
de patrones del comando CLI.
predeterminado (Opcional) El período de tiempo durante el cual el detector de eventos de la CLI
espera a que salga la política (especificado en el formato SSSSSSSSSS[.MMM],
donde SSSSSSSSSS debe ser un número entero que represente los segundos
entre 0 y 4294967295, inclusive, y donde MMM debe ser un número entero que
represente los milisegundos entre 0 y 999). Si el período de tiempo predeterminado
expira antes de que salga la política, se ejecutará la acción predeterminada. La
acción predeterminada es ejecutar el comando. Si no se especifica este argumento,
el período de tiempo predeterminado se establece en 30 segundos.
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
•
queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
ingrese
(Opcional) especifica para realizar el emparejamiento del evento cuando el usuario
presiona tecla Enter (Intro). Cuando se utiliza este parámetro, la cadena de entrada
no será ampliada antes de corresponder con.
questionmark
¿(Opcional) especifica para realizar la coincidencia del evento cuando el usuario
presiona? clave. Cuando se utiliza este parámetro, la cadena de entrada no será
ampliada antes de corresponder con.
lengueta
(Opcional) especifica para realizar la coincidencia del evento cuando el usuario
pulsa el tabulador. Cuando se utiliza este parámetro, la cadena de entrada no será
ampliada antes de corresponder con.
modo
Los eventos (opcionales) serán generados solamente cuando el analizador de
sintaxis está en el modo especificado del analizador de sintaxis. Los modos
disponibles pueden ser mencionados usando show parser dump el comando CLI.
Se marca el parámetro del modo cuando de los parámetros optativos — ingrese,
questionmark, o lengueta — se especifica.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una
prioridad de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Si se especifican las condiciones múltiples, el evento CLI será aumentado cuando se corresponden con todas las condiciones.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Observeesta directiva se ejecuta antes de que ejecuten al comando CLI. Por ejemplo, suponga que el policy_CLI está
registrado para ejecutarse cuando copy se ingresa el comando. Cuando copy se ingresa el comando, el detector de
evento CLI encuentra las Coincidencias de patrones y acciona esta directiva para ejecutarse. Cuando los extremos de
la ejecución de la directiva, el detector de evento CLI determinan si copy el comando necesita ser ejecutado según
“sincronice”, “salte” (fije en la directiva), y el estado de salida de la ejecución de la directiva si está necesitado.
event_register_counter
Registros para un evento contrario como un editor y suscriptor. Utilice esta extensión del comando Tcl para funcionar con una
directiva en base de un contador Nombrado que cruza un umbral. Este contador de acontecimientos, como suscriptor, identifica
el nombre del en dirección contraria cuál quiere inscribir y depende de otra directiva o de otro proceso para manipular realmente
el contador. Por ejemplo, deje el policyB actuar como directiva contraria, mientras que las aplicaciones del policyA (aunque no
necesita ser una directiva contraria) register_counter counter_modify, o unregister_counter las Extensiones del comando
Tcl de manipular el contador definieron en el policyB.
Sintaxis
event_register_counter [tag ?] name ? entry_op gt|ge|eq|ne|lt|le entry_val ?
exit_op gt|ge|eq|ne|lt|le exit_val ? [queue_priority low|normal|high|last]
[maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
nombre
Nombre (obligatorio) del contador.
entry_op
Operador de comparación (obligatorio) de la entrada usado para comparar el valor de
contador actual con el valor de entrada; si es true, se generará un evento y se
inhabilitará el monitoreo del evento hasta que se cumplan los criterios de salida.
entry_val
Valor (obligatorio) con el cual el valor de contador actual se debe comparar para
decidir a si se aumenta el evento contrario.
exit_op
(Obligatorio) salga al operador de comparación usado para comparar el valor de
contador actual con el valor de la salida; si es verdadero, se rehabilitará el monitoreo
para este evento.
exit_val
Valor (obligatorio) con el cual el valor de contador actual se debe comparar para
decidir a si se cumplen los criterios de la salida.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_gold
Registros para un evento de falla genérico del diagnóstico en línea (ORO). Utilice esta extensión del comando Tcl para
funcionar con una directiva en base de un evento de falla genérico del diagnóstico en línea (ORO) para el indicador luminoso
LED amarillo de la placa muestra gravedad menor especificado y el subcard.
Sintaxis
event_register_gold card all|card_number
[subcard all|subcard_number]
[new_failure TRUE|FALSE]
[severity_major TRUE]
[severity_minor TRUE]
[severity_normal TRUE]
[action_notify TRUE|FALSE]
[testing_type [bootup|ondemand|schedule|monitoring]]
[test_name [testname]]
[test_id [testnumber]]
[consecutive_failure consecutive_failure_number]
[platform_action [action_flag]]
[maxrun ?]
[queue_priority low|normal|high|last]
[nice 0|1]
Argumentos
indicador luminoso LED
amarillo de la placa
muestra gravedad menor
(Obligatorio) especifica si todos los indicadores luminosos LED amarillo
de la placa muestra gravedad menor o un indicador luminoso LED
amarillo de la placa muestra gravedad menor debe ser monitoreados:
• carde todos — Especifica que todos los indicadores luminosos
LED amarillo de la placa muestra gravedad menor deben ser
monitoreados. Este es el valor predeterminado.
• número de placa — Especifica que el indicador luminoso LED
amarillo de la placa muestra gravedad menor identificado por el
número de placa del número debe ser monitoreado.
Este argumento se debe especificar para completar
event_register_gold la extensión del comando Tcl.
subcard
(Opcional) especifica que uno o más subcards deben ser monitoreados:
• subcard todo — Especifica que todos los subcards deben ser
monitoreados.
• subcard-numberSpecifies— que el subcard identificado por el
subcard-número del número debe ser monitoreado.
Si este argumento no se especifica, todos los subcards se monitorean
por abandono.
new_failure
(Opcional) especifica los criterios del evento basados en la nueva
información de falla de prueba del ORO:
• new_failure VERDAD — Especifica que el criterio del evento para
la nueva falla de prueba es verdad del ORO.
• new_failure FALSO — Especifica que el criterio del evento para la
nueva falla de prueba es falso del ORO.
Si este argumento no se especifica, la nueva información de falla de
prueba del ORO no se considera en los criterios del evento.
severity_major
(Opcional) especifica que los criterios del evento para el resultado del
diagnóstico hacen juego con el error principal de diagnóstico del ORO.
severity_minor
(Opcional) especifica que los criterios del evento para el resultado del
diagnóstico hacen juego con el error leve de diagnóstico del ORO.
severity_normal
(Opcional) especifica que los criterios del evento para el resultado del
diagnóstico hacen juego con normal de diagnóstico del ORO. Este es el
valor predeterminado.
action_notify
(Opcional) especifica los criterios del evento basados en la acción
notifican la información del ORO:
• action_notify VERDAD — Especifica que el criterio del evento
para la acción notifica es verdad del ORO.
• action_notify FALSO — Especifica que el criterio del evento para
la acción notifica es falso del ORO.
Si este argumento no se especifica, la acción notifica la información del
ORO no se considera en los criterios del evento.
testing_type
(Opcional) especifica los criterios del evento basados en los tipos de la
prueba del diagnóstico del ORO:
• bootup del testing_type — Especifica las pruebas de diagnóstico
que se están ejecutando en el bootup del sistema.
• ondemand del testing_type — Especifica las pruebas de
diagnóstico que se están ejecutando del CLI después de que el
indicador luminoso LED amarillo de la placa muestra gravedad menor
esté en línea.
• horario del testing_type — Especifica las pruebas de diagnóstico
programadas.
• supervisión del testing_type — Especifica las pruebas de
diagnóstico que se están ejecutando periódicamente en el fondo para
monitorear la salud del sistema.
Si este argumento no se especifica, la información de tipo de la prueba
del ORO no se considera en los criterios del evento y la directiva aplica a
toda la prueba los tipos de diagnóstico.
test_name
(Opcional) especifica los criterios del evento basados en el nombre de la
prueba:
• prueba-nombre del test_name — Especifica los criterios del
evento basados en la prueba con el prueba-nombre del nombre.
Si este argumento no se especifica, la información de nombre de la
prueba del ORO no se considera en los criterios del evento.
test_id
(Opcional) especifica los criterios del evento basados en la prueba ID:
• prueba-idSpecifies del test_id— los criterios del evento basados
en la prueba con la prueba-identificación del número de ID. El valor
máximo de la prueba-identificación es 65535.
Observeporque la prueba ID puede ser diferente para la misma
prueba en las placas de línea diferentes, la palabra clave del
test_name se debe utilizar generalmente en lugar de otro. Si la
prueba ID se especifica y está en conflicto con el nombre
especificado de la prueba, el nombre de la prueba sobregraba
la identificación de la prueba
Si este argumento no se especifica, la información ID de la prueba del
ORO no se considera en los criterios del evento.
consecutive_failure
(Opcional) especifica los criterios del evento basados en la información
de falla de prueba consecutiva del ORO:
• consecutivo-error-número del consecutive_failure — Especifica
que el criterio del evento está basado en el acontecimiento de las
fallas de prueba consecutivas del consecutivo-error-número.
Si este argumento no se especifica, la información de falla de prueba
consecutiva del ORO no se considera en los criterios del evento.
platform_action
(Opcional) especifica si el servicio repetido a la plataforma es necesario
cuando se corresponden con todos los criterios del evento. Cuando el
servicio repetido es necesario, la plataforma necesita registrar una
función de devolución de llamada con el registro proporcionado.
• acción-indicador-numberSpecifies del platform_action— que,
cuando el servicio repetido a la plataforma es necesario, la
información específica es especificada por el valor específico de la
plataforma del acción-indicador-número. El valor máximo del acciónindicador-número es 65535.
Notaestá hasta la plataforma para determinar qué medidas
necesitan ser tomadas basadas en el indicador.
Si este argumento no se especifica, no hay servicio repetido.
maxrun
(Opcional) especifica la época máxima del runt del script.
• MAX-funcionamiento-tiempo-número del maxrun — Especifica
que el tiempo de ejecución máximo del script es segundos del MAXfuncionamiento-tiempo-número. El valor máximo del MAXfuncionamiento-tiempo-número es 4294967295 segundos.
Si este argumento no se especifica, el tiempo de ejecución
predeterminado es 20 segundos.
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola
en el más bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en
cola en un nivel de prioridad mayor que la prioridad baja pero menos
que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola
en el más alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola
en el nivel de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se
publiquen los eventos.
Observeel argumento del queue_priority especifica la prioridad de
envío a cola, pero no la prioridad de ejecución, del script que es
registrado.
Si este argumento no se especifica, la prioridad de envío a cola
predeterminada es normal.
agradable
Configuración de prioridad (opcional) del tiempo de ejecución de la
directiva:
• 0 agradable — Especifica que la directiva está funcionada con en
el nivel de prioridad predeterminado del tiempo de ejecución.
• 1 agradable — Especifica que la directiva está funcionada con en
una prioridad del tiempo de ejecución que sea menos que la prioridad
predeterminada.
Si este argumento no se especifica, se utiliza la prioridad predeterminada
del tiempo de ejecución.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_interface
Registros para un evento del contador de la interfaz. Utilice esta extensión del comando Tcl para generar un evento cuando los
contadores de la interfaz especificada exceden los umbrales especificados.
Sintaxis
event_register_interface [tag ?] name ?
parameter ? entry_op gt|ge|eq|ne|lt|le
entry_val ? entry_val_is_increment TRUE|FALSE
entry_type value|increment|rate
[exit_comb or|and]
[exit_op gt|ge|eq|ne|lt|le]
[exit_val ?] [exit_val_is_increment TRUE|FALSE]
[exit_type value|increment|rate]
[exit_time ?] [poll_interval ?]
[average_factor ?] [queue_priority low|normal|high|last]
[maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la
extensión de comando Tcl del desencadenado para soportar múltiples
declaraciones de eventos dentro de un script Tcl.
nombre
(Obligatorio) el nombre de la interfaz que es monitoreada, por ejemplo,
Ethernet0/0. Las abreviaturas y los espacios no se permiten.
parámetro
(Obligatorio) el nombre del contador que es comparado como sigue:
• input_errors — Incluye los runts, los gigantes, ningún buffer, el CRC,
la trama, el overrun, y los conteos ignorados. Otros errores relacionados
a la entrada pueden también hacer la cuenta de errores de entrada ser
aumentado, y algunos datagramas pueden tener más de un error; por lo
tanto, esta suma puede no equilibrar con la suma de cuentas de error de
entrada enumeradas.
• input_errors_crc — El Cyclic Redundancy Checksum generado por la
estación o el dispositivo en el extremo LAN que origina no hace juego la
suma de comprobación calculada de los datos recibidos.
• input_errors_frame — El número de paquetes recibió
incorrectamente tener error crc y un número no entero de octetos.
• input_errors_overrun — La cantidad de veces el hardware de
recepción no podía dar los datos recibidos a un búfer de hardware
porque la velocidad de entrada excedió la capacidad del receptor de
manejar los datos.
• input_packets_dropped — Número de paquetes caídos debido a una
cola de entrada completa.
• interface_resets — Cantidad de veces que una interfaz se ha
reajustado totalmente.
• output_buffer_failures — Número de buffers fallados y de cantidad de
búfers intercambiados hacia fuera.
• output_buffer_swappedout — Número de paquetes intercambiados al
DRAM.
parámetro (continuo)
• output_errors — Suma de todos los errores que previnieron la
transmisión final de la interfaz de los de los datagramas que era
examinada. Observe que esto puede no equilibrar con la suma de los
errores de salida enumerados, porque algunos datagramas pueden tener
más de un error, y otros pueden tener errores que no entren en las
categorías específicamente tabuladas unas de los.
• output_errors_underrun — La cantidad de veces que el transmisor se
ha estado ejecutando más rápidamente que el router puede dirigir.
• output_packets_dropped — Número de paquetes caídos debido a
una salida de cola completa.
• receive_broadcasts — Número de broadcast o de paquetes de
multidifusión recibidos por la interfaz.
• receive_giants — Número de paquetes se desechan que porque
exceden los tamaños máximos de paquete del media.
• receive_rate_bps — La interfaz recibe la tarifa en los bytes por
segundo.
• receive_rate_pps — La interfaz recibe la tarifa en los paquetes por
segundo.
• receive_runts — Número de paquetes se desechan que porque son
más pequeños que los tamaños mínimos de paquete del media.
• receive_throttle — Cantidad de veces que el receptor en el puerto fue
inhabilitado, posiblemente debido al buffer o la sobrecarga del
procesador.
• confiabilidad — Confiabilidad de la interfaz como una parte de 255
(255/255 es el 100 por ciento de confiabilidad), calculada como promedio
exponencial durante 5 minutos.
• rxload — Reciba el índice de la interfaz como una parte de 255
(255/255 es el 100 por ciento).
• transmit_rate_bps — La interfaz transmite la tarifa en los bytes por
segundo.
• transmit_rate_pps — La interfaz transmite la tarifa en los paquetes
por segundo.
• txload — Transmita el índice de la interfaz como una parte de 255
(255/255 es el 100 por ciento).
entry_op
(Obligatorio) el operador de comparación usado para comparar el valor
actual de la interfaz con el valor de entrada; si es true, se generará un
evento y se inhabilitará el monitoreo del evento hasta que se cumplan los
criterios de salida.
entry_val
(Obligatorio) el valor en el cual el evento será accionado.
entry_val_is_increment (Obligatorio) si es VERDAD, el campo entry_val se trata como diferencia
ampliada y se compara con la diferencia entre el valor de contador actual y
el valor cuando el evento era el verdad más reciente (la primera muestra
sondeada si esto es un nuevo evento). Un valor negativo verifica la
diferencia incremental para un contador que está disminuyendo. Si es
FALSO, el campo entry_val se compara contra el valor de contador actual.
Observeen el Cisco IOS Release 12.4(20)T, se desaprueba esta
palabra clave, y si está especificado, el sintaxis se convierte en el
sintaxis equivalente de la palabra clave del tipo de entrada.
tipo de entrada
Especifica un tipo de operación que se aplicará al ID de objeto especificado
por el argumento entry-val.
El valor se define como el valor real del argumento entry-val.
El incremento utiliza el campo entry-val como una diferencia incremental, y
entry-val se compara con la diferencia entre el valor del contador actual y el
valor cuando se desencadenó por última vez el evento (o la primera muestra
consultada si se trata de un nuevo evento). Un valor negativo verifica la
diferencia incremental para un contador que está disminuyendo.
La velocidad se define como la tasa media de cambio durante un período de
tiempo. El período de tiempo es el valor de factor-promedio multiplicado por
el valor de intervalo-sondeo. En cada intervalo de sondeo la diferencia entre
la muestra actual y la muestra anterior se toma y se registra como valor
absoluto. Una media de las muestras anteriores del valor del factor medio se
toma como velocidad de cambio.
exit_comb
(Opcional) utilizado para indicar la combinación de pruebas de la condición
de la salida requeridas para rearmar el activador del evento; si y especifican
al operador, salga el valor y las pruebas del tiempo de la salida deben ser
verdades causar rearman; si o especifican al operador, o salga el valor o las
pruebas del tiempo de la salida pueden ser verdades hacer el monitoreo de
evento ser rearmado.
exit_op
(Opcional) el operador de comparación usado para comparar el valor actual
de la interfaz con el valor de la salida; si es verdadero, se rehabilitará el
monitoreo para este evento.
exit_val
(Opcional) El valor en el cual el evento se rearma para ser monitoreado otra
vez.
exit_val_is_increment
(Opcional) si es VERDAD, el campo exit_val se trata como diferencia
ampliada y se compara con la diferencia entre el valor de contador actual y
el valor cuando el evento era el más reciente verdad. Un valor negativo
verifica la diferencia incremental para un contador que está disminuyendo.
Si es FALSO, el campo exit_val se compara contra el valor de contador
actual.
Observeen el Cisco IOS Release 12.4(20)T, se desaprueba esta
palabra clave, y si está especificado, el sintaxis se convierte en el
sintaxis equivalente de la palabra clave del salida-tipo.
salida-tipo
(Opcional) Especifica un tipo de operación que se aplicará al ID de objeto
especificado por el argumento exit-val. Si no se especifica, se supone el
valor.
El valor se define como el valor real del argumento exit-val.
El incremento utiliza el campo exit-val como una diferencia incremental, y
exit-val se compara con la diferencia entre el valor del contador actual y el
valor cuando se desencadenó por última vez el evento (o la primera muestra
consultada si se trata de un nuevo evento). Un valor negativo verifica la
diferencia incremental para un contador que está disminuyendo.
La velocidad se define como la tasa media de cambio durante un período de
tiempo. El período de tiempo es el valor de factor-promedio multiplicado por
el valor de intervalo-sondeo. En cada intervalo de sondeo la diferencia entre
la muestra actual y la muestra anterior se toma y se registra como valor
absoluto. Una media de las muestras anteriores del valor del factor medio se
toma como velocidad de cambio.
exit_time
(Opcional) el período de tiempo en el cual el evento se rearma para ser
monitoreado otra vez (especificado en el formato del [.MMM] SSSSSSSSSS,
donde SSSSSSSSSS debe ser un número entero que representa los
segundos entre 0 y 4294967295, inclusivo, y donde el MMM debe ser un
número entero que representa los milisegundos entre 0 y 999).
poll_interval
(Opcional) la frecuencia usada para recoger las muestras (especificadas en
el formato del [.MMM] SSSSSSSSSS, donde SSSSSSSSSS debe ser un
número entero que representa los segundos entre 60 y 4294967295,
inclusivo, y donde el MMM debe ser un número entero que representa los
milisegundos entre 0 y 999). El valor del intervalo de encuesta no debe ser
menos de 1 segundo. El valor por defecto es 1 segundo.
medio-factor
(Opcional) Número dentro del rango de 1 a 64 utilizado para calcular el
período usado para los cálculos basados en velocidad. El valor de factorpromedio se multiplica por el valor intervalo-sondeo para derivar el período
en milisegundos. El valor del factor de promedio mínimo es 1.
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en
el más bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en
cola en un nivel de prioridad mayor que la prioridad baja pero menos que
la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en
el más alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en
el nivel de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen
los eventos.
Observeel argumento del queue_priority especifica la prioridad de
envío a cola, pero no la prioridad de ejecución, del script que es
registrado.
Si este argumento no se especifica, la prioridad de envío a cola
predeterminada es normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el
formato SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número
entero que representa los segundos entre 0 y 4294967295, inclusive, y
MMM debe ser un número entero que representa los milisegundos entre 0 y
999). Si no se especifica este argumento, se utiliza el límite de tiempo de
ejecución predeterminado de 20 segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la
política. Cuando el argumento nice se establece en 1, la política se ejecuta
con una prioridad de tiempo de ejecución menor que la prioridad
predeterminada. El valor predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_ioswdsysmon
Registros para un evento de IOSWDSysMon. Utilice esta extensión del comando Tcl para generar un evento cuando una tarea
del Cisco IOS excede los umbrales específicos de la utilización de la CPU o de la memoria. Una tarea del Cisco IOS se llama un
proceso del Cisco IOS en el Cisco IOS nativo.
Sintaxis
event_register_ioswdsysmon [tag ?] [timewin ?] [sub12op and|or] [sub1 ?] [sub2 ?]
[queue_priority low|normal|high|last] [maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
timewin
(Opcional) define la ventana de fecha y hora dentro de la cual todos los subevents
deben ocurrir para que un evento sea generado (especificado en el formato del
[.MMM] SSSSSSSSSS, donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusivo, y donde el MMM debe ser
un número entero que representa los milisegundos entre 0 y 999).
sub12_op
(Opcional) el operador de la combinación para la comparación entre 1 subevent y 2.
subevent.
sub1
(Opcional) la 1 especificación subevent.
sub2
(Opcional) la especificación subevent 2.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Sintaxis de subevento
cpu_proc path ? taskname ? op gt|ge|eq|ne|lt|le val ? [period ?]
mem_proc path ? taskname ? op gt|ge|eq|ne|lt|le val ? [is_percent TRUE|FALSE] [period ?]
Argumentos de Subevent
cpu_proc
(Obligatorio) especifica el uso de una colección de la muestra de estadísticas de la CPU.
trayectoria Imágenes (obligatorias) de la modularidad del software solamente. La cadena de
caracteres del proceso POSIX que contiene el planificador de trabajos del Cisco IOS que
se monitoreará. Por ejemplo, /sbin/cdp2.iosproc.
taskname (Obligatorio) el nombre de la tarea del Cisco IOS de ser monitoreado.
op
(Obligatorio) el operador de comparación usado para comparar la muestra recogida del
uso con el valor especificado; si es verdadero, se accionará un evento.
val
(Obligatorio) el valor que se comparará.
período
(Opcional) El período de tiempo que se dedicará a un promedio de las muestras de
recolección (especificado en formato SSSSSSSSSS[.MMM], donde SSSSSSSSSS debe
ser un número entero que represente los segundos entre 0 y 4294967295, ambos
inclusive, y MMM debe ser un número entero que represente los milisegundos entre 0 y
999). Si no se especifica este argumento, se utiliza la muestra más reciente.
mem_proc (Obligatorio) especifica el uso de una colección de la muestra de estadísticas de la
memoria.
is_percent (Opcional) si el valor especificado es un porcentaje.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_ipsla
Se registra para un evento que sea accionado por event ipsla el comando. Utilice este comando Tcl de publicar un evento
cuando se acciona una reacción IPSLA. El ID de grupo o la operación ID se requiere para registrar el evento.
Sintaxis
event_register_ipsla [tag ?] group_name ? operation_id ? [reaction_type ?]
[dest_ip_addr ?][queue_priority low|normal|high|last] [maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la
extensión de comando Tcl del desencadenado para soportar múltiples
declaraciones de eventos dentro de un script Tcl.
group_name
(Obligatorio) especifica el nombre del grupo IP SLA.
operation_id
(Obligatorio) especifica el número identificación de la operación IP SLA debe estar
en el rango a partir de la 1 a 2147483647.
reaction_type
(Opcional) especifica la reacción que se tomará para la operación especificada IP
SLA.
Tipo de reacción IP SLA — Una de las palabras claves siguientes puede ser
especificado: connectionLoss icpif jitterAvg jitterDSAvg jitterSDAvg
maxOfNegativeDS maxOfNegativeSD maxOfPositiveDS maxOfPositiveSD
mos packetLateArrival packetLossDS packetLossSD packetMIA
packetOutOfSequence rtt, timeout o verifyError puede ser especificado.
Tipo de reacción IP SLA. Una de las palabras claves siguientes puede ser
especificado:
•
connectionLoss
•
icpif
•
jitterAvg
•
jitterDSAvg
•
jitterSDAvg
•
maxOfNegativeDS
•
maxOfNegativeSD
•
maxOfPositiveDS
•
maxOfPositiveSD
•
MOS
•
packetLateArrival
•
packetLossDS
•
packetLossSD
•
packetMIA
•
packetOutOfSequence
•
RTT
•
descanso
•
verifyError
dest_ip_address (Opcional) especifica el IP Address de destino del puerto destino para el cual se
monitorean los eventos IP SLA.
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en
un nivel de prioridad mayor que la prioridad baja pero menos que la prioridad
alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 31536000, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una
prioridad de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_nf
Se registra para un evento cuando un evento del Netflow es accionado por event nf el comando. Utilice este comando Tcl de
publicar un evento cuando se acciona una reacción del Netflow.
Sintaxis
event_register_nf [tag ?] monitor_name ? event_type create|update|delete
exit_event_type create|update|delete event1-event4 ? [maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
monitor_name
(Obligatorio) el nombre del monitor del Netflow.
event_type
(Obligatorio) el tipo de evento a monitorear para el crear, la actualización, y el flujo
de la cancelación.
exit_event_type (Obligatorio) el tipo de evento (cree, borre, actualización) en quien el evento se
rearma para ser monitoreado otra vez.
event1- event4 (Obligatorio) especifica el evento y sus atributos para monitorear. Los valores
válidos son event1 event2 event3, y event4.
Las palabras claves subevent se pueden utilizar solamente, juntas, o en cualquier
combinación con uno a, pero cada palabra clave se puede utilizar solamente una
vez.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una
prioridad de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Sintaxis de subevento
field ? rate_interval ? event1 only entry_value ? entry_op eq|ge|gt|le|lt|wc
[exit_value ?] [exit_op eq|ge|gt|le|lt|wc] [exit_rate_interval ? event1 only]
Argumentos de Subevent
campo
(Obligatorio) especifica el atributo del caché o de campo que se monitoreará. Uno
de los atributos siguientes puede ser especificado:
•
counter {bytes | packets} — Especifica los campos contrarios.
• datalink {dot1q | mac} — Especifica los campos de la transmisión de
datos (layer2).
•
flow {direction | sampler} — Especifica el flujo que identifica los campos.
•
interface {input | output} — Especifica los campos de la interfaz.
•
ipv4 field-type—Especifica los campos del IPv4.
•
ipv6 field-type—Campos del IPv6
•
routing routing-attrribute — Especifica los atributos de la encaminamiento.
• timestamp sysuptime {first | last}— Especifica los campos del grupo
fecha/hora.
•
transport field-type—Especifica los campos de la capa de transporte.
rate_interval
(Obligatorio) especifica el valor del intervalo de la tarifa en los segundos usados
para calcular la tarifa. Este campo solo es válido para event1.
entry_value
(Obligatorio) especifica el campo o el valor de velocidad.
entry_op
(Obligatorio) especifica al operador del campo.
Los valores válidos del operador de comparación son:
•
eq - Igual a
•
ge - Mayor o igual que
•
gt - Mayor que
•
le - Menor o igual que
•
lt - Menor que
•
wc : Comodín
exit_value
(Opcional) El valor en el cual el evento se rearma para ser monitoreado otra vez.
exit_op
(Opcional) el operador de comparación usado para comparar el campo o el valor
de velocidad del evento actual con el valor de la salida; si es verdad, vuelven a
permitir al monitoreo de evento para este evento.
Los valores válidos del operador de comparación son:
•
eq - Igual a
•
ge - Mayor o igual que
•
gt - Mayor que
•
le - Menor o igual que
•
lt - Menor que
•
wc : Comodín
exit_rate_interval (Opcional) especifica el valor del intervalo de la tarifa de la salida en los segundos
usados para calcular el valor de velocidad de la salida. Este campo solo es válido
para event1.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_none
Se registra para un evento que sea accionado por event manager run el comando. Estos eventos son manejados por el
ningunos detector de evento ese las pantallas para este evento.
Sintaxis
event_register_none [tag ?] [queue_priority low|normal|high|last] [maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
•
queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_oir
Registros para un evento del Insertar/Remover en Línea (OIR). Utilice esta extensión del comando Tcl para funcionar con una
directiva en base de un evento aumentado cuando ocurre una placa de hardware OIR. Estos eventos son manejados por el
detector del evento OIR ese las pantallas para este evento.
Sintaxis
event_register_oir [tag ?] [queue_priority low|normal|high|last] [maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_process
Registros para un procesar evento. Utilice esta extensión del comando Tcl para funcionar con una directiva en base de un
evento aumentado cuando un proceso de la modularidad del Cisco IOS Software comienza o para. Estos eventos son
manejados por el detector de evento del administrador del sistema ese las pantallas para este evento. Esta extensión del
comando Tcl se soporta solamente en las imágenes de Software Modularity.
Sintaxis
event_register_process [tag ?] abort|term|start|user_restart|user_shutdown
[sub_system ?] [version ?] [instance ?] [path ?] [node ?]
[queue_priority low|normal|high|last] [maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
abort
Terminación (obligatoria) del proceso anormal. El proceso puede abortar debido a la
salida con un estado de salida no-cero, la recepción de una señal corazóngenerada, o la recepción de una señal SIGTERM o SIGKILL que no se envíe debido
a la petición del usuario.
término
Terminación de procesos normal (obligatoria).
comience
Comienzo (obligatorio) del proceso.
user_restart
Terminación de procesos (obligatoria) debido al pedido de reinicio de proceso del
comando CLI.
user_shutdown Terminación de procesos (obligatoria) debido a la petición de proceso de la matanza
del comando CLI.
sub_system
Número (opcional) asignado a la directiva EEM que publicó el procesar evento. El
número se establece en 798 porque todos los demás números están reservados
para el uso de Cisco.
versión
Número de la versión (opcional) del proceso asignado por el administrador de la
versión. Debe estar de la forma major_number.minor_number.level. Si está
especificado, cada componente del número de la versión debe ser un número
entero entre 1 y 4294967295, inclusivo.
caso
(Opcional) ID de instancia de proceso. Si está especificado, este argumento debe
ser un número entero entre 1 y 4294967295, inclusivo.
trayectoria
Cadena de caracteres (opcional) del proceso (una cadena de la expresión normal).
Si el valor del argumento del nombre del proceso contiene los espacios intercalados,
inclúyalo en las comillas dobles. Utilice la trayectoria “. *” hacer juego todos los
procesos.
nodo
(Opcional) el Nombre del nodo es una cadena que consiste en la palabra “nodo”
seguido por dos campos separados por un carácter de la raya vertical usando el
formato siguiente:
node<slot-number>/<cpu-number>
slot-number es el número de slot del hardware. cpu-number es el número de CPU
de hardware. Por ejemplo, el CPU de SP en una tarjeta de Supervisor de un Cisco
Catalyst 6500 Series Switch situado en el slot 0 se especificaría como node0/0. El
RP CPU en una placa supervisor en un Cisco Catalyst 6500 Series Switch situado
en el slot0 sería dirigido como node0/1. Si el argumento del nodo no se especifica,
la especificación predeterminada del nodo es siempre la coincidencia del patrón de
expresión normal * de representar todos los Nodos aplicables.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Si no se especifica un argumento opcional, el evento busca coincidencias con todos los valores posibles del argumento. Si se
especifican los argumentos múltiples, el procesar evento será aumentado cuando se corresponden con todas las condiciones.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_resource
Registros para un evento del administrador de recurso incrustado (ERM). Utilice esta extensión del comando Tcl para funcionar
con una directiva en base de un informe del evento ERM para una directiva especificada. Los eventos ERM son defendidos por
el detector de evento del recurso EEM, permitiendo que una directiva EEM sea funcionada con cuando una coincidencia ocurre
para la directiva especificada ERM.
Sintaxis
event_register_resource policy policy-name [queue_priority low|normal|high|last]
[maxrun ?] [nice 0|1]
Argumentos
directiva
(Obligatorio) especifica el uso de una directiva.
directivanombre
Nombre (obligatorio) de una directiva ERM.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_rf
Registros para un evento del recurso de la Redundancia (RF). Utilice esta extensión del comando Tcl para funcionar con una
directiva cuando ocurre una notificación de evento de la progresión o del estatus RF.
Sintaxis
event_register_rf [tag ?] event ?
[queue_priority low|normal|high|last]
[maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
evento
Nombre (obligatorio) del evento de la progresión o del estatus RF. Los valores
válidos son:
•
RF_PROG_ACTIVE
•
RF_PROG_ACTIVE_DRAIN
•
RF_PROG_ACTIVE_FAST = 200
•
RF_PROG_ACTIVE_PRECONFIG
•
RF_PROG_ACTIVE_POSTCONFIG
•
RF_PROG_EXTRALOAD
•
RF_PROG_HANDBACK
•
RF_PROG_INITIALIZATION
•
RF_PROG_PLATFORM_SYNC
•
RF_PROG_STANDBY_BULK
•
RF_PROG_STANDBY_COLD
•
RF_PROG_STANDBY_CONFIG
•
RF_PROG_STANDBY_FILESYS
•
RF_PROG_STANDBY_HOT
•
RF_PROG_STANDBY_OIR_SYNC_DONE
•
RF_REGISTRATION_STATUS
•
RF_STATUS_MAINTENANCE_ENABLE
•
RF_STATUS_MANUAL_SWACT
•
RF_STATUS_OPER_REDUNDANCY_MODE_CHANGE
•
RF_STATUS_PEER_COMM
•
RF_STATUS_PEER_PRESENCE
•
RF_STATUS_REDUNDANCY_MODE_CHANGE
•
RF_STATUS_SWACT_INHIBIT
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_routing
Se registra para un evento que sea accionado por event routing el comando. Estos eventos son manejados por el detector de
evento de la encaminamiento para publicar un evento cuando las entradas de la ruta cambian en la infraestructura del Routing
Information Base (RIB). Utilice esta extensión del comando Tcl para funcionar con un política de ruteo para este script. El IP
Address de red para que la ruta sea monitoreada debe ser especificado.
Sintaxis
event_register_routing [tag ?] network ? length [ge|le|ne] [type add|remove|modify|all]
[protocol ?] [queue_priority normal|low|high|last] [maxrun ?] [nice {0 | 1}]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
red
Especifica el IP Address de red. El network number puede ser cualquier dirección o
prefijo IP válido.
longitud
Especifica la longitud de la máscara de la red en los bits. La máscara de bits puede
ser un número a partir de la 0 a 32.
• ge — (Opcional) especifica la longitud del prefijo mínima que se
corresponderá con. ge La palabra clave representa mayor o igual operador.
• le — (Opcional) especifica la longitud del prefijo máxima que se
corresponderá con. le La palabra clave representa inferior o igual operador.
• ne — (Opcional) especifica la longitud del prefijo que no se corresponderá
con. ne La palabra clave representa no el igual al operador.
Cuando ge, le y ne las palabras claves no se configuran, un exacto - la coincidencia
de la longitud de la red se procesa.
tipo
(Opcional) especifica el activador deseado de la directiva. Las opciones del tipo son
add remove modify, y all. El valor por defecto es all.
protocolo
(Opcional) especifica el valor del protocolo para la red que es monitoreada.
Uno de los protocolos siguientes puede ser utilizado: all bgp connected eigrp isis
iso-igrp mobile odr ospf rip, y static. El valor por defecto es all.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_rpc
Se registra para un evento que sea accionado por el comando de la llamada a procedimiento remoto (RPC) EEM SSH. Estos
eventos son manejados por el detector del evento RPC ese las pantallas para este evento. Utilice esta extensión del comando
Tcl para funcionar con una directiva RPC para este script.
Sintaxis
event_register_rpc [queue_priority {normal | low | high | last}] [maxrun <sec.msec>] [nice
{0 | 1}] [default <sec.msec>]
Argumentos
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una
prioridad de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
predeterminado (Opcional) El período de tiempo durante el cual el detector de eventos de la CLI
espera a que salga la política (especificado en el formato SSSSSSSSSS[.MMM],
donde SSSSSSSSSS debe ser un número entero que represente los segundos
entre 0 y 4294967295, inclusive, y donde MMM debe ser un número entero que
represente los milisegundos entre 0 y 999). Si el período de tiempo predeterminado
expira antes de que salga la política, se ejecutará la acción predeterminada. La
acción predeterminada es ejecutar el comando. Si no se especifica este argumento,
el período de tiempo predeterminado se establece en 30 segundos.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_snmp
Registros para un evento de las estadísticas del Simple Network Management Protocol (SNMP). Utilice esta extensión del
comando Tcl para funcionar con una directiva cuando un contador dado especificado por un ID del objeto SNMP (oid) cruza un
umbral definido.
Sintaxis
event_register_snmp [tag ?] oid ? get_type exact|next
entry_op gt|ge|eq|ne|lt|le entry_val ?
entry_type value|increment|rate
[exit_comb or|and]
[exit_op gt|ge|eq|ne|lt|le] [exit_val ?]
[exit_type value|increment|rate]
[exit_time ?] poll_interval ? [average_factor ?]
[queue_priority low|normal|high|last]
[maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
oid
Número (obligatorio) OID de elemento de datos en la notación del punto SNMP (por
ejemplo, 1.3.6.1.2.1.2.1.0). Los tipos de OIDs permitidos son:
•
COUNTER_TYPE
•
COUNTER_64_TYPE
•
GAUGE_TYPE
•
INTEGER_TYPE
•
OCTET_PRIM_TYPE
•
OPAQUE_PRIM_TYPE
•
TIME_TICKS_TYPE
entry_op
Operador de comparación (obligatorio) de la entrada usado para comparar el valor de
datos actual OID con el valor de entrada; si es true, se generará un evento y se
inhabilitará el monitoreo del evento hasta que se cumplan los criterios de salida.
get_type
El tipo (obligatorio) de SNMP consigue la operación que necesita ser aplicada al OID
especificado. Si el argumento del get_type es “exacto,” el valor del OID especificado
se extrae; si el argumento del get_type está “después,” el valor del sucesor
lexicográfico al OID especificado se extrae.
entry_val
Valor (obligatorio) con el cual el valor de datos actual del oid se debe comparar para
decidir a si se aumenta el evento SNMP.
tipo de
entrada
Especifica un tipo de operación que se aplicará al ID de objeto especificado por el
argumento entry-val.
El valor se define como el valor real del argumento entry-val.
El incremento utiliza el campo entry-val como una diferencia incremental, y entry-val
se compara con la diferencia entre el valor del contador actual y el valor cuando se
desencadenó por última vez el evento (o la primera muestra consultada si se trata de
un nuevo evento). Un valor negativo verifica la diferencia incremental para un
contador que está disminuyendo.
La velocidad se define como la tasa media de cambio durante un período de tiempo.
El período de tiempo es el valor de factor-promedio multiplicado por el valor de
intervalo-sondeo. En cada intervalo de sondeo la diferencia entre la muestra actual y
la muestra anterior se toma y se registra como valor absoluto. Una media de las
muestras anteriores del valor del factor medio se toma como velocidad de cambio.
exit_comb
(Opcional) salga al operador de la combinación usado para indicar la combinación de
pruebas de la condición de la salida requeridas decidir si se cumplen los criterios de
la salida para poder volver a permitir el monitoreo de evento. Si es “y,” el valor de la
salida y las pruebas del tiempo de la salida se deben pasar para cumplir los criterios
de la salida. Si es “o,” el valor de la salida o las pruebas del tiempo de la salida se
puede pasar para cumplir los criterios de la salida.
Cuando es el exit_comb “y,” el exit_op, y la necesidad exit_val (del exit_time) existen.
Cuando es el exit_comb “o,” (exit_op y exit_val) o (exit_time) debe existir.
exit_op
(Opcional) salga al operador de comparación usado para comparar el valor de datos
actual del oid con el valor de la salida; si es verdadero, se rehabilitará el monitoreo
para este evento.
exit_val
Valor (opcional) con el cual el valor de datos actual del oid se debe comparar para
decidir a si se cumplen los criterios de la salida.
salida-tipo
(Opcional) Especifica un tipo de operación que se aplicará al ID de objeto
especificado por el argumento exit-val. Si no se especifica, se supone el valor.
El valor se define como el valor real del argumento exit-val.
El incremento utiliza el campo exit-val como una diferencia incremental, y exit-val se
compara con la diferencia entre el valor del contador actual y el valor cuando se
desencadenó por última vez el evento (o la primera muestra consultada si se trata de
un nuevo evento). Un valor negativo verifica la diferencia incremental para un
contador que está disminuyendo.
La velocidad se define como la tasa media de cambio durante un período de tiempo.
El período de tiempo es el valor de factor-promedio multiplicado por el valor de
intervalo-sondeo. En cada intervalo de sondeo la diferencia entre la muestra actual y
la muestra anterior se toma y se registra como valor absoluto. Una media de las
muestras anteriores del valor del factor medio se toma como velocidad de cambio.
exit_time
Número (opcional) de unidades del temporizador POSIX después de que se aumente
un evento cuando habilitarán al monitoreo de evento otra vez. Especificado en el
formato del [.MMM] SSSSSSSSSS donde SSSSSSSSSS debe ser un número del
número entero que representa los segundos entre 0 y 4294967295, inclusivo. El
MMM representa los milisegundos y debe ser un número del número entero entre 0 y
999.
poll_interval
Intervalo (obligatorio) entre las encuestas consecutivas en las unidades del
temporizador POSIX. El intervalo se fuerza actualmente para ser por lo menos 1
segundo (especificado en el formato del [.MMM] SSSSSSSSSS, donde
SSSSSSSSSS debe ser un número entero que representa los segundos entre 0 y
4294967295, inclusivo, y donde el MMM debe ser un número entero que representa
los milisegundos entre 0 y 999).
medio-factor
(Opcional) Número dentro del rango de 1 a 64 utilizado para calcular el período
usado para los cálculos basados en velocidad. El valor de factor-promedio se
multiplica por el valor intervalo-sondeo para derivar el período en milisegundos. El
valor del factor de promedio mínimo es 1.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_snmp_notification
Registros para un evento del desvío de la notificación del Simple Network Management Protocol (SNMP). Utilice esta extensión
del comando Tcl para funcionar con una directiva cuando un SNMP trap con el ID del objeto especificado SNMP (oid) se
encuentra en una interfaz específica o diríjala. snmp-server manager El comando CLI debe ser habilitado para que las
notificaciones SNMP trabajen usando las directivas Tcl.
Sintaxis
event_register_snmp_notification [tag ?] oid ? oid_val ?
op {gt|ge|eq|ne|lt|le}
[maxrun ?]
[src_ip_address ?]
[dest_ip_address ?]
[queue_priority {normal|low|high|last}]
[maxrun ?]
[nice {0|1}]
[default ?]
[direction {incoming|outgoing}]
[msg_op {drop|send}]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la
extensión de comando Tcl del desencadenado para soportar múltiples
declaraciones de eventos dentro de un script Tcl.
oid
Número (obligatorio) OID del elemento de datos en la notación del punto SNMP
(por ejemplo, 1.3.6.1.2.1.2.1.0). Si el OID especificado termina con un punto (.),
después todos los OID que comienzan con el número OID antes de que se
corresponda con el punto. Los tipos de OIDs permitidos son:
•
COUNTER_TYPE
•
COUNTER_64_TYPE
•
GAUGE_TYPE
•
INTEGER_TYPE
•
OCTET_PRIM_TYPE
•
OPAQUE_PRIM_TYPE
•
TIME_TICKS_TYPE
oid_val
Valor (obligatorio) OID con el cual el valor de datos actual OID se debe comparar
para decidir a si se aumenta el evento SNMP.
op
Operador de comparación (obligatorio) usado para comparar el valor de datos
actual OID con el valor de datos de la unidad de datos del protocolo SNMP (PDU)
OID; si esto es verdad, se aumenta un evento.
maxrun
Tiempo de ejecución máximo (opcional) del script (especificado en el formato del
[.mmm] de los ssssssss, donde los ssssssss deben ser un número entero que
representa los segundos entre 0 y 31536000, inclusivo, y donde mmm debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
src_ip_address
Dirección IP de origen (opcional) donde el desvío de la notificación SNMP origina.
El valor predeterminado es all; se fija para recibir los desvíos de la notificación
SNMP de todos los IP Addresses.
dest_ip_address IP Address de destino (opcional) donde se envía el desvío de la notificación SNMP.
El valor predeterminado es all; se fija para recibir el SNMP traps de todos los IP
Address de destino.
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en
un nivel de prioridad mayor que la prioridad baja pero menos que la prioridad
alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si más de un script se registra con el conjunto del argumento del
queue_priority_last, estos scripts ejecutarán en la orden en la cual se publican los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
predeterminado (Opcional) especifica el período de tiempo en los segundos durante los cuales el
detector del evento de notificación SNMP espera la directiva para salir. El período
de tiempo se especifica en el formato del [.mmm] de los ssssssssss, donde los
ssssssssss deben ser un número entero que representa los segundos entre 0 y
4294967295 y mmm deben ser un número entero que representa los milisegundos
entre 0 y 999.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una
prioridad de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
dirección
(Opcional) la dirección del SNMP trap entrante o saliente o informa al PDU para
filtrar. El valor predeterminado es entrante.
msg_op
(Opcional) Paso a seguir encendido El SNMP PDU (descenso o lo envía) una vez
que se acciona el evento. El valor predeterminado es envía.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_snmp_object
Registros para un evento del objeto del Simple Network Management Protocol (SNMP). Utilice esta extensión del comando Tcl
para substituir el valor cuando un SNMP con el SNMP-objeto especificado ID (OID) se encuentra en una interfaz específica o
diríjala.
Sintaxis
event_register_snmp_object oid ?
type {int|uint|counter|counter64|gauge|ipv4||oid|string}
sync {yes|no}
skip {yes|no}
[istable {yes|no}]
[default ?]
[queue_priority {normal|low|high|last}]
[maxrun ?]
[nice {0|1}]
Argumentos
oid
Número (obligatorio) OID del elemento de datos en la notación del punto SNMP
(por ejemplo, 1.3.6.1.2.1.2.1.0). Si el OID especificado termina con un punto (.),
después todos los OID que comienzan con el número OID antes de que se
corresponda con el punto. Los tipos de OIDs permitidos son:
•
COUNTER_TYPE
•
COUNTER_64_TYPE
•
GAUGE_TYPE
•
INTEGER_TYPE
•
OCTET_PRIM_TYPE
•
OPAQUE_PRIM_TYPE
•
TIME_TICKS_TYPE
tipo
Tipo de valor (obligatorio) OID.
sincronice
El Sí (obligatorio) A significa que la directiva EEM será notificada. Si el
set_exit_status del applet o el valor devuelto Tcl es 0, después el SNMP manejará
la petición. Si el valor devuelto es 1, el SNMP utilizará el valor proporcionado por la
directiva para la petición get y no procesará la petición del conjunto. Un no significa
que EEM no será notificado y el SNMP manejará la petición.
Solamente un OID se puede asociar a una directiva síncrona. Sin embargo, las
directivas síncronas múltiples se pueden registrar para el mismo OID.
salto
Obligatorio si existe el argumento del sincronizar es no y si el argumento del
sincronizar está “sí.” Si el argumento del salto está “sí,” significa que el SNMP
manejará la petición. Si es el argumento del salto “no,” significa que actuará el
SNMP como si no exista el objeto.
istable
El valor (opcional) A del no significa el OID es objeto escalar, y el Sí significa que el
OID es objeto de la tabla.
predeterminado (Opcional) el período de tiempo durante el cual el detector de evento del objeto
SNMP espera la directiva para salir (especificado en el formato del [.mmm] de los
ssssssssss, donde los ssssssssss deben ser un número entero que representa los
segundos entre 0 y 4294967295, inclusivo, y donde mmm debe ser un número
entero que representa los milisegundos entre 0 y 999). Si el período de tiempo
predeterminado expira antes de que salga la política, se ejecutará la acción
predeterminada. La acción predeterminada es procesar el conjunto o la petición get
normalmente por el subsistema SNMP. Si no se especifica este argumento, el
período de tiempo predeterminado se establece en 30 segundos.
maxrun
Tiempo de ejecución máximo (opcional) del script (especificado en el formato del
[.mmm] de los ssssssss, donde los ssssssss deben ser un número entero que
representa los segundos entre 0 y 31536000, inclusivo, y donde mmm debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si más de un script se registra con el conjunto del argumento del
queue_priority_last, estos scripts ejecutarán en la orden en la cual se publican los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una
prioridad de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_syslog
Registros para un evento de syslog. Utilice esta extensión del comando Tcl para accionar una directiva cuando un mensaje de
Syslog de un modelo específico se registra después de algunos acontecimientos durante cierto período de tiempo.
Sintaxis
event_register_syslog [tag ?] [occurs ?] [period ?] pattern ?
[priority all|emergencies|alerts|critical|errors|warnings|notifications|
informational|debugging|0|1|2|3|4|5|6|7]
[queue_priority low|normal|high|last]
[severity_fatal] [severity_critical] [severity_major]
[severity_minor] [severity_warning] [severity_notification]
[severity_normal] [severity_debugging]
[maxrun ?] [nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
ocurre
El número (opcional) de acontecimientos antes del evento se aumenta; si no se
especifica, el evento se produce en la primera aparición. Si está especificado, el valor
debe ser mayor de 0.
período
Intervalo de tiempo (opcional), en los segundos y los milisegundos, durante los
cuales los uno o más acontecimientos deben ocurrir para aumentar un evento
(especificado en el formato del [.MMM] SSSSSSSSSS donde SSSSSSSSSS debe
ser un número del número entero que representa los segundos entre 0 y
4294967295, inclusivo, y donde el MMM representa los milisegundos y debe ser un
número del número entero entre 0 y 999). Si este argumento no se especifica, no hay
control del período aplicado.
modelo
Expresión normal (obligatoria) A usada para realizar las Coincidencias de patrones
del mensaje de Syslog. Este argumento es lo que utiliza la directiva para identificar el
mensaje de Syslog registrado.
prioridad
(Opcional) la prioridad de mensaje que se defenderá. Si se especifica este
argumento, sólo se defienden los mensajes que están en el nivel de prioridad de
registración especificado, o más bajo. Si este argumento no se especifica, la
prioridad predeterminada es 0.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a cola,
pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
severity_xxx
(Opcional) la gravedad del evento que se defenderá. Si se especifica este
argumento, sólo se defienden los mensajes que están en el nivel de gravedad
especificado. Vea el cuadro 15 para la asignación de nivel de gravedad para los
eventos de syslog.
Si se especifican las condiciones múltiples, el evento de syslog será aumentado cuando se corresponden con todas las
condiciones.
Palabra clave de la
gravedad
Prioridad del
Syslog
Descripción
severity_fatal
LOG_EMERG (0)
El sistema está inutilizable.
severity_critical
LOG_ALERT (1)
Condiciones críticas, atención inmediata
requerida.
severity_major
LOG_CRIT (2)
Condiciones importantes.
severity_minor
LOG_ERR (3)
Condiciones de menor importancia.
el severity_warning
LOG_WARNING (4)
Condiciones de advertencia.
severity_notification
LOG_NOTICE (5)
Notificación básica, mensajes de información.
severity_normal
LOG_INFO (6)
El evento normal, indica la vuelta a un estado
normal.
el severity_debugging
LOG_DEBUG (7)
Mensajes de debugging.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_timer
Crea un temporizador y se registra para un evento de temporización como un editor y suscriptor. Utilice esta extensión del
comando Tcl cuando hay una necesidad de accionar una directiva que sea específico o temporizador del tiempo basado. Este
temporizador del evento es editor del evento y un suscriptor. La pieza del editor indica las condiciones bajo las cuales el
temporizador Nombrado es salir. La pieza del suscriptor identifica el nombre del temporizador al cual el evento está
inscribiendo.
Observeel CRON y las especificaciones absolutas del tiempo trabajan el la hora local.
Sintaxis
event_register_timer [tag ?] watchdog|countdown|absolute|cron
[name ?] [cron_entry ?]
[time ?]
[queue_priority low|normal|high|last] [maxrun ?]
[nice 0|1]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
perro guardián (Obligatorio) Temporizador de Watchdog.
cuenta
descendiente
(Obligatorio) Temporizador de conteo regresivo.
absoluto
(Obligatorio) Temporizador absoluto.
cron
(Obligatorio) Temporizador de CRON.
nombre
Nombre (opcional) del temporizador.
cron_entry
(Opcional) debe ser especificado si especifican al tipo del temporizador CRON.
Necesidad no ser especificado si especifican a cualquier otro tipo del temporizador.
Un cron_entry es una entrada crontab parcial de UNIX (los primeros cinco campos)
según lo utilizado con el programa daemon cron de UNIX.
Una especificación cron_entry consiste en una cadena de texto con cinco campos.
Los campos son separados por los espacios. Los campos representan la Fecha y
hora en que los eventos de temporización CRON serán accionados. Los campos se
describen en el cuadro 16.
Los rangos de los números se permiten. Los rangos son dos números separados
con un guión. El rango especificado es inclusivo. Por ejemplo, 8-11 para una entrada
de la hora especifica la ejecución en las horas 8, 9, 10, y 11.
Un campo puede ser un asterisco (*), que siempre significa el “primero-último.”
Se permiten las listas. Una lista es un conjunto de números (o rangos) separados por
las comas. Ejemplos: el "1,2,5,9" y el "0-4,8-12".
Los valores del paso se pueden utilizar conjuntamente con los rangos. Después de
un rango con “/<number>” especifica los saltos del valor del número a través del
rango. Por ejemplo, el "0-23/2" se pueden utilizar en el campo de la hora para
especificar un evento que se accione cada otra hora. Los pasos también se permiten
después de un asterisco, así que si usted quiere decir “cada dos horas”, del uso el
"*/2".
Los nombres se pueden también utilizar para el mes y los campos del día de la
semana. Utilice las primeras tres cartas del día o del mes determinado (el caso no
hace materia). Los rangos o las listas de nombres no se permiten.
El día en el cual se acciona un evento de temporización se puede especificar por dos
campos: día del mes y día de la semana. Si ambos campos son restrictos (es decir,
no esté *), un evento será accionado cuando cualquier campo hace juego la hora
actual. Por ejemplo, "30 4 1,15 * el 5" haría un evento ser accionado en 4:30 mañana
en el 1r y el décimo quinto de cada mes, más cada viernes.
En vez de los primeros cinco campos, una de siete cadenas especiales puede
aparecer. Estas siete cadenas especiales se describen en el cuadro 17.
Ejemplo 1: "0 0 1,15 * el 1" accionaría un evento en la medianoche en la 1ra y la
décimo quinta de cada mes, así como el cada lunes. Para especificar los días por
solamente un campo, el otro campo se debe fijar a *; "0 0 * * el 1" accionaría un
evento en la medianoche solamente el lunes.
Ejemplo 2: "15 16 1 * *” accionaría un evento en 4:15 P.M. en el primer día de cada
mes.
Ejemplo 3: "0 12 * * el 1-5" accionaría un evento al mediodía el de lunes a viernes de
cada semana.
Ejemplo 4: “@weekly” accionaría un evento en la medianoche una vez por semana
el domingo.
hora
(Opcional) debe ser especificado si especifican a un tipo del temporizador con
excepción de CRON. Necesidad no ser especificado si especifican al tipo del
temporizador CRON. Para los temporizadores de watchdog y cuenta atrás, el
número de segundos y milisegundos hasta que el temporizador caduca; para el
temporizador absoluto, la época del calendario del vencimiento. El tiempo se
especifica en el formato del [.MMM] SSSSSSSSSS, donde SSSSSSSSSS debe ser
un número entero que representa los segundos entre 0 y 4294967295, inclusivo, y
donde el MMM debe ser un número entero que representa los milisegundos entre 0 y
999. Una fecha de vencimiento absoluta es el número de segundos y milisegundos
desde el 1 de enero de 1970. Si la fecha especificada ya ha pasado, el temporizador
caduca inmediatamente.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Campo
Valores permitidos
minuto
0-59
hora
0-23
día del mes
1-31
mes
1-12 (o los nombres, vea abajo)
día de la semana
0-7 (0 o 7 es Sun, o nombres; vea el cuadro 17)
String (cadena)
Significado
@yearly
Accione una vez al año, "0 0 1 1 *”.
@annually
Lo mismo que @yearly.
@monthly
Accione una vez al mes, "0 0 1 * *”.
@weekly
Accione una vez por semana, "0 0 * * el 0".
@daily
Accione una vez al día, "0 0 * * *”.
@midnight
Lo mismo que @daily.
@hourly
Activador una vez una hora, "0 * * * *”.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Vea también
event_register_timer_subscriber
event_register_timer_subscriber
Registros para un evento de temporización como suscriptor. Utilice esta extensión del comando Tcl para identificar el nombre
del temporizador al cual el temporizador del evento, como suscriptor, quiere inscribir. El temporizador del evento depende de
otra directiva o de otro proceso para manipular realmente el temporizador. Por ejemplo, deje el policyB actuar como política de
suscriptor del temporizador, pero el register_timer de las aplicaciones del policyA (aunque no necesita ser una directiva del
temporizador), el timer_arm, o las Extensiones del comando Tcl del timer_cancel para manipular el temporizador referido al
policyB.
Sintaxis
event_register_timer_subscriber watchdog|countdown|absolute|cron
name ? [queue_priority low|normal|high|last] [maxrun ?] [nice 0|1]
Argumentos
perro guardián (Obligatorio) Temporizador de Watchdog.
cuenta
descendiente
(Obligatorio) Temporizador de conteo regresivo.
absoluto
(Obligatorio) Temporizador absoluto.
cron
(Obligatorio) Temporizador de CRON.
nombre
Nombre (obligatorio) del temporizador.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Observeuna directiva EEM que los registros para un evento de temporización o un evento contrario puedan actuar como ambos
editor y suscriptor.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Vea también
event_register_timer
event_register_track
Registros para un evento del informe del subsistema del Rastreo de objetos del Cisco IOS. Utilice esta extensión del comando
Tcl para accionar una directiva en base de un informe del subsistema del Rastreo de objetos del Cisco IOS para un número
especificado del objeto.
Sintaxis
event_register_track ? [tag ?] [state up|down|any] [queue_priority low|normal|high|last]
[maxrun ?]
[nice 0|1]
Argumentos
¿? (representa (Obligatorio) Número de objeto de seguimiento en el rango de 1 a 500, ambos
un número)
inclusive.
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
estado
(Opcional) especifica que la transición seguida del objeto hará un evento ser
aumentada. Si up se especifica, un evento será aumentado cuando las transiciones
seguidas del objeto de un estado inactivo a un estado ascendente. Si down se
especifica, un evento será aumentado cuando las transiciones seguidas del objeto
de un estado ascendente a un estado inactivo. Si any se especifica, un evento será
aumentado cuando las transiciones seguidas del objeto a o desde ningunos estado.
queue_priority
(Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una
prioridad de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Si no se especifica un argumento opcional, el evento busca coincidencias con todos los valores posibles del argumento.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_register_wdsysmon
Registros para un evento del monitor de sistema de vigilancia. Utilice esta extensión del comando Tcl para registrarse para un
evento compuesto que sea una combinación de varios subevents o condiciones. Por ejemplo, usted puede utilizar este
comando de registrarse para la combinación de condiciones en donde el USO de la CPU de cierto proceso está sobre el 80 por
ciento y la memoria usada por el proceso es mayor del 50 por ciento de su asignación inicial. Esta extensión del comando Tcl se
soporta solamente en las imágenes de Software Modularity.
Sintaxis
event_register_wdsysmon [tag ?] [timewin ?]
[sub12_op and|or|andnot]
[sub23_op and|or|andnot]
[sub34_op and|or|andnot]
[sub1 subevent-description]
[sub2 subevent-description]
[sub3 subevent-description]
[sub4 subevent-description] [node ?]
[queue_priority low|normal|high|last]
[maxrun ?] [nice 0|1]
Cada argumento es independiente de la posición.
Observelas definiciones del operador: y (lógico y operación), o (lógico u operación), andnot (lógico y no operación). Por
ejemplo, "sub12_op y” se define como aumento un evento cuando es subevent 1 y 2 subevent son verdades;
"sub23_op o” se define como aumento un evento cuando la condición especificada en sub12_op es verdad o 3
subevent es verdades. La lógica se puede diagrammed usando:
si (((sub1 sub12_op sub2) sub23_op sub3) sub34_op sub4) es VERDAD, aumente el evento
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
timewin
La ventana de fecha y hora (opcional) dentro de la cual todos los subevents tiene
que ocurrir para que un evento sea generado (especificado en el formato del [.MMM]
SSSSSSSSSS, donde SSSSSSSSSS debe ser un número entero que representa
los segundos entre 0 y 4294967295, inclusivo, y donde el MMM debe ser un número
entero que representa los milisegundos entre 0 y 999).
sub12_op
Operador (opcional) de la combinación para la comparación entre 1 subevent y 2.
subevent.
sub23_op
Operador (opcional) de la combinación para la comparación entre 1 y 2 subevent y
3. subevent.
sub34_op
Operador (opcional) de la combinación para la comparación entre 1 y 2 subevent y 3
subevent y 4. subevent.
sub1
(Opcional) indica que 1 subevent se especifica.
subeventdescripción
Sintaxis (opcional) para el subevent.
sub2
(Opcional) indica que 2 subevent se especifica.
sub3
(Opcional) indica que 3 subevent se especifica.
sub4
(Opcional) indica que 4 subevent se especifica.
nodo
(Opcional) el Nombre del nodo que se monitoreará para las condiciones del
interbloqueo es una cadena que consiste en la palabra “nodo” seguido por dos
campos separados por un carácter de la raya vertical usando el formato siguiente:
node<slot-number>/<cpu-number>
slot-number es el número de slot del hardware. cpu-number es el número de CPU
de hardware. Por ejemplo, el CPU de SP en una tarjeta de Supervisor de un Cisco
Catalyst 6500 Series Switch situado en el slot 0 se especificaría como node0/0. El
RP CPU en una placa supervisor en un Cisco Catalyst 6500 Series Switch situado
en el slot0 sería dirigido como node0/1. Si el argumento del nodo no se especifica, la
especificación predeterminada del nodo es el nodo local en el cual se hace el
registro.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last"
establecido, estos scripts se ejecutarán en el orden en que se publiquen los
eventos.
Observeel argumento del queue_priority especifica la prioridad de envío a
cola, pero no la prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 4294967295, inclusive, y MMM debe ser un
número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Subevents
El sintaxis de las descripciones subevent puede ser uno de siete casos.
Para los argumentos en la descripción subevent, los apremios siguientes se aplican en el valor de los argumentos del número:
•
Para el dispatch_mgr, val debe ser un número entero entre 0 y 4294967295, inclusivo.
•
Para el cpu_proc y el cpu_tot, val debe ser un número entero entre 0 y 100, inclusivo.
• Para el mem_proc, el mem_tot_avail, y mem_tot_used, si es is_percent es FALSO, val debe ser un número entero entre
0 y 4294967295, inclusivo.
1. deadlock procname ?
Argumentos
procname La expresión normal (obligatoria) A que especifica el nombre del proceso que usted
desea monitorear para el interbloqueo condiciona. Este subevent ignorará la ventana de
fecha y hora incluso si se da.
2. dispatch_mgr [procname ?] [op gt|ge|eq|ne|lt|le] [val ?] [period ?]
Argumentos
procname Expresión normal (opcional) A que especifica el nombre del proceso que usted desea
monitorear para el estatus del dispatch_manager.
op
Operador de comparación (opcional) usado para comparar el número recogido de
eventos con el valor especificado; si es verdadero, se accionará un evento.
val
(Opcional) el valor con el cual el número de eventos que han ocurrido debe ser
comparado.
período
(Opcional) el período de tiempo para el número de eventos que han ocurrido
(especificado en el formato del [.MMM] SSSSSSSSSS, donde SSSSSSSSSS debe ser
un número entero que representa los segundos entre 0 y 4294967295, inclusivo, y donde
el MMM debe ser un número entero que representa los milisegundos entre 0 y 999). Si no
se especifica este argumento, se utiliza la muestra más reciente.
3. cpu_proc [procname ?] [op gt|ge|eq|ne|lt|le] [val ?] [period ?]
Argumentos
procname La expresión normal (opcional) A que especifica el nombre del proceso que usted desea
monitorear para la utilización de la CPU condiciona.
op
Operador de comparación (opcional) usado para comparar el porcentaje recogido de la
muestra del USO de la CPU con el valor especificado del porcentaje; si es verdadero, se
accionará un evento.
val
(Opcional) El valor del porcentaje con el cual debe compararse el uso del CPU medio
durante el período de la muestra.
período
(Opcional) El período de tiempo para hacer un promedio de la colección de muestras
(especificadas en el formato SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un
número entero que representa los segundos entre 0 y 4294967295, inclusive, y MMM
debe ser un número entero que representa los milisegundos entre 0 y 999). Si no se
especifica este argumento, se utiliza la muestra más reciente.
4. cpu_tot [op gt|ge|eq|ne|lt|le] [val ?] [period ?]
Argumentos
op
Operador de comparación (opcional) usado para comparar el porcentaje recogido de la
muestra del USO de la CPU del sistema total con el valor especificado del porcentaje; si es
verdadero, se accionará un evento.
val
(Opcional) El valor del porcentaje con el cual debe compararse el uso del CPU medio
durante el período de la muestra.
período (Opcional) El período de tiempo para hacer un promedio de la colección de muestras
(especificadas en el formato SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un
número entero que representa los segundos entre 0 y 4294967295, inclusive, y MMM debe
ser un número entero que representa los milisegundos entre 0 y 999). Si no se especifica
este argumento, se utiliza la muestra más reciente.
5. mem_proc [procname ?] [op gt|ge|eq|ne|lt|le] [val ?] [is_percent TRUE|FALSE] [period ?]
Argumentos
procname Expresión normal (opcional) A que especifica el nombre del proceso que usted desea
monitorear para el uso de la memoria.
op
Operador de comparación (opcional) usado para comparar la memoria recogida usada
con el valor especificado; si es verdadero, se accionará un evento.
val
(Opcional) Un porcentaje o un valor absoluto especificado en kilobytes. Un porcentaje
representa la diferencia entre la muestra más antigua del período de tiempo especificado
y la muestra más reciente. Si el uso de la memoria ha aumentado de 150 KB a 300 KB
en el período de tiempo, el aumento en porcentaje es 100. Éste es el valor con el cual
debe compararse el valor medido.
is_percent (Opcional) Si es TRUE, se recopila y se compara el valor del porcentaje. De lo contrario,
se recopila y se compara el valor absoluto.
período
(Opcional) Si is_percent se fija en TRUE, el período de tiempo para que se calcule el
porcentaje. De otro modo, el período de tiempo que se dedicará a un promedio de las
muestras de recolección (especificado en formato SSSSSSSSSS[.MMM], donde
SSSSSSSSSS debe ser un número entero que represente los segundos entre 0 y
4294967295, ambos inclusive, y MMM debe ser un número entero que represente los
milisegundos entre 0 y 999). Si no se especifica este argumento, se utiliza la muestra
más reciente.
6. mem_tot_avail [op gt|ge|eq|ne|lt|le] [val ?] [is_percent TRUE|FALSE] [period ?]
Argumentos
op
Operador de comparación (opcional) usado para comparar la memoria disponible
recogida con el valor especificado; si es verdadero, se accionará un evento.
val
(Opcional) Un porcentaje o un valor absoluto especificado en kilobytes. Un porcentaje
representa la diferencia entre la muestra más antigua del período de tiempo especificado
y la muestra más reciente. Si el uso de la memoria disponible ha disminuido a partir de
300 KB a 150 KB dentro del período de tiempo, la disminución del porcentaje es 50. Éste
es el valor con el cual debe compararse el valor medido.
is_percent (Opcional) Si es TRUE, se recopila y se compara el valor del porcentaje. De lo contrario,
se recopila y se compara el valor absoluto.
período
(Opcional) Si is_percent se fija en TRUE, el período de tiempo para que se calcule el
porcentaje. De otro modo, el período de tiempo que se dedicará a un promedio de las
muestras de recolección (especificado en formato SSSSSSSSSS[.MMM], donde
SSSSSSSSSS debe ser un número entero que represente los segundos entre 0 y
4294967295, ambos inclusive, y MMM debe ser un número entero que represente los
milisegundos entre 0 y 999). Si no se especifica este argumento, se utiliza la muestra
más reciente.
7. mem_tot_used [op gt|ge|eq|ne|lt|le] [val ?] [is_percent TRUE|FALSE] [period ?]
Argumentos
op
Operador de comparación (opcional) usado para comparar la memoria usada recogida
con el valor especificado; si es verdadero, se accionará un evento.
val
(Opcional) Un porcentaje o un valor absoluto especificado en kilobytes. Un porcentaje
representa la diferencia entre la muestra más antigua del período de tiempo especificado
y la muestra más reciente. Si el uso de la memoria ha aumentado de 150 KB a 300 KB
en el período de tiempo, el aumento en porcentaje es 100. Éste es el valor con el cual
debe compararse el valor medido.
is_percent (Opcional) Si es TRUE, se recopila y se compara el valor del porcentaje. De lo contrario,
se recopila y se compara el valor absoluto.
período
(Opcional) Si is_percent se fija en TRUE, el período de tiempo para que se calcule el
porcentaje. De otro modo, el período de tiempo que se dedicará a un promedio de las
muestras de recolección (especificado en formato SSSSSSSSSS[.MMM], donde
SSSSSSSSSS debe ser un número entero que represente los segundos entre 0 y
4294967295, ambos inclusive, y MMM debe ser un número entero que represente los
milisegundos entre 0 y 999). Si no se especifica este argumento, se utiliza la muestra
más reciente.
Observeeste argumento es obligatorio si es is_percent se fija PARA VERDAD; si
no, es opcional.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Observedentro de una descripción subevent, cada argumento es independiente de la posición.
Extensiones de Comandos de Tcl de Información de Eventos de EEM
•
event_reqinfo
event_reqinfo
Pregunta la información para el evento que hizo la Política actual ejecutarse.
Sintaxis
event_reqinfo
Argumentos
Ninguno
Cadena de Resultado
Si la directiva se ejecuta con éxito, las características para el evento que accionó la directiva serán vueltas. Las secciones
siguientes muestran las características vueltas para cada detector de evento.
Para EEM_EVENT_APPLICATION
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u"
"sub_system 0x%x type %u data1 {%s} data2 {%s} data3 {%s} data4 {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
El tiempo, en los segundos y los milisegundos, cuando el evento fue publicado
event_pub_msec al administrador del evento integrado (EEM).
sub_system
Número asignado a la directiva EEM que publicó el evento de aplicación. El
número se establece en 798 porque todos los demás números están reservados
para el uso de Cisco.
type
Subtipo del evento dentro del componente especificado.
data1
data2
data3
data4
Datos del argumento que se pasan al evento específico a la aplicación cuando
se publica el evento. Los datos son texto del carácter, una variable de entorno, o
una combinación de los dos.
Para EEM_EVENT_CLI
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u
event_severity %u msg {%s} msg_count %d line %u key %u tty %u error_code %u"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
El tiempo, en los segundos y los milisegundos, en los cuales el evento fue
event_pub_msec publicado al EEM.
event_severity
La gravedad del evento.
msg
Texto ingresado en el prompt CLI.
msg_count
La cantidad de veces el modelo correspondido con antes del evento fue
accionada.
line
El texto el analizador de sintaxis podía ampliarse hasta la punta donde la clave
correspondida con fue ingresada.
key
El ingresar, el questionmark, o el tabulador.
tty
Corresponde al número de línea que el usuario está ejecutando el comando
encendido.
error_code
El código de error en el CLI.
0 — Ningún error del analizador de sintaxis hasta la punta donde una clave fue
ingresada.
El comando 1 es ambiguo hasta la punta donde una clave fue ingresada.
4 — Comando desconocido hasta la punta donde una clave fue ingresada.
Para EEM_EVENT_COUNTER
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"name {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
name
Nombre contrario.
Para EEM_EVENT_GOLD
"event_id %u event_type %u event_type_string {%s} %u card %u sub_card %u"
"event_severity {%s} event_pub_sec %u event_pub_msec %u overall_result %u"
"new_failure {%s} action_notify {%s} tt %u tc %u bl %u ci %u pc %u cn {%s}"
"sn {%s} tn# {%s} ta# %s ec# {%s} rc# %u lf# {%s} tf# %u cf# %u tr# {%s}"
"tr#p# {%s} tr#d# {%s}"
Tipo de Evento
Descripción
action_notify
La acción notifica la información en el evento del ORO: true o false.
bl
El nivel del diagnóstico de carga, que puede ser uno de los valores siguientes:
•
0: diagnóstico completo
•
1: diagnósticos mínimos
•
2: bypass diagnostic
card
Información de placa para el evento del ORO.
cftestnum
Error consecutivo, donde testnum está el número de la prueba. Por ejemplo, cf3
es la variable de entorno incorporada EEM para el error consecutivo de la
prueba 3.
ci
Índice de la tarjeta.
cn
Nombre de la tarjeta.
ectestnum
Pruebe el código de error, donde testnum está el número de la prueba. Por
ejemplo, ec3 es la variable de entorno incorporada EEM para el código de error
de la prueba 3.
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_pub_msec El tiempo, en los milisegundos y los segundos, cuando el evento fue publicado
event_pub_sec
al EEM.
event_severity
event_type
Gravedad del evento del ORO, que puede ser uno de los valores siguientes:
•
normal
•
menor
•
comandante.
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
lftestnum
La vez más pasada del fall, donde testnum está el número de la prueba. Por
ejemplo, lf3 es la variable incorporada EEM por última vez el fall de la prueba 3.
El formato del grupo fecha/hora es mmm dd yyyy hh:mm:ss. Por ejemplo, el 11
de marzo de 1960 08:47:00.
new_failure
La nueva información de falla de prueba en un indicador de suceso del ORO:
true o false.
overall_result
Resultado del diagnóstico global, que puede ser uno de los valores siguientes:
•
0: OK
•
3: error menor
•
4: error importante
•
14: resultado desconocido
pc
Conteos de puertos.
rctestnum
Pruebe la cuenta del funcionamiento del total, donde testnum está el número de
la prueba. Por ejemplo, rc3 es la variable incorporada EEM para la cuenta total
del funcionamiento de la prueba 3.
sn
Número de serie de la tarjeta.
sub_card
La subtarjeta en la que se detectó un evento de falla GOLD.
tatestnum
Pruebe el atributo, donde testnum está el número de la prueba. Por ejemplo, ta3
es la variable incorporada EEM para el atributo de la prueba de la prueba 3.
tc
Conteos de la prueba.
tftestnum
Cuenta de la falla total, donde testnum está el número de la prueba. Por
ejemplo, tf3 es la variable incorporada EEM para la cuenta de la falla total de la
prueba 3.
tntestnum
Pruebe el nombre, donde testnum está el número de la prueba. Por ejemplo, tn3
es la variable incorporada EEM para el nombre de la prueba 3.
trtestnum
Resultado de la prueba, donde testnum está el número de la prueba. Por
ejemplo, tr6 es la variable incorporada EEM para la prueba 6 donde no está una
prueba por puerto y no una prueba la prueba 6 del por-dispositivo.
El resultado de la prueba es uno de los valores siguientes:
•
P: resultado de diagnóstico superado
•
F: resultado del diagnóstico: Falla
•
U: resultado del diagnóstico desconocido
trtestnumddevnum resultado de la prueba del Por-dispositivo, donde testnum está el número de la
prueba y devnum es el número del dispositivo. Por ejemplo, tr3d20 es la
variable incorporada EEM para el resultado de la prueba para la prueba 3, el
dispositivo 20.
El resultado de la prueba es uno de los valores siguientes:
•
P: resultado de diagnóstico superado
•
F: resultado del diagnóstico: Falla
•
U: resultado del diagnóstico desconocido
trtestnumpportnum Resultado de la prueba por puerto, donde testnum está el número de la prueba y
portnum es el número del dispositivo. Por ejemplo, tr5p20 es la variable
incorporada EEM para el resultado de la prueba para la prueba 3, el puerto 20.
El resultado de la prueba es uno de los valores siguientes:
tt
•
P: resultado de diagnóstico superado
•
F: resultado del diagnóstico: Falla
•
U: resultado del diagnóstico desconocido
Tipo de prueba, que puede ser uno de los siguientes:
•
1: Un diagnóstico de carga
•
2: Un diagnóstico a pedido
•
3: Un diagnóstico del horario
•
4: Un diagnóstico de la supervisión
Para EEM_EVENT_INTERFACE
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"event_severity {%s} name {%s} parameter {%s} value %d"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
event_severity
Interconecte la gravedad del evento, que puede ser uno de los valores
siguientes:
•
normal
•
menor
•
comandante
name
Nombre de la interfaz.
parameter
Nombre del parámetro.
value
La diferencia ampliada/decreciente comparada al evento más reciente
accionado o el valor absoluto del parámetro que es monitoreado, dependiendo
del valor especificado del entry_val_is_increment.
Para EEM_EVENT_IOSWDSYSMON
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"num_subs %u"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
num_subs
Número de subevents.
Donde está la cadena subevent de la información para un CPU_UTIL subevent,
"{type %s procname {%s} pid %u taskname {%s} taskid %u value %u sec %ld msec %ld}"
Tipo de Subevento
Descripción
type
Tipo de subevento.
procname
Nombre del proceso POSIX de este subevento.
pid
ID del proceso POSIX de este subevento.
taskname
Nombre de tarea de Cisco IOS para este subevento.
taskid
ID de tarea de Cisco IOS para este subevento.
value
Utilización de la CPU media real sobre el intervalo medido.
sec,
msec
Período del tiempo transcurrido para este intervalo medido.
Donde está la cadena subevent de la información para un MEM_UTIL subevent,
"{type %s procname {%s} pid %u taskname {%s} taskid %u is_percent %s value %u diff %d"
"sec %ld msec %ld}"
Tipo de
Subevento
Descripción
type
Tipo de subevento.
procname
Nombre del proceso POSIX de este subevento.
pid
ID del proceso POSIX de este subevento.
taskname
Nombre de tarea de Cisco IOS para este subevento.
taskid
ID de tarea de Cisco IOS para este subevento.
is_percent
VERDAD o FALSO dependiendo de si el valor es un valor del porcentaje.
value
Uso de la memoria total en el KB o la utilización de la memoria media real para
este intervalo medido.
diff
La diferencia del porcentaje entre la muestra más vieja del intervalo medido y la
última muestra; un valor negativo representa una disminución.
sec,
msec
Período del tiempo transcurrido para este intervalo medido.
Para EEM_Event_IPSLA
“%u del event_severity del %u del event_pub_msec del %u del event_pub_sec del %u del event_type del %u del event_ID”
“%u “threshold_rising” del measured_threshold_value del %u threshold_falling%u del %u del dest_ip_addr del %u del
reaction_type del %u de la condición del %u del operation_id del %u del group_name”
%u del umbral count2 del %u "threshold_count1”
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede
ejecutar múltiples políticas para el mismo evento, y cada política
tendrá el mismo event_id.
event_type
El tipo de evento que se desea monitorear para crear, actualizar y
eliminar el flujo.
event_type_string
Una cadena ASCII que representa el nombre de evento de este tipo
de evento.
event_pub_sec
event_pub_msec
La hora, en segundos y milisegundos, en que se publicó el evento en
el EEM.
event_severity
La gravedad del evento.
group_name
El nombre del grupo IPSLA.
operation_id
La identificación de la operación IPSLA
condition
La condición de IPSLA, que puede ser uno del siguiente:
•
borrado
•
ocurrido
reaction_type
El tipo de la reacción IPSLA.
dest_ip_address
El IP Address de destino IPSLA.
threshold rising
El valor de umbral de límite superior configurado IPSLA.
threshold falling
El valor de umbral descendente configurado IPSLA.
measured_threshold_value El valor de umbral medido de la operación IPSLA.
threshold_count1
Corresponde al argumento del tipo 1 del umbral.
threshold_count2
Corresponde al argumento del type2 del umbral.
Para EEM_EVENT_NF
"event_ID %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u
event_severity %u monitor_name %u event1-event4_field %u event1-event4_value
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
El tipo de evento que se desea monitorear para crear, actualizar y eliminar el
flujo.
event_type_string
Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
event_pub_msec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_severity
La gravedad del evento del Netflow.
montior_name
El nombre del monitor del Netflow.
event1event4_field
Especifica el evento y sus atributos para monitorear. Los valores válidos son
event1 event2 event3, y event4.
event1event4_value
Especifica el valor del evento y sus atributos para monitorear. Los valores
válidos son event1 event2 event3, y event4.
Para EEM_EVENT_NONE
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u
event_severity %u arg %u"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
event_severity
La gravedad del evento.
argc
Los parámetros que se pasan del comando del JABÓN XML al script.
arg1
arg2
arg3
arg4
arg6
arg7
arg8
arg9
arg10
arg11
arg12
arg13
arg14
arg15
Para EEM_EVENT_OIR
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u"
"slot %u event %s"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo ID de
evento.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
slot
Número de slot para el indicador luminoso LED amarillo de la placa muestra
gravedad menor afectado.
event
Indica una cadena, quitada o en línea, que representa un evento del retiro OIR o
un evento de la inserción OIR.
Para EEM_EVENT_PROCESS (modularidad del software solamente)
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u"
"sub_system 0x%x instance %u process_name {%s} path {%s} exit_status 0x%x"
"respawn_count %u last_respawn_sec %ld last_respawn_msec %ld fail_count %u"
"dump_count %u node_name {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string
Una cadena ASCII que representa el nombre de evento de este tipo de
evento.
event_pub_sec
event_pub_msec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
sub_system
Número asignado a la directiva EEM que publicó el evento específico a la
aplicación. El número se establece en 798 porque todos los demás números
están reservados para el uso de Cisco.
instance
ID de instancia de proceso.
process_name
Nombre del proceso.
path
Nombre absoluto de proceso incluyendo la trayectoria.
exit_status
Estado de salida más reciente de proceso.
respawn_count
Cantidad de veces que el proceso fue recomenzado.
last_respawn_sec El tiempo del calendario en que ocurrió el reinicio más reciente.
last_respawn_msec
fail_count
Número de tentativas del reinicio del proceso que falló. Esta cuenta será
reajustada a 0 cuando el proceso se recomienza con éxito.
dump_count
Número de vaciados de memoria tomados del proceso.
node_name
Nombre del nodo que el proceso está prendido. El Nombre del nodo es una
cadena que consiste en la palabra “nodo” seguido por dos campos separados
por un carácter de la raya vertical usando el formato siguiente:
nodeslot-number/cpu-number
slot-number es el número de slot del hardware. cpu-number es el número de
CPU de hardware.
Para EEM_EVENT_RESOURCE
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"owner_id %lld user_id %lld" time_sent %llu dampen_time %d notify_data_flags %u"
"level {%s} direction {%s} configured_threshold %u current_value %u"
"policy_violation_flag {%s} policy_id %d"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede
ejecutar múltiples políticas para el mismo evento, y cada política tendrá el
mismo event_id.
event_type
Tipo de evento.
event_type_string
Una cadena ASCII que representa el nombre de evento de este tipo de
evento.
event_pub_sec
event_pub_msec
La hora, en segundos y milisegundos, en que se publicó el evento en el
EEM.
owner_id
La identificación del propietario del administrador de recurso incrustado
(ERM)
user_id
La identificación del usuario ERM.
time_sent
Tiempo del evento ERM, en nanosegundos.
dampen_time
Tiempo de amortiguación de ERM, en nanosegundos.
notify_data_flags
El indicador de datos de notificación de ERM.
level
El nivel de evento ERM. Los cuatro niveles de evento son normal, menor,
principal y crítico.
direction
Dirección del evento de ERM. El sentido del evento puede ser uno de los
siguientes: hacia arriba, hacia abajo o sin cambios.
configured_threshold Umbral de ERM configurado.
current_value
El valor actual notificado por ERM.
policy_violation_flag El indicador de la infracción de la política ERM; falso o verdadero.
policy_id
ID de la política ERM.
Para EEM_EVENT_RF
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"event {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
event
Progresión RF o notificación de evento del estatus que hizo este evento ser
publicada.
Para EEM_EVENT_Routing
“%u del event_type del %u del event_id event_type_string el %u lastgateway de la distancia del %u del %u del protocolo del %u
de la máscara del %u de la red del %u del event_severity del %u del event_pub_msec del %u del event_pub_sec del %u {%s}”
“{%s}”
“%u métrico del lastinterface del %u del %u del time_msec del %u del time_sec”
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
event_severity
La gravedad del evento.
network
El Prefijo de red en el formato de IP Address
mask
La máscara de la red en el formato de IP Address
protocol
Protocolo del tipo de red.
type
El tipo de evento a agregar, quita o se modifica.
lastgateway
El gateway sabido más reciente.
distance
La distancia administrativa.
time_sec
time_msec
Época del evento en los segundos y los milisegundos, cuando el evento fue
publicado al EEM.
metric
Trayectoria métrica.
lastinterface
La interfaz sabida último.
Para EEM_EVENT_RPC
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u
arg %u"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
argc
arg0
arg1
arg2
Los parámetros que se pasan del comando del JABÓN XML al script.
arg3
arg4
arg6
arg7
arg8
arg9
arg10
arg11
arg12
arg13
arg14
Para EEM_EVENT_SNMP
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"event_severity {%s} oid {%s} val {%s} delta_val {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
event_severity
Gravedad del evento SNMP, que puede ser uno de los valores siguientes:
•
normal
•
menor
•
comandante
oid
ID del objeto del elemento de datos, en la notación del punto SNMP.
val
Valor del elemento de datos.
delta_val
Valor del delta entre el valor de las directivas.
Para EEM_EVENT_SNMP_Notification
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u
event_severity {%s}" "oid {%s} oid_val {%s} src_ip_addr {%s} dest_ip_addr {%s} x_x_x_x_x
(varbinds) {%s} trunc_vb_buf {%s} trap_oid {%s} enterprise_oid {%s} generic_trap %u
specific_trap %u"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string
Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
event_pub_msec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
oid
Una identificación de objeto especificada usuario
oid_val
Un valor especificado usuario del ID del objeto.
src_ip_addr
La dirección IP de origen de la unidad de datos del protocolo SNMP (PDU).
dest_ip_addr
La dirección IP de destino del SNMP PDU.
x_x_x_x_x
(varbinds)
La información de varbind de PDU SNMP.
trap_oid
Indica el valor del desvío OID.
enterprise_oid
Indica el valor de la empresa OID.
generic_trap
Indica uno de varios Tipos de trampa genérica. Hay siete números de trampa
genéricos cero a seis.
specific_trap
Indica uno de varios códigos específicos del desvío.
Event_reqinfo para EEM_EVENT_SNMP_Object
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u
event_severity {%s}" "oid {%s} request {%s} request_type {%s} value %u"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
event_pub_msec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_severity
La gravedad del evento.
oid
El ID del objeto SNMP en recibido consigue o fijó la petición.
request
El tipo de la petición del conseguir o del conjunto.
request_type
El tipo de petición (exacto o siguiente).
value
Para las peticiones del conjunto solamente. El valor para fijar el objeto a.
Para EEM_EVENT_SYSLOG_MSG
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u"
"msg {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
msg
El mensaje de Syslog más reciente que hace juego el modelo.
Para EEM_EVENT_TIMER_ABSOLUTE
EEM_EVENT_TIMER_COUNTDOWN
EEM_EVENT_TIMER_WATCHDOG
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u"
"timer_type %s timer_time_sec %ld timer_time_msec %ld"
"timer_remain_sec %ld timer_remain_msec %ld"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string
Una cadena ASCII que representa el nombre de evento de este tipo de
evento.
event_pub_sec
event_pub_msec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
timer_type
Tipo de temporizador. Puede ser uno de los siguientes:
timer_time_sec
timer_time_msec
•
perro guardián
•
cuenta descendiente
•
absoluto
Hora a la que caducó el temporizador.
timer_remain_sec El tiempo restante antes de la expiración siguiente.
timer_remain_msec
Para EEM_EVENT_TIMER_CRON
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u"
"timer_type {%s} timer_time_sec %ld timer_time_msec %ld"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
timer_type
Tipo de temporizador.
timer_time_sec
Hora a la que caducó el temporizador.
timer_time_msec
Para EEM_EVENT_TRACK
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"track_number {%u} track_state {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo ID de
evento.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
track_number
Número del objeto seguido que hizo el evento ser accionado.
track_state
Estado del objeto seguido cuando el evento fue accionado; el estado válido está
hacia arriba o hacia abajo.
Para EEM_EVENT_WDSYSMON (modularidad del software solamente)
"event_id %u event_type %u event_type_string {%s} %u event_pub_sec %u event_pub_msec %u"
"num_subs %u"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
La hora, en segundos y milisegundos, en que se publicó el evento en el EEM.
event_pub_msec
num_subs
Número de Subevent.
Donde está la cadena subevent de la información para un interbloqueo subevent:
"{type %s num_entries %u entries {entry 1, entry 2, ...}}"
Tipo de Subevento
Descripción
type
Tipo de wdsysmon del subevento.
num_entries
Número de procesos y de hilos en el interbloqueo.
entries
Información de los procesos y de los hilos en el interbloqueo.
Donde está cada entrada:
"{node {%s} procname {%s} pid %u tid %u state %s b_node %s b_procname %s b_pid %u
b_tid %u}"
Asuma que la entrada describe el escenario en qué hilo m del proceso A se bloquea en el hilo n del proceso B:
Tipo de
Subevento
Descripción
node
El nombre del nodo que procesa el hilo m A está prendido.
procname
Nombre del proceso A.
pid
Identificador de proceso del proceso A.
tid
Hilo ID del hilo M. del proceso A.
state
Estado del hilo del hilo M. del proceso A. Puede ser uno de los siguientes:
•
STATE_CONDVAR
•
STATE_DEAD
•
STATE_INTR
•
STATE_JOIN
•
STATE_MUTEX
•
STATE_NANOSLEEP
•
STATE_READY
•
STATE_RECEIVE
•
STATE_REPLY
•
STATE_RUNNING
•
STATE_SEM
•
STATE_SEND
•
STATE_SIGSUSPEND
•
STATE_SIGWAITINFO
•
STATE_STACK
•
STATE_STOPPED
•
STATE_WAITPAGE
•
STATE_WAITTHREAD
b_node
Nombre del nodo en el cual el hilo de proceso B está.
b_procname
Nombre del proceso B.
b_pid
Identificador de proceso del proceso B.
b_tid
Hilo ID del hilo n del proceso B; 0 significa que el hilo m del proceso A está
bloqueado en todos los hilos del proceso B.
Para el dispatch_mgr Subevent
"{type %s node {%s} procname {%s} pid %u value %u sec %ld msec %ld}"
Tipo de
Subevento
Descripción
type
Tipo de wdsysmon del subevento.
node
Nombre del nodo en el que se encuentra el proceso POSIX.
procname
Nombre del proceso POSIX de este subevento.
pid
ID del proceso POSIX de este subevento.
Observelos tres campos antedichos describen el proceso del propietario de
este administrador del envío.
value
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, el número de eventos procesados
por el administrador del envío está en la última muestra. Si una ventana de fecha y
hora se especifica y es mayor que adentro la extensión del comando Tcl del registro
del evento, el número total de eventos procesado por este administrador del envío
está en la ventana del cualquier momento.
sec
msec
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, son ambo 0. Si una ventana de
fecha y hora se especifica y es mayor que adentro la extensión del comando Tcl del
registro del evento, sec y msec las variables son la diferencia de Hora real entre los
sellos de fecha/hora de las muestras más viejas y últimas de esta ventana de fecha y
hora.
Para el cpu_proc Subevent
"{type %s node {%s} procname {%s} pid %u value %u sec %ld msec %ld}"
Tipo de
Subevento
Descripción
type
Tipo de wdsysmon del subevento.
node
Nombre del nodo en el que se encuentra el proceso POSIX.
procname
Nombre del proceso POSIX de este subevento.
pid
ID del proceso POSIX de este subevento.
Observelos tres campos antedichos describen el proceso cuya se está
monitoreando utilización de la CPU.
value
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, la utilización de la CPU de proceso
está en la última muestra. Si una ventana de fecha y hora se especifica y es mayor
que adentro la extensión del comando Tcl del registro del evento, la utilización de la
CPU de proceso hecha un promedio está en la ventana del cualquier momento.
sec
msec
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, son ambo 0. Si una ventana de
fecha y hora se especifica y es mayor que adentro la extensión del comando Tcl del
registro del evento, sec y msec las variables son la diferencia de Hora real entre los
sellos de fecha/hora de las muestras más viejas y últimas de esta ventana de fecha y
hora.
Para el cpu_tot Subevent
"{type %s node {%s} value %u sec %ld msec %ld}"
Tipo de
Subevento
Descripción
type
Tipo de wdsysmon del subevento.
node
Nombre del nodo en el cual se está monitoreando el uso total de la CPU.
value
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, el uso total de la CPU está en la
última muestra. Si una ventana de fecha y hora se especifica y es mayor que adentro
la extensión del comando Tcl del registro del evento, el uso total de la CPU hecho un
promedio está en la ventana del cualquier momento.
sec
msec
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, son ambo 0. Si una ventana de
fecha y hora se especifica y es mayor que adentro la extensión del comando Tcl del
registro del evento, sec y msec las variables son la diferencia de Hora real entre los
sellos de fecha/hora de las muestras más viejas y últimas de esta ventana de fecha y
hora.
Para el mem_proc Subevent
"{type %s node {%s} procname {%s} pid %u is_percent %s value %u diff %d sec %ld msec %ld}"
Tipo de
Descripción
Subevento
type
Tipo de wdsysmon del subevento.
node
Nombre del nodo en el que se encuentra el proceso POSIX.
procname
Nombre del proceso POSIX de este subevento.
pid
ID del proceso POSIX de este subevento.
Observelos tres campos antedichos describen el proceso cuyo se está
monitoreando uso de la memoria.
is_percent
Puede ser VERDADERO o FALSO. un valor TRUE significa que el valor es un valor
de porcentaje; FALSO significa que se trata de un valor absoluto (puede ser un valor
promediado).
value
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, la memoria usada proceso está en
la última muestra. Si una ventana de fecha y hora se especifica y es mayor que
adentro la extensión del comando Tcl del registro del evento, la utilización de la
memoria usada proceso hecha un promedio está en la ventana del cualquier
momento.
Tipo de
Descripción
Subevento
diff
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, diff es la diferencia del porcentaje
entre la muestra usada primer proceso de la memoria recogida nunca y la muestra
usada el último proceso de la memoria. Si una ventana de fecha y hora se especifica y
es mayor que adentro la extensión del comando Tcl del registro del evento, diff es la
diferencia del porcentaje entre utilización de la memoria usada el más viejo y último
proceso en la ventana del tiempo especificado.
sec
msec
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, son ambo 0. Si una ventana de
fecha y hora se especifica y es mayor que adentro la extensión del comando Tcl del
registro del evento, sec y msec las variables son la diferencia de Hora real entre los
sellos de fecha/hora de las muestras más viejas y últimas de esta ventana de fecha y
hora.
Si is_percent el argumento es FALSO, y sec y msec los argumentos se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento:
•
value es la memoria usada proceso en la última muestra.
•
diff es 0.
•
sec y msec es ambo 0.
Si is_percent el argumento es FALSO, y una ventana de fecha y hora se especifica como mayor que adentro la extensión del
comando Tcl del registro del evento:
•
value es el valor de ejemplo usado proceso hecho un promedio de la memoria en la ventana del tiempo especificado.
•
diff es 0.
• sec y msec es la diferencia de Hora real entre los sellos de fecha/hora de las muestras más viejas y últimas de esta
ventana de fecha y hora.
Si is_percent el argumento es VERDAD, y una ventana de fecha y hora se especifica como mayor que adentro la extensión del
comando Tcl del registro del evento:
•
value es 0.
• diff es la diferencia del porcentaje entre las muestras usadas el más viejo y último proceso de la memoria en la ventana
del tiempo especificado.
• sec y msec es la diferencia de Hora real entre los sellos de fecha/hora las muestras usadas del más viejo y último
proceso de la memoria en esta ventana de fecha y hora.
Si is_percent el argumento es VERDAD, y sec y msec los argumentos se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento:
•
value es 0.
• diff es la diferencia del porcentaje entre la muestra usada primer proceso de la memoria recogida nunca y la muestra
usada el último proceso de la memoria.
• sec y msec son la diferencia de Hora real entre los sellos de fecha/hora de la muestra usada primer proceso de la
memoria recogida nunca y la muestra usada el último proceso de la memoria.
Para el mem_tot_avail Subevent
"{type %s node {%s} is_percent %s used %u avail %u diff %d sec %ld msec %ld}"
Tipo de
Subevento
Descripción
type
Tipo de wdsysmon del subevento.
node
Nombre del nodo para el cual se está monitoreando la memoria disponible total.
is_percent
Puede ser VERDADERO o FALSO. un valor TRUE significa que el valor es un valor
de porcentaje; FALSO significa que se trata de un valor absoluto (puede ser un valor
promediado).
used
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, la memoria usada total está en la
última muestra. Si se ha especificado una ventana de tiempo mayor que cero en la
extensión de comando Tcl del registro de evento, la utilización de la memoria usada
total promediada está en la ventana de tiempo dada.
avail
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, avail está en la última muestra total
de la memoria disponible. Si una ventana de fecha y hora se especifica y es mayor
que adentro la extensión del comando Tcl del registro del evento, avail es la
utilización total de la memoria disponible en la ventana del tiempo especificado.
diff
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, diff es la diferencia del porcentaje
entre la primera muestra total de la memoria disponible recogida nunca y la última
muestra total de la memoria disponible. Si una ventana de fecha y hora se especifica
y es mayor que adentro la extensión del comando Tcl del registro del evento, diff es la
diferencia del porcentaje entre la más vieja y última utilización total de la memoria
disponible de la ventana del tiempo especificado.
sec
msec
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, son ambo 0. Si una ventana de
fecha y hora se especifica y es mayor que adentro la extensión del comando Tcl del
registro del evento, son la diferencia de Hora real entre los sellos de fecha/hora de las
muestras más viejas y últimas de esta ventana de fecha y hora.
Si is_percent el argumento es FALSO, y sec y msec los argumentos se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento:
•
used es la memoria usada total en la última muestra.
•
avail es la memoria disponible total en la última muestra.
•
diff es 0.
•
sec y msec es ambo 0.
Si is_percent el argumento es FALSO, y una ventana de fecha y hora se especifica como mayor que adentro la extensión del
comando Tcl del registro del evento:
•
used es 0.
•
avail es el valor de ejemplo total hecho un promedio de la memoria disponible en la ventana del tiempo especificado.
•
diff es 0.
• sec y msec es la diferencia de Hora real entre los sellos de fecha/hora de las muestras totales más viejas y últimas de la
memoria disponible de esta ventana de fecha y hora.
Si is_percent el argumento es VERDAD, y una ventana de fecha y hora se especifica como mayor que adentro la extensión del
comando Tcl del registro del evento:
•
used es 0.
•
avail es 0.
• diff es la diferencia del porcentaje entre las muestras totales más viejas y últimas de la memoria disponible de la ventana
del tiempo especificado.
• sec y msec es la diferencia de Hora real entre los sellos de fecha/hora de las muestras totales más viejas y últimas de la
memoria disponible de esta ventana de fecha y hora.
Si is_percent el argumento es VERDAD, y sec y msec los argumentos se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento:
•
used es 0.
•
avail es 0.
• diff es la diferencia del porcentaje entre la primera muestra total de la memoria disponible recogida nunca y la última
muestra total de la memoria disponible.
• sec y msec son la diferencia de Hora real entre los sellos de fecha/hora de la primera muestra total de la memoria
disponible recogida nunca y la última muestra total de la memoria disponible.
Para Subevent mem_tot_used
"{type %s node {%s} is_percent %s used %u avail %u diff %d sec %ld msec %ld}"
Tipo de
Subevento
Descripción
type
Tipo de wdsysmon del subevento.
node
El nombre del nodo para el cual el total utilizó la memoria se está monitoreando.
is_percent
Puede ser VERDADERO o FALSO. un valor TRUE significa que el valor es un valor
de porcentaje; FALSO significa que se trata de un valor absoluto (puede ser un valor
promediado).
used
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, la memoria usada total está en la
última muestra. Si se ha especificado una ventana de tiempo mayor que cero en la
extensión de comando Tcl del registro de evento, la utilización de la memoria usada
total promediada está en la ventana de tiempo dada.
avail
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, avail está en la muestra usada el
último total de la memoria. Si una ventana de fecha y hora se especifica y es mayor
que adentro la extensión del comando Tcl del registro del evento, avail es la
utilización de la memoria usada total en la ventana del tiempo especificado.
diff
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, diff es la diferencia del porcentaje
entre la muestra usada primer total de la memoria recogida nunca y la muestra usada
el último total de la memoria. Si una ventana de fecha y hora se especifica y es mayor
que adentro la extensión del comando Tcl del registro del evento, diff es la diferencia
del porcentaje entre utilización de la memoria usada el más viejo y último total en la
ventana del tiempo especificado.
sec
msec
Si sec y msec las variables se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento, son ambo 0. Si una ventana de
fecha y hora se especifica y es mayor que adentro la extensión del comando Tcl del
registro del evento, sec y msec las variables son la diferencia de Hora real entre los
sellos de fecha/hora de las muestras más viejas y últimas de esta ventana de fecha y
hora.
Si is_percent el argumento es FALSO, y el sec y argumentos milisegundo se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento:
•
used es la memoria usada total en la última muestra,
•
avail es la memoria disponible total en la última muestra,
•
diff es 0,
•
sec y msec es ambo 0,
Si is_percent el argumento es FALSO, y una ventana de fecha y hora se especifica como mayor que adentro la extensión del
comando Tcl del registro del evento:
•
used es el valor de ejemplo usado total hecho un promedio de la memoria en la ventana del tiempo especificado,
•
avail es 0,
•
diff es 0,
• sec y msec es la diferencia de Hora real entre los sellos de fecha/hora las muestras usadas del más viejo y último total
de la memoria en esta ventana de fecha y hora,
Si is_percent el argumento es VERDAD, y una ventana de fecha y hora se especifica como mayor que adentro la extensión del
comando Tcl del registro del evento:
•
used es 0.
•
avail es 0.
• diff es la diferencia del porcentaje entre las muestras usadas el más viejo y último total de la memoria en la ventana del
tiempo especificado.
• sec y msec es la diferencia de Hora real entre los sellos de fecha/hora las muestras usadas del más viejo y último total
de la memoria en esta ventana de fecha y hora.
Si is_percent el argumento es VERDAD, y el sec y argumentos milisegundo se especifican como 0 o están sin especificar en la
extensión del comando Tcl del registro del evento:
•
used es 0.
•
avail es 0.
• diff es la diferencia del porcentaje entre la muestra usada primer total de la memoria recogida nunca y la muestra usada
el último total de la memoria.
• sec y msec son la diferencia de Hora real entre los sellos de fecha/hora de la muestra usada primer total de la memoria
recogida nunca y la muestra usada el último total de la memoria.
Ajuste _cerrno
Sí
Comando Extension Tcl del evento EEM
•
event_completion
•
event_completion_with_wait
•
event_publish
•
event_wait
event_completion
Envía una notificación al servidor EEM que la directiva está hecha que mantiene el evento que la accionó. El evento toma
solamente un solo argumento que sea return_code de este caso del evento.
Sintaxis
event_completion status ?
Argumentos
estatus Estado de salida (obligatorio) (return_code) de este caso del evento. Un valor de cero indica
que ningún error y cualquier otro valor del número entero indica un error.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
event_completion_with_wait
event_completion_with_wait El comando combina los dos comandos event_completion y event_wait en un comando único
para la facilidad de empleo.
event_completion El comando envía una notificación al servidor EEM que la directiva está hecha que mantiene el evento que
la accionó. El evento toma solamente un solo argumento que sea return_code de este caso del evento.
event_wait Los lugares la directiva Tcl en un estado del sueño. Cuando la directiva Tcl recibe una nueva señal que anuncia un
nuevo evento, la directiva se pone en un estado de la estela y vuelve otra vez a un estado del sueño. Este loop continúa. Si
event_wait la directiva se invoca antes event_completed de la directiva, de los resultados de un error y de las salidas de la
directiva.
Sintaxis
event_completion_with_wait status ? [refresh_vars]
Argumentos
estatus
Exit_status (obligatorio) (return_code) de este caso del evento. Un valor de cero no
indica ningún error. Cualquier otro valor del número entero indica un error.
refresh_vars (Opcional) indica si el accesorio y las variables de entorno deben ser actualizados
(restaurado) del director de la directiva EEM durante este caso del evento.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
Ejemplo de Uso
Aquí está un ejemplo similar como arriba usando este comando único:
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
set i 1
while {1 == 1} {
# Start high performance policy loop
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
action_syslog msg "event $i serviced" priority info
if {$i == 5} {
action_syslog msg "Exiting after servicing 5 events" priority info
exit 0
}
incr i
array set _event_state_arr [event_completion_with_wait status 0 refresh_vars 1]
if {$_event_state_arr(event_state) != 0} {
action_syslog msg "Exiting: failed event_state " \
" $event_state_arr(event_state)" priority info
exit 0
}
}
Observeel resultado de la configuración corriente es lo mismo que el comando event_publish Tcl.
event_publish
Publica un evento específico a la aplicación.
Sintaxis
event_publish sub_system ? type ? [arg1 ?] [arg2 ?] [arg3 ?] [arg4 ?]
Argumentos
sub_system
Número (obligatorio) asignado a la directiva EEM que publicó el evento específico a la
aplicación. El número se establece en 798 porque todos los demás números están
reservados para el uso de Cisco.
tipo
Subtipo (obligatorio) del evento dentro del componente especificado. Los argumentos
sub_system y type identifican de forma única un evento de aplicación. Debe ser un
número entero entre 1 y 4294967295, ambos inclusive.
¿[arg1? ][arg4?]
Los cuatro pedazos (opcionales) de editor del evento de aplicación atan los datos.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
Ejemplo de Uso
Este ejemplo demuestra cómo utilizar event_publish la extensión del comando Tcl para ejecutar los tiempos n del script para
realizar en varias ocasiones una cierta función (por ejemplo, medir el periodo hora de la CPU de tomado por un grupo dado de
declaraciones Tcl). Este ejemplo utiliza dos Scripts TCL.
Script1 publica un evento del tipo 9999 EEM para hacer Script2 ejecutarse por primera vez. Script1 se registra como ninguno
evento y se ejecuta usando el comando event manager run del Cisco IOS CLI. Script2 se registra como evento de aplicación
EEM del tipo 9999, y este los controles del script para considerar si la aplicación publica los datos arg1 (el número de la
iteración) exceden el valor de los test_iterations de la variable de entorno EEM. Si se excede el valor de los test_iterations, el
script escribe un mensaje y las salidas; si no el script ejecuta las declaraciones restantes y reprograma otro funcionamiento.
Para medir la utilización de la CPU para Script2, utilice un valor de los test_iterations que sea un múltiplo de 10 para calcular la
cantidad de media hora de la CPU usada por Script2.
Para ejecutar el Scripts TCL, ingrese los comandos cisco ios siguientes:
configure terminal
event manager environment test_iterations 100
event manager policy script1.tcl
event manager policy script2.tcl
end
event manager run script1.tcl
El script Script2 Tcl será ejecutado 100 veces. Si usted ejecuta el script sin el procesamiento extra y deriva la utilización de la
CPU media, y entonces agrega el procesamiento extra y relanza la prueba, usted puede restar la utilización de la CPU anterior
de la utilización de la CPU posterior para determinar la media para el procesamiento extra.
Script1 (script1.tcl)
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
# Query the event info.
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
action_syslog priority info msg "EEM application_publish test start"
if {$_cerrno != 0} {
set result [format \
"component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
# Cause the first iteration to run.
event_publish sub_system 798 type 9999 arg1 0
if {$_cerrno != 0} {
set result [format \
"component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
Script2 (script2.tcl)
::cisco::eem::event_register_appl sub_system 798 type 9999
# Check if all the required environment variables exist.
# If any required environment variable does not exist, print out an error msg and quit.
if {![info exists test_iterations]} {
set result \
"Policy cannot be run: variable test_iterations has not been set"
error $result $errorInfo
}
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
# Query the event info.
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
# Data1 contains the arg1 value used to publish this event.
set iter $arr_einfo(data1)
# Use the arg1 info from the previous run to determine when to end.
if {$iter >= $test_iterations} {
# Log a message.
action_syslog priority info msg "EEM application_publish test end"
if {$_cerrno != 0} {
set result [format \
"component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
exit 0
}
set iter [expr $iter + 1]
# Log a message.
set msg [format "EEM application_publish test iteration %s" $iter]
action_syslog priority info msg $msg
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
# Do whatever processing that you want to measure here.
# Cause the next iteration to run. Note that the iteration is passed to the
# next operation as arg1.
event_publish sub_system 798 type 9999 arg1 $iter
if {$_cerrno != 0} {
set result [format \
"component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
event_wait
Pone la directiva Tcl en un estado del sueño. Cuando la directiva Tcl recibe una nueva señal que anuncia un nuevo evento, la
directiva se pone en un estado de la estela y vuelve otra vez a un estado del sueño. Este loop continúa. Si event_wait la
directiva se invoca antes event_completed de la directiva, de los resultados de un error y de las salidas de la directiva.
Sintaxis
event_wait [refresh_vars]
Argumentos
refresh_vars (Opcional) indica si el accesorio y las variables de entorno deben ser actualizados
(restaurado) del director de la directiva EEM durante este caso del evento.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Ejemplo de Uso
event_wait El detector de evento vuelve un valor del tipo de matriz con un solo elemento nombrado event_state. Event_state
es un valor devuelto del servidor EEM que indica independientemente de si un error ha ocurrido en el proceso del evento. Un
ejemplo de un error aquí sería si el usuario configurado event_wait antes de configurar event_completion al manejar el caso
del evento.
La salida de muestra siguiente muestra el uso de ambos event_completion y event_wait de los comandos Tcl:
::cisco::eem::event_register_syslog tag e1 occurs 1 pattern CLEAR maxrun 0
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
set i 1
while {1 == 1} {
# Start high performance policy loop
array set arr_einfo [event_reqinfo]
if {$_cerrno != 0} {
set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
$_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
error $result
}
action_syslog msg "event $i serviced" priority info
if {$i == 5} {
action_syslog msg "Exiting after servicing 5 events" priority info
exit 0
}
incr i
event_completion status 0
array set _event_state_arr [event_wait refresh_vars 0]
if {$_event_state_arr(event_state) != 0} {
action_syslog msg "Exiting: failed event_state " \
" $event_state_arr(event_state)" priority info
exit 0
}
}
Aquí está un ejemplo de la configuración corriente:
Router#
01:00:44: %SYS-5-CONFIG_I: Configured from console by consoleclear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
01:00:49: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
01:00:49: %HA_EM-6-LOG: high_perf_example.tcl: event 1 serviced
Router#
Router#clear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
Router#
01:00:53: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
01:00:53: %HA_EM-6-LOG: high_perf_example.tcl: event 2 serviced
Router#clear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
Router#
01:00:56: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
01:00:56: %HA_EM-6-LOG: high_perf_example.tcl: event 3 serviced
Router#
Router#
Router#clear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
01:00:59: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
Router#
01:00:59: %HA_EM-6-LOG: high_perf_example.tcl: event 4 serviced
01:00:59: %HA_EM-6-LOG: high_perf_example.tcl: Exiting after servicing 5 events
Router#
Router#
Router#copy tftp disk1:
Address or name of remote host [dirt]?
Source filename [user/eem_scripts/high_perf_example.tcl]?
Destination filename [high_perf_example.tcl]?
%Warning:There is a file already existing with this name
Do you want to over write? [confirm]
Accessing tftp://dirt/user/eem_scripts/high_perf_example.tcl...
Loading user/eem_scripts/high_perf_example.tcl from 192.0.2.19 (via FastEthernet0/0): !
[OK - 909 bytes]
909 bytes copied in 0.360 secs (2525 bytes/sec)
Router#
Router#configure terminal
Enter configuration commands, one per line.
End with CNTL/Z.
Router(config)#no event manager policy high_perf_example.tcl
Router(config)#event manager po high_perf_example.tcl
Router(config)#end
Router#
Router#
Router#
Router#
01:02:19: %SYS-5-CONFIG_I: Configured from console by consoleclear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
01:02:23: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
Router#
Router#
01:02:23: %HA_EM-6-LOG: high_perf_example.tcl: event 1 serviced
Router#
Router#clear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
Router#
01:02:26: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
01:02:26: %HA_EM-6-LOG: high_perf_example.tcl: event 2 serviced
Router#
Router#clear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
Router#
01:02:29: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
01:02:29: %HA_EM-6-LOG: high_perf_example.tcl: event 3 serviced
Router#
Router#clear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
Router#
01:02:33: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
Router#
01:02:33: %HA_EM-6-LOG: high_perf_example.tcl: event 4 serviced
Router#
Router#clear counters
Clear "show interface" counters on all interfaces [confirm]
Router#
Router#
Router#
01:02:36: %CLEAR-5-COUNTERS: Clear counter on all interfaces by console
01:02:36: %HA_EM-6-LOG: high_perf_example.tcl: event 5 serviced
01:02:36: %HA_EM-6-LOG: high_perf_example.tcl: Exiting after servicing 5 events
Router#
También mientras que un evento se ha mantenido y está esperando el evento siguiente para venir en show event manager
policy active el comando visualizará el producto siguiente:
Router#show event manager policy active
Key: p - Priority
:L - Low, H - High, N - Normal, Z - Last
s - Scheduling node :A - Active, S - Standby
default class - 1 script event
no.
job id
p s status
1
11
N A wait
high_perf_example.tcl
time of event
event type
Mon Oct20 14:15:24 2008
syslog
name
En el ejemplo antedicho el estatus es espera. Esto indica que la directiva está esperando el evento siguiente para venir adentro.
Extensiones del comando Tcl del soporte de los eventos múltiples EEM
•
activador
•
correlativo
•
atributo
trigger
Especifica la habilidad de configuración de los eventos múltiples de los eventos integrados del administrador del evento (EEM).
Los eventos múltiples son uno que puede implicar uno o más acontecimientos del evento, uno o más los estados de objeto
seguidos, y un período de tiempo para que el evento ocurra. Se aumentan los eventos basaron en los parámetros
especificados.
Sintaxis
trigger [occurs ?] [period ?] [period-start ?] [delay ?]
Argumentos
occurs (Opcional) especifica la cantidad de veces que ocurre la correlación total antes de que se
aumente un evento EEM. Cuando un número no se especifica, un evento EEM se aumenta
en el primer acontecimiento. El rango es a partir la 1 a 4294967295.
period
Intervalo de tiempo (opcional) en los segundos y milisegundos opcionales, durante los
cuales los uno o más acontecimientos deben ocurrir. Esto se especifica en el [.mmm] de
los ssssssssss del formato, donde los ssssssssss deben ser un número del número entero
que representa los segundos entre 0 y 4294967295, inclusivo y mmm representa los
milisegundos y debe ser un número del número entero entre 0 a 999.
period- (Opcional) especifica el comienzo de una ventana de la correlación de eventos. Si no
start
especificado, habilitan al monitoreo de evento después del primer período CRON ocurre.
delay
(Opcional) especifica el número de segundos y de milisegundos opcionales después de lo
cual un evento será aumentado si todas las condiciones son verdades (especificado en el
[.mmm] de los ssssssssss del formato, donde los ssssssssss deben ser un número del
número entero que representa los segundos entre 0 y 4294967295, inclusivo y mmm
representa los milisegundos y debe ser un número del número entero entre 0 a 999).
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
correlate
Construye un solo evento complejo y permite que la lógica boleana relacione los eventos y los objetos seguidos.
Sintaxis
correlate event ? track ? [andnot | and | or] event ? track ?
Argumentos
event Especifica el evento que se puede utilizar con trigger el comando de soportar las
declaraciones de los eventos múltiples dentro de un script.
Si el evento asociado event-tag al argumento ocurre para la cantidad de veces especificado
por trigger el comando, el resultado es verdad. Si no, el resultado es falso.
track
Especifica el número del objeto del evento para seguir. El rango es a partir la 1 a 500.
Si se fija el objeto seguido, el resultado de la evaluación es verdad. Si el objeto seguido no
se fija ni es indefinido, el resultado de la evaluación es falso. Este resultado está sin importar
el estado del objeto.
andnot (Opcional) especifica que si ocurre el evento 1 la acción está ejecutada, y si el evento 2 y el
evento 3 ocurren juntos la acción no se ejecuta.
y
(Opcional) especifica que si ocurre el evento 1 la acción está ejecutada, y si el evento 2 y el
evento 3 ocurren juntos se ejecuta la acción.
o
(Opcional) especifica que si ocurre el evento 1 la acción está ejecutada, o bien si el evento 2
y el evento 3 ocurren juntos se ejecuta la acción.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
attribute
Especifica un evento complejo.
Sintaxis
attribute tag ? [occurs ?]
Argumentos
tag
Especifica una etiqueta usando event-tag el argumento que se puede utilizar con attribute
el comando de asociar un evento.
occurs (Opcional) especifica el número de acontecimientos antes de que se accione un evento
EEM. Si no especificado, un evento EEM se acciona en el primer acontecimiento. El rango
es a partir la 1 a 4294967295.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Extensiones de Comandos Tcl de Acciones de EEM
•
action_policy
•
action_process
•
action_program
•
action_reload
•
action_script
•
action_snmp_trap
•
action_snmp_object_value
•
action_switch
•
action_syslog
•
action_track_read
•
action_track_set
action_policy
Permite que un script Tcl funcione con una directiva integrada del administrador del evento (EEM) que se ha registrado con el
ningunos detector de evento. La acción de funcionar con una directiva EEM se puede también realizar usando event manager
run el comando.
Sintaxis
action_policy ?
Argumentos
¿? (representa
una cadena)
(Obligatorio) el nombre de la directiva EEM que se programará para la ejecución.
La directiva se debe haber registrado previamente con el ningunos detector de
evento.
Ninguno
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err = 2) FH_ESYSERR (generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 12)
FH_ENOSUCHEID (unknown event ID)
Este error significa que la directiva es desconocida porque no se registra.
(_cerr_sub_err = 14)
FH_ENOSUCHACTION
(unknown action type)
Este error significa que el comando de acción solicitado era desconocido.
action_process
El comienzo, los reinicios, o mata a un proceso de la modularidad del software. Esta extensión del comando Tcl se soporta
solamente en las imágenes de Software Modularity.
Sintaxis
action_process start|restart|kill [job_id ?]
[process_name ?] [instance ?]
Argumentos
comience
(Obligatorio) especifica que un proceso debe ser comenzado.
reinicio
(Obligatorio) especifica que un proceso debe ser recomenzado.
matanza
(Obligatorio) especifica que un proceso debe ser parado (matado).
job_id
El administrador del sistema (opcional) asignó el trabajo ID para el proceso. Si
especifica este argumento, debe ser un número entero entre 1 y 4.294.967.295,
inclusive.
process_name Nombre del proceso (opcional). O el job_id debe ser especificado o el process_name
y el caso deben ser especificados.
caso
(Opcional) ID de instancia de proceso. Si especifica este argumento, debe ser un
número entero entre 1 y 4.294.967.295, inclusive.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err = 14)
FH_ENOSUCHACTION
(unknown action type)
Este error significa que el comando de acción solicitado era desconocido.
(_cerr_sub_num = 425, _cerr_sub_err = 1) SYSMGR_ERROR_INVALID_ARGS
passed)
(Invalid arguments
Este error significa que los argumentos pasajeros adentro eran inválidos.
(_cerr_sub_num = 425, _cerr_sub_err = 2) SYSMGR_ERROR_NO_MEMORY
required memory)
(Could not allocate
Este error significa que un pedido interno del SYSMGR la memoria falló.
(_cerr_sub_num = 425, _cerr_sub_err = 5) SYSMGR_ERROR_NO_MATCH
to sysmgr)
(This process is not known
Este error significa que el nombre del proceso no era sabido.
(_cerr_sub_num = 425, _cerr_sub_err = 14) SYSMGR_ERROR_TOO_BIG
(outside the valid limit)
Este error significa que los tamaños de objeto excedieron su máximo.
(_cerr_sub_num = 425, _cerr_sub_err = 15) SYSMGR_ERROR_INVALID_OP
this process)
(Invalid operation for
Este error significa que la operación era inválida para el proceso.
action_program
Permite que un script Tcl funcione con un proceso POSIX (programa), opcionalmente con una cadena dada del argumento, una
cadena del entorno, una cadena de caracteres estándar de la entrada (stdin), una cadena de caracteres estándar de la salida
(stdout), o una cadena de caracteres del error estándar (stderr). Esta extensión del comando Tcl se soporta solamente en las
imágenes de Software Modularity.
Sintaxis
action_program path ? [argv ?] [envp ?] [stdin ?] [stdout ?] [stderr ?]
Argumentos
trayectoria
(Obligatorio) la cadena de caracteres de un programa a ejecutarse.
argv
(Opcional) la cadena del argumento del programa.
envp
(Opcional) la cadena del entorno del programa.
stdin
(Opcional) la cadena de caracteres para el stdin.
stdout
(Opcional) la cadena de caracteres para el stdout.
stderr
(Opcional) la cadena de caracteres para el stderr.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 14)
FH_ENOSUCHACTION
(unknown action type)
Este error significa que el comando de acción solicitado era desconocido.
(_cerr_sub_err = 34)
FH_EMAXLEN
(maximum length exceeded)
Este error significa que la longitud o el número del objeto ha excedido el máximo.
action_reload
Recarga al router.
Sintaxis
action_reload
Argumentos
Ninguno
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 14)
FH_ENOSUCHACTION
(unknown action type)
Este error significa que el comando de acción solicitado era desconocido.
action_script
Permite que un script Tcl habilite o inhabilite la ejecución de todo el Scripts TCL (los permisos o inhabilitan el planificador de
trabajos del script).
Sintaxis
action_script [status enable|disable]
Argumento
estatus (Opcional) señale por medio de una bandera para indicar el estatus de la ejecución del
script. Si este argumento se fija para habilitar, se habilita la ejecución del script; si este
argumento se fija para inhabilitar, se inhabilita la ejecución del script.
s
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 14)
FH_ENOSUCHACTION
(unknown action type)
Este error significa que el comando de acción solicitado era desconocido.
(_cerr_sub_err = 52)
FH_ECONFIG
(configuration error)
Este error significa que ha ocurrido un Error de configuración.
action_snmp_trap
Envía un Trap del Simple Network Management Protocol (SNMP) usando la notificación integrada MIB del administrador del
evento.
Sintaxis
action_snmp_trap [intdata1 ?] [intdata2 ?] [strdata ?]
Argumentos
intdata1
(Opcional) Número entero arbitrario enviado en la trampa.
intdata2
(Opcional) Número entero arbitrario enviado en la trampa.
strdata
Datos arbitrarios (opcionales) de la cadena enviados en el desvío.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 14)
FH_ENOSUCHACTION
(unknown action type)
Este error significa que el comando de acción solicitado era desconocido.
action_snmp_object_value
Fija un ID del objeto y un valor del Simple Network Management Protocol (SNMP) que se volverán para la petición get SNMP.
Sintaxis
action_snmp_object_value {int|uint|counter|gauge|ipv4|octet|counter64|string} ?
[next_oid ?]
Argumentos
internacional Un número de 32 bits que se utiliza para especificar un tipo numerado en el contexto
de un objeto administrado.
uint
Un número de 32 bits usado para representar el valor decimal.
contador
Un número de 32 bits con un valor mínimo de 0.
indicador
Un número de 32 bits con un valor mínimo de 0.
ipv4
Versión IP direccionamiento 4.
octeto
Una cadena de octetos en la notación hexadecimal usada para representar a las
direcciones físicas.
contador 64 Un número 64-bit con un valor mínimo de 0.
cadena
Una cadena de octetos en la notación del texto usada para representar las cadenas de
texto.
next_oid
El OID del objeto siguiente en la tabla; ANULE si es el objeto más reciente de la tabla.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
action_switch
Switches que procesa a un procesador secundario en un entorno completamente redundante. Antes de usar action_switch la
extensión del comando Tcl, usted debe instalar un procesador de respaldo en el dispositivo. Si el hardware no es
completamente redundante, la acción de Switchover no será realizada.
Sintaxis
action_switch
Argumentos
Ninguno
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err = 2) FH_ESYSERR (generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 14)
FH_ENOSUCHACTION
(unknown action type)
Este error significa que el comando de acción solicitado era desconocido.
action_syslog
Genera un mensaje de Syslog periódico usando el recurso especificado cuando se acciona un script EEM.
Sintaxis
action_syslog [priority emerg|alert|crit|err|warning|notice|info|debug]
[msg ?] [facility ?]
Argumentos
prioridad (Opcional) el nivel del recurso de mensaje del action_syslog. Si este argumento no se
especifica, la prioridad predeterminada está LOG_INFO.
msg
(Opcional) el mensaje que se registrará.
recurso
Instalaciones de Syslog (opcionales).
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
action_track_read
Lee el estado de un objeto seguido cuando se acciona un script integrado del administrador del evento (EEM).
Sintaxis
action_track_read ?
Argumentos
¿? (representa un
número)
(Obligatorio) Número de objeto de seguimiento en el rango de 1 a 500,
ambos inclusive.
Cadena de Resultado
number {%u}
state {%s}
Ajuste _cerrno
Sí
FH_ENOTRACK
Este error significa que no se encontró el número del objeto seguido.
action_track_set
Fija el estado de un objeto seguido cuando se acciona un script integrado del administrador del evento (EEM).
Sintaxis
action_track_set ? state up|down
Argumentos
¿? (representa
un número)
(Obligatorio) Número de objeto de seguimiento en el rango de 1 a 500, ambos
inclusive.
estado
(Obligatorio) especifica que el estado del objeto seguido será fijado. Si encima de
se especifica, el estado del objeto seguido será fijado a para arriba. Si abajo se
especifica, el estado del objeto seguido será fijado a abajo.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
FH_ENOTRACK
Este error significa que no se encontró el número del objeto seguido.
Extensiones de Comandos de Tcl de Utilidades de EEM
•
appl_read
•
appl_reqinfo
•
appl_setinfo
•
counter_modify
•
descripción
•
fts_get_stamp
•
register_counter
•
register_timer
•
timer_arm
•
timer_cancel
•
unregister_counter
appl_read
Lee los datos integrados del volátil de la aplicación del administrador del evento (EEM). Esta extensión del comando Tcl
proporciona el soporte para los datos de lectura del volátil de la aplicación EEM. Los datos volátiles de la aplicación EEM se
pueden publicar por un proceso del Cisco IOS Software que utilice la aplicación EEM publique el API. Los datos volátiles de la
aplicación EEM no se pueden publicar por una directiva EEM.
La notaallí no es actualmente ningún proceso del Cisco IOS Software que publica los datos del volátil de la aplicación.
Sintaxis
appl_read name ? length ?
Argumentos
nombre El nombre (obligatorio) de la aplicación publicó los datos de la cadena.
longitud Longitud (obligatoria) de los datos de la cadena a leer. Debe ser un número del número
entero entre 1 y 4294967295, inclusivo.
Cadena de Resultado
data %s
Donde están los datos los datos publicados aplicación de la cadena que se leerán.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
7)
FH_ENOSUCHKEY
(could not find key)
Este error significa que no se encontró la llave de info. u otro ID del detector de eventos de la aplicación.
(_cerr_sub_err =
9)
FH_EMEMORY
(insufficient memory for request)
Este error significa que ha fallado una solicitud interna de memoria procedente de EEM.
appl_reqinfo
Extrae la información previamente guardada del administrador del evento integrado (EEM). Esta extensión del comando Tcl
proporciona el soporte para extraer la información de EEM que se ha guardado previamente con una clave única, que se debe
especificar para extraer la información. Observe eso que extrae la información la borra de EEM. Debe resaved si se va a ser
extraído otra vez.
Sintaxis
appl_reqinfo key ?
Argumentos
clave
(Obligatorio) Llave de cadena de los datos.
Cadena de Resultado
data %s
Donde están los datos los datos de la cadena de la aplicación que se extraerán.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
7)
FH_ENOSUCHKEY
(could not find key)
Este error significa que no se encontró la llave de info. u otro ID del detector de eventos de la aplicación.
appl_setinfo
Guarda la información en el administrador del evento integrado (EEM). Esta extensión del comando Tcl proporciona el soporte
para guardar la información en el administrador del evento integrado que puede ser extraído más adelante por la misma
directiva o por otra directiva. Una clave única debe ser especificada. Esta clave permite que la información sea extraída más
adelante.
Sintaxis
appl_setinfo key ? data ?
Argumentos
clave
(Obligatorio) Llave de cadena de los datos.
datos
(Obligatorio) los datos de la cadena de la aplicación a salvar.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
8)
FH_EDUPLICATEKEY
(duplicate appl info key)
Este error significa que la clave de la información del detector del evento de aplicación o el otro ID era un duplicado.
(_cerr_sub_err =
9)
FH_EMEMORY
(insufficient memory for request)
Este error significa que ha fallado una solicitud interna de memoria procedente de EEM.
(_cerr_sub_err = 34)
FH_EMAXLEN
(maximum length exceeded)
Este error significa que la longitud o el número del objeto ha excedido el máximo.
(_cerr_sub_err = 43)
FH_EBADLENGTH
(bad API length)
Este error significa que la longitud del mensaje API era inválida.
counter_modify
Modifica un valor de contador.
Sintaxis
counter_modify event_id ? val ? op nop|set|inc|dec
Argumentos
event_id (Obligatorio) el ID de evento contrario volvió por register_counter la extensión del
comando Tcl. Debe ser un número entero entre 0 y 4294967295, ambos inclusive.
val
(Obligatorio)
Observeobligatorio a menos que cuando se especifica la combinación de Op. Sys.
del valor del argumento del nop.
• Si es de Op. Sys. se fija, este argumento representa el valor de contador que debe
ser fijado.
• Si es de Op. Sys. es el inc., este argumento es el valor por el cual incrementar el
contador.
• Si es de Op. Sys. es diciembre, este argumento es el valor por el cual decrement el
contador.
op
(Obligatorio)
•
nop — Extrae el valor de contador actual.
•
conjunto — Fija el valor de contador al valor dado.
•
inc. — Incrementa el valor de contador por el valor dado.
•
diciembre — Decrements el valor de contador por el valor dado.
Cadena de Resultado
val_remain %d
Donde está el valor actual el val_remain del contador.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 11)
FH_ENOSUCHESID
(unknown event specification ID)
Este error significa que no se pudo hacer coincidir el ID de especificación de evento al registrar el evento o que la estructura de
evento interna del detector de eventos está dañada.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 30)
FH_ECTBADOPER
(bad counter threshold operator)
Este error significa que el conjunto contrario del detector de evento o modifica al operador era inválido.
description
Proporciona una Breve descripción de la directiva registradoa.
Sintaxis
description ?
Argumentos
línea Breve descripción (opcional) de los caracteres de la directiva 1 que consiste en a 240.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
Ejemplo de Uso
La declaración de la descripción es ingresada por el autor de la directiva. Puede aparecer antes o después de cualquier
declaración del registro del evento en el Tcl. La directiva puede tener solamente una descripción.
El registrode la nota de una directiva con más de una declaración de la descripción fallará.
El siguiente ejemplo muestra cómo una Breve descripción se proporciona para event_register_syslog la directiva:
::cisco::eem::description "This Tcl command looks for the word count in syslog messages."
::cisco::eem::event_register_syslog tag 1 ...
::cisco::eem::event_register_snmp_object tag 2 ...
::cisco::eem::trigger
::cisco::eem::correlate event 1 and event 2
::cisco::eem::attribute tag 1 occurs 1
::cisco::eem::attribute tag 2 occurs 1
fts_get_stamp
Vuelve el período de tiempo transcurrió puesto que el inicio del último software. Utilice esta extensión del comando Tcl para
volver el número de nanosegundos puesto que inicio en un arsenal “nanosegundo nnnn” donde está el número el nnnn de
nanosegundos.
Sintaxis
fts_get_stamp
Argumentos
Ninguno
Cadena de Resultado
nsec %d
Donde está el número el nanosegundo de nanosegundos puesto que inicio.
Ajuste _cerrno
No
register_counter
Registra un contador y vuelve un ID de evento contrario. Esta extensión del comando Tcl es utilizada por un editor contrario
para realizar este registro antes de usar el ID de evento para manipular el contador.
Sintaxis
register_counter name ?
Argumentos
nombre
(Obligatorio) el nombre del en dirección contraria se manipule.
Cadena de Resultado
event_id %d
event_spec_id %d
Donde está el ID de evento el event_id contrario para el contador especificado; puede ser utilizado para manipular el contador
por las Extensiones unregister_counter counter_modify o del comando Tcl. El argumento del event_spec_id es la
especificación ID del evento para el contador especificado.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
4)
FH_EINITONCE
(Init() is not yet done, or done twice.)
Este error significa que la solicitud para registrar el evento específico se hizo antes de que el detector de eventos EEM hubiera
terminado su inicialización.
(_cerr_sub_err =
6)
FH_EBADEVENTTYPE
(unknown EEM event type)
Este error significa que el tipo de evento especificado en la especificación del evento interno no era válido.
(_cerr_sub_err =
9)
FH_EMEMORY
(insufficient memory for request)
Este error significa que ha fallado una solicitud interna de memoria procedente de EEM.
(_cerr_sub_err = 10)
FH_ECORRUPT
(internal EEM API context is corrupt)
Este error significa que la estructura interna del contexto API de EEM está corrupta.
(_cerr_sub_err = 11)
FH_ENOSUCHESID
(unknown event specification ID)
Este error significa que no se pudo hacer coincidir el ID de especificación de evento al registrar el evento o que la estructura de
evento interna del detector de eventos está dañada.
(_cerr_sub_err = 12)
FH_ENOSUCHEID
(unknown event ID)
Este error significa que el ID de evento no podría ser asociado cuando el acontecimiento se estuviera registrando, o que una
estructura de eventos interna del detector de eventos está dañada.
(_cerr_sub_err = 16)
FH_EBADFMPPTR
(bad ptr to fh_p data structure)
Este error significa que el puntero de contexto que se utiliza en cada llamada a la API de EEM es incorrecto.
(_cerr_sub_err = 17)
FH_EBADADDRESS
(bad API control block address)
Este error significa que una dirección de bloqueo de control que transmitida a EEM API era incorrecta.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 25)
FH_ESUBSEXCEED
(number of subscribers exceeded)
Este error significa que el número de suscriptores del temporizador o del contador excedió el máximo.
(_cerr_sub_err = 26)
FH_ESUBSIDXINV
(invalid subscriber index)
Este error significa que el índice del suscriptor no era válido.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
(_cerr_sub_err = 56)
FH_EFDCONNERR
(event detector connection error)
Este error significa que el detector de eventos EEM que gestiona esta solicitud no está disponible.
register_timer
Registra un temporizador y vuelve un evento de temporización ID. Esta extensión del comando Tcl es utilizada por un editor del
temporizador para realizar este registro antes de usar el ID de evento para manipular el temporizador si no utiliza
event_register_timer la extensión del comando para registrarse como editor y suscriptor.
Sintaxis
register_timer watchdog|countdown|absolute|cron name ?
Argumentos
nombre
(Obligatorio) el nombre del temporizador que se manipulará.
Cadena de Resultado
event_id %u
Donde está el event_id el evento de temporización ID para el temporizador especificado (puede ser utilizado para manipular el
temporizador por timer_arm o timer_cancel las Extensiones del comando).
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
4)
FH_EINITONCE
(Init() is not yet done, or done twice.)
Este error significa que la solicitud para registrar el evento específico se hizo antes de que el detector de eventos EEM hubiera
terminado su inicialización.
(_cerr_sub_err =
6)
FH_EBADEVENTTYPE
(unknown EEM event type)
Este error significa que el tipo de evento especificado en la especificación del evento interno no era válido.
(_cerr_sub_err =
9)
FH_EMEMORY
(insufficient memory for request)
Este error significa que ha fallado una solicitud interna de memoria procedente de EEM.
(_cerr_sub_err = 10)
FH_ECORRUPT
(internal EEM API context is corrupt)
Este error significa que la estructura interna del contexto API de EEM está corrupta.
(_cerr_sub_err = 11)
FH_ENOSUCHESID
(unknown event specification ID)
Este error significa que no se pudo hacer coincidir el ID de especificación de evento al registrar el evento o que la estructura de
evento interna del detector de eventos está dañada.
(_cerr_sub_err = 16)
FH_EBADFMPPTR
(bad ptr to fh_p data structure)
Este error significa que el puntero de contexto que se utiliza en cada llamada a la API de EEM es incorrecto.
(_cerr_sub_err = 17)
FH_EBADADDRESS
(bad API control block address)
Este error significa que una dirección de bloqueo de control que transmitida a EEM API era incorrecta.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 25)
FH_ESUBSEXCEED
(number of subscribers exceeded)
Este error significa que el número de suscriptores del temporizador o del contador excedió el máximo.
(_cerr_sub_err = 26)
FH_ESUBSIDXINV
(invalid subscriber index)
Este error significa que el índice del suscriptor no era válido.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
(_cerr_sub_err = 56)
FH_EFDCONNERR
(event detector connection error)
Este error significa que el detector de eventos EEM que gestiona esta solicitud no está disponible.
timer_arm
Arma un temporizador. El tipo podría ser CRON, perro guardián, cuenta descendiente, o absoluto.
Sintaxis
timer_arm event_id ? cron_entry ?|time ?
Argumentos
event_id
(Obligatorio) el evento de temporización ID volvió por register_timer la extensión del
comando. Debe ser un número entero entre 0 y 4294967295, ambos inclusive.
cron_entry (Obligatorio) debe existir si el tipo del temporizador es CRON. Necesidad no existir para
otros tipos de temporizador. La especificación del temporizador CRON utiliza el formato
de la entrada de tabla CRON.
hora
(Obligatorio) debe existir si el tipo del temporizador no es CRON. Necesidad no existir si
el tipo del temporizador es CRON. Para los temporizadores de watchdog y cuenta atrás,
el número de segundos y milisegundos hasta que el temporizador caduca; para un
temporizador absoluto, la época del calendario del vencimiento (especificado en el
formato del [.MMM] SSSSSSSSSS, donde SSSSSSSSSS debe ser un número entero
que representa los segundos entre 0 y 4294967295, inclusivo, y donde el MMM debe ser
un número entero que representa los milisegundos entre 0 y 999). Una fecha de
vencimiento absoluta es el número de segundos y milisegundos desde el 1 de enero de
1970. Si la fecha especificada ya ha pasado, el temporizador caduca inmediatamente.
Cadena de Resultado
sec_remain %ld msec_remain %ld
Donde sec_remain y msec_remain indican el tiempo restante antes de la siguiente caducidad del temporizador.
Observeel valor A de 0 será vuelto para los argumentos del sec_remain y del msec_remain si el tipo del temporizador es
CRON.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
6)
FH_EBADEVENTTYPE
(unknown EEM event type)
Este error significa que el tipo de evento especificado en la especificación del evento interno no era válido.
(_cerr_sub_err =
9)
FH_EMEMORY
(insufficient memory for request)
Este error significa que ha fallado una solicitud interna de memoria procedente de EEM.
(_cerr_sub_err = 11)
FH_ENOSUCHESID
(unknown event specification ID)
Este error significa que no se pudo hacer coincidir el ID de especificación de evento al registrar el evento o que la estructura de
evento interna del detector de eventos está dañada.
(_cerr_sub_err = 12)
FH_ENOSUCHEID
(unknown event ID)
Este error significa que el ID de evento no podría ser asociado cuando el acontecimiento se estuviera registrando, o que una
estructura de eventos interna del detector de eventos está dañada.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 27)
FH_ETMDELAYZR
(zero delay time)
Este error significa que el tiempo especificado para armar un temporizador era cero.
(_cerr_sub_err = 42)
FH_ENOTREGISTERED
(request for event spec that is unregistered)
Este error significa que el evento no fue registrado.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
(_cerr_sub_err = 56)
FH_EFDCONNERR
(event detector connection error)
Este error significa que el detector de eventos EEM que gestiona esta solicitud no está disponible.
timer_cancel
Cancela un temporizador.
Sintaxis
timer_cancel event_id ?
Argumentos
event_id (Obligatorio) el evento de temporización ID volvió por register_timer la extensión del
comando. Debe ser un número entero entre 0 y 4294967295, ambos inclusive.
Cadena de Resultado
sec_remain %ld msec_remain %ld
Donde sec_remain y msec_remain indican el tiempo restante antes de la siguiente caducidad del temporizador.
Observeel valor A de 0 será vuelto para el sec_remain y el msec_remain si el tipo del temporizador es CRON.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
6)
FH_EBADEVENTTYPE
(unknown EEM event type)
Este error significa que el tipo de evento especificado en la especificación del evento interno no era válido.
(_cerr_sub_err =
7)
FH_ENOSUCHKEY
(could not find key)
Este error significa que no se encontró la llave de info. u otro ID del detector de eventos de la aplicación.
(_cerr_sub_err = 11)
FH_ENOSUCHESID
(unknown event specification ID)
Este error significa que no se pudo hacer coincidir el ID de especificación de evento al registrar el evento o que la estructura de
evento interna del detector de eventos está dañada.
(_cerr_sub_err = 12)
FH_ENOSUCHEID
(unknown event ID)
Este error significa que el ID de evento no podría ser asociado cuando el acontecimiento se estuviera registrando, o que una
estructura de eventos interna del detector de eventos está dañada.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
(_cerr_sub_err = 56)
FH_EFDCONNERR
(event detector connection error)
Este error significa que el detector de eventos EEM que gestiona esta solicitud no está disponible.
unregister_counter
Desregistra un contador. Esta extensión del comando Tcl es utilizada por un editor contrario para desregistrar un contador que
fue registrado previamente con register_counter la extensión del comando Tcl.
Sintaxis
unregister_counter event_id ? event_spec_id ?
Argumentos
event_id
(Obligatorio) contradiga el ID de evento vuelto por register_counter la extensión del
comando. Debe ser un número entero entre 0 y 4294967295, ambos inclusive.
event_spec_id (Obligatorio) contradiga la especificación ID del evento para el contador especificado
vuelto por register_counter la extensión del comando. Debe ser un número entero
entre 0 y 4294967295, ambos inclusive.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
9)
FH_EMEMORY
(insufficient memory for request)
Este error significa que ha fallado una solicitud interna de memoria procedente de EEM.
(_cerr_sub_err = 11)
FH_ENOSUCHESID
(unknown event specification ID)
Este error significa que no se pudo hacer coincidir el ID de especificación de evento al registrar el evento o que la estructura de
evento interna del detector de eventos está dañada.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 26)
FH_ESUBSIDXINV
(invalid subscriber index)
Este error significa que el índice del suscriptor no era válido.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
(_cerr_sub_err = 56)
FH_EFDCONNERR
(event detector connection error)
Este error significa que el detector de eventos EEM que gestiona esta solicitud no está disponible.
Extensiones del Comando Tcl de Información del Sistema EEM
•
sys_reqinfo_cli_freq
•
sys_reqinfo_cli_history
•
sys_reqinfo_cpu_all
•
sys_reqinfo_crash_history
•
sys_reqinfo_mem_all
•
sys_reqinfo_proc
•
sys_reqinfo_proc_all
•
sys_reqinfo_routername
•
sys_reqinfo_snmp
•
sys_reqinfo_syslog_freq
•
sys_reqinfo_syslog_history
Observetodos los comandos de la información del sistema EEMsys_reqinfo_xxx — — tienen la sección del _cerrno del
conjunto fijada a sí.
sys_reqinfo_cli_freq
Pregunta la información de la frecuencia de todos los eventos de comando line interface(cli).
Sintaxis
sys_reqinfo_cli_freq
Argumentos
Ninguno
Cadena de Resultado
rec_list {{CLI frequency string 0},{CLI frequency str 1}, ...}
Donde está cada cadena de la frecuencia CLI:
el %u del raise_count del %u del match_count del time_msec %ld del time_sec %ld ocurre el period_sec %ld del %u
modelo del period_msec %ld {%s}
rec_list
Marca el comienzo de la lista de frecuencia del evento CLI.
time_sec
time_msec
Última vez en que este evento CLI fue aumentado.
cuenta de la
coincidencia
La cantidad de veces que un comando CLI hace juego el modelo especificó por esta
especificación del evento CLI.
raise_count
Cantidad de veces que este evento CLI fue aumentado. Los campos siguientes son
información sobre la especificación del evento CLI:
• sincronice — Un Sí significa que el evento publica se debe realizar
sychronously. El detector de evento será notificado cuando el servidor del
administrador del evento ha completado publicando el evento. El servidor del
administrador del evento volverá un código que indique independientemente de
si el comando CLI debe ser ejecutado.
•
salto — Un Sí significa que el comando CLI no debe ser ejecutado si el
indicador del sincronizar no se fija.
ocurre
El número de acontecimientos antes de un evento se aumenta; si este argumento no
se especifica, un evento se aumenta en el primer acontecimiento.
period_sec
period_msec
El número de acontecimientos debe ocurrir dentro de este número de unidades del
temporizador POSIX para aumentar el evento; si este argumento no se especifica,
no se aplica.
modelo
Expresión normal usada para realizar las coincidencias de patrones del comando
CLI.
Ajuste _cerrno
Sí
sys_reqinfo_cli_history
Pregunta el historial de los comandos del comando line interface(cli).
Sintaxis
sys_reqinfo_cli_history
Argumentos
Ninguno
Cadena de Resultado
rec_list {{CLI history string 0}, {CLI history str 1},...}
Donde está cada cadena del historial CLI:
time_sec %ld time_msec %ld cmd {%s}
rec_list
Marca el comienzo de la lista de historial del comando CLI.
time_msec del time_sec
Tiempo en que funcionaron con al comando CLI.
cmd
Texto del comando CLI.
Ajuste _cerrno
Sí
sys_reqinfo_cpu_all
Pregunta la utilización de la CPU de los procesos superiores (los procesos y los procesos IOS POSIX) durante un periodo de
tiempo especificado y en una orden especificada. Esta extensión del comando Tcl se soporta solamente en las imágenes de
Software Modularity.
Sintaxis
sys_reqinfo_cpu_all order cpu_used [sec ?] [msec ?] [num ?]
Argumentos
orden
Orden (obligatoria) usada para clasificar la utilización de la CPU de los procesos.
cpu_used
(Obligatorio) especifica que la utilización de la CPU media, para la ventana del tiempo
especificado, será clasificada en el orden descendente.
sec
(Opcional) el período de tiempo, en los segundos y los milisegundos, durante los cuales
milisegundo se calcula la utilización de la CPU media. Deben ser enteros en el rango de 0 a
4294967295. Si no especificado, o si el sec y el milisegundo se especifican como 0, se
utiliza la muestra más reciente CPU.
numérico
(Opcional) Número de entradas desde la parte superior de la lista ordenada de
procesos que se van a mostrar. Debe ser un número entero en el rango de 1 a
4294967295. El valor predeterminado es 5.
Cadena de Resultado
rec_list {{process CPU info string 0},{process CPU info string 1}, ...}
Donde está cada cadena de la información del proceso CPU:
pid %u name {%s} cpu_used %u
rec_list
Marca el comienzo de la lista de la información del proceso CPU.
pid
ID del proceso.
nombre
Nombre del proceso.
cpu_used Especifica que si el sec y el milisegundo se especifican con un número mayor de cero, el
porcentaje medio está calculado de la utilización de la CPU de proceso durante el periodo
de tiempo especificado. Si el sec y el milisegundo son ambo cero o no especificado, el
porcentaje medio se calcula de la utilización de la CPU de proceso en la última muestra.
Ajuste _cerrno
Sí
sys_reqinfo_crash_history
Pregunta la información del desperfecto de todos los procesos que han causado un crash nunca. Esta extensión del comando
Tcl se soporta solamente en las imágenes de Software Modularity.
Sintaxis
sys_reqinfo_crash_history
Argumentos
Ninguno
Cadena de Resultado
rec_list {{crash info string 0},{crash info string 1}, ...}
Where each crash info string is:
job_id %u name {%s} respawn_count %u fail_count %u dump_count %u
inst_id %d exit_status 0x%x exit_type %d proc_state {%s} component_id 0x%x
crash_time_sec %ld crash_time_msec %ld
job_id
ID de trabajo asignado por el administrador del sistema para el proceso. Un
número entero entre 1 y 4.294.967.295, inclusive.
nombre
Nombre del proceso.
respawn_count
Número total de reinicios para el proceso.
fail_count
Número de intentos de reinicio del proceso. Esta cuenta se restablece a cero
cuando el proceso se reinicia con éxito.
dump_count
Número de vaciados de memoria realizados.
inst_id
ID de instancia de proceso.
exit_status
El estado de salida más más reciente del proceso.
exit_type
El tipo de salida más reciente.
proc_state
Estados del proceso Sysmgr. Uno del siguiente: error, forced_stop, hold, init,
ready_to_run, run, run_rnode, stop, waitEOltimer, wait_rnode, wait_spawntimer,
wait_tpl.
component_id
ID de componente asignado por el administrador de versiones al componente al
que pertenece el proceso.
crash_time_sec Los segundos y los milisegundos desde el 1 de enero, 1970, que representan la
crash_time_msec última vez el proceso causó un crash.
Ajuste _cerrno
Sí
sys_reqinfo_mem_all
Pregunta el uso de la memoria de los procesos superiores (POSIX y IOS) durante un periodo de tiempo especificado y en una
orden especificada. Esta extensión del comando Tcl se soporta solamente en las imágenes de Software Modularity.
Sintaxis
sys_reqinfo_mem_all order allocates|increase|used [sec ?] [msec ?] [num ?]
Argumentos
orden
Orden (obligatoria) usada para clasificar el uso de la memoria de los procesos.
afecta un
aparato
(Obligatorio) especifica que el uso de la memoria es clasificado por el número de
asignaciones de proceso durante la ventana del tiempo especificado, y en el orden
descendente.
aumente
(Obligatorio) especifica que el uso de la memoria es clasificado por el porcentaje del
incremento de memoria de proceso durante la ventana del tiempo especificado, y en el
orden descendente.
utilizado
(Obligatorio) especifica que el uso de la memoria es clasificado por la memoria actual
usada por el proceso.
sec
(Opcional) el período de tiempo, en los segundos y los milisegundos, durante los
milisegundo cuales se calcula el uso de la memoria de proceso. Deben ser enteros en el rango de 0
a 4294967295. Si el sec y el milisegundo se especifican y son no-cero, el número de
asignaciones es la diferencia entre el número de asignaciones en las muestras más
viejas y últimas recogidas en el período de tiempo. El porcentaje se calcula como el
diferencia del porcentaje entre la memoria usada en las muestras más viejas y últimas
recogidas en el período de tiempo. Si no especificado, o si el sec y el milisegundo se
especifican como 0, la primera muestra recogida nunca se utiliza como la muestra más
vieja; es decir, el período de tiempo se fija para ser el tiempo del lanzamiento hasta el
momento actual.
numérico
(Opcional) Número de entradas desde la parte superior de la lista ordenada de
procesos que se van a mostrar. Debe ser un número entero en el rango de 1 a
4294967295. El valor predeterminado es 5.
Cadena de Resultado
rec_list {{process mem info string 0},{process mem info string 1}, ...}
Donde está cada cadena de proceso de la información del mem:
pid %u name {%s} delta_allocs %d initial_alloc %u current_alloc %u percent_increase %d
rec_list
Marca el comienzo de la lista de proceso de la información del uso de la memoria.
pid
ID del proceso.
nombre
Nombre del proceso.
delta_allocs
Especifica la diferencia entre el número de asignaciones en las muestras más
viejas y últimas recogidas en el período de tiempo.
initial_alloc
Especifica la cantidad de memoria, en los kilobytes, usados por el proceso al inicio
del período de tiempo.
current_alloc
Especifica la cantidad de memoria, en los kilobytes, usados actualmente por el
proceso.
percent_increase Especifica la diferencia del porcentaje entre la memoria usada en las muestras
más viejas y últimas recogidas en el período de tiempo. La diferencia del
porcentaje se puede expresar como current_alloc menos los tiempos del
initial_alloc 100 y dividir por el initial_alloc.
Ajuste _cerrno
Sí
sys_reqinfo_proc
Pregunta la información sobre un solo proceso POSIX. Esta extensión del comando Tcl se soporta solamente en las imágenes
de Software Modularity.
Sintaxis
sys_reqinfo_proc job_id ?
Argumentos
job_id El administrador del sistema (obligatorio) asignó el trabajo ID para el proceso. Debe ser un
número entero entre 1 y 4294967295, ambos inclusive.
Cadena de Resultado
job_id %u component_id 0x%x name {%s} helper_name {%s} helper_path {%s} path {%s}
node_name {%s} is_respawn %u is_mandatory %u is_hold %u dump_option %d
max_dump_count %u respawn_count %u fail_count %u dump_count %u
last_respawn_sec %ld last_respawn_msec %ld inst_id %u proc_state %s
level %d exit_status 0x%x exit_type %d
job_id
ID de trabajo asignado por el administrador del sistema para el proceso. Un
número entero entre 1 y 4.294.967.295, inclusive.
component_id
ID de componente asignado por el administrador de versiones al componente al
que pertenece el proceso.
nombre
Nombre del proceso.
helper_name
Nombre del proceso del ayudante.
helper_path
Trayecto ejecutable del proceso del ayudante.
trayectoria
Trayecto ejecutable del proceso.
node_name
El administrador del sistema asignó el Nombre del nodo para el nodo al cual el
proceso pertenece.
is_respawn
Señale por medio de una bandera que especifica que el proceso puede
respawned.
is_mandatory
Señale por medio de una bandera que especifica que el proceso debe estar
vivo.
is_hold
Señale por medio de una bandera que especifica que el proceso es
spawn/generado hasta llamado por el API.
dump_option
Base que vacia las opciones.
max_dump_count
Número máximo de base que vacia permitido.
respawn_count
Número total de reinicios para el proceso.
fail_count
Número de intentos de reinicio del proceso. Esta cuenta se restablece a cero
cuando el proceso se reinicia con éxito.
dump_count
Número de vaciados de memoria realizados.
last_respawn_sec Los segundos y los milisegundos en las unidades del temporizador POSIX
last_respawn_msec desde el 1 de enero, 1970, que representan la última vez el proceso fue
comenzado.
inst_id
ID de instancia de proceso.
proc_state
Estados del proceso Sysmgr. Uno del siguiente: error, forced_stop, hold, init,
ready_to_run, run, run_rnode, stop, waitEOltimer, wait_rnode, wait_spawntimer,
wait_tpl.
nivel
Nivel del funcionamiento del proceso.
exit_status
El estado de salida más más reciente del proceso.
exit_type
El tipo de salida más reciente.
Ajuste _cerrno
Sí
sys_reqinfo_proc_all
Pregunta la información de todos los procesos POSIX. Esta extensión del comando Tcl se soporta solamente en las imágenes
de Software Modularity.
Sintaxis
sys_reqinfo_proc_all
Argumentos
Ninguno
Cadena de Resultado
rec_list {{process info string 0}, {process info string 1},...}
Donde está lo mismo cada cadena de la información de proceso que la cadena del resultado sysreq_info_proc de la extensión
del comando Tcl.
Ajuste _cerrno
Sí
sys_reqinfo_routername
Pregunta el nombre del router.
Sintaxis
sys_reqinfo_routername
Argumentos
Ninguno
Cadena de Resultado
routername %s
Donde está el nombre el routername del router.
Ajuste _cerrno
Sí
sys_reqinfo_snmp
Pregunta el valor de la entidad especificado por una identificación de objeto del Simple Network Management Protocol (SNMP)
Sintaxis
sys_reqinfo_snmp oid ? get_type exact|next
Argumentos
oid
SNMP (obligatorio) OID en la notación del punto (por ejemplo, 1.3.6.1.2.1.2.1.0).
get_type El tipo (obligatorio) de SNMP consigue la operación que necesita ser aplicada al oid
especificado. Si el get_type es “exacto,” el valor del oid especificado se extrae; si el
get_type está “después,” el valor del sucesor lexicográfico al oid especificado se extrae.
Cadena de Resultado
oid {%s} value {%s}
oid
SNMP OID.
valor
Cadena del valor del elemento de datos SNMP asociado.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 37)
FH_ENOSNMPDATA
(can't retrieve data from SNMP)
Este error significa que no había datos para el tipo de objeto SNMP.
(_cerr_sub_err = 51)
FH_ESTATSTYP
(invalid statistics data type)
Este error significa que el tipo de datos de las estadísticas SNMP era inválido.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
sys_reqinfo_syslog_freq
Pregunta la información de la frecuencia de todos los eventos de syslog.
Sintaxis
sys_reqinfo_syslog_freq
Argumentos
Ninguno
Cadena de Resultado
rec_list {{event frequency string 0}, {log freq str 1}, ...}
Donde está cada cadena de la frecuencia del evento:
time_sec %ld time_msec %ld match_count %u raise_count %u occurs %u
period_sec %ld period_msec %ld pattern {%s}
time_sec
time_msec
Los segundos y los milisegundos en las unidades del temporizador POSIX desde el 1
de enero, 1970, que representan el tiempo el evento más reciente fue aumentado.
match_count La cantidad de veces que un mensaje de Syslog hace juego el modelo especificó por
esta especificación del evento de syslog desde el registro del evento.
raise_count
Cantidad de veces que este evento de syslog fue aumentado.
ocurre
El número de acontecimientos necesitó para aumentar el evento; si no se especifica, el
evento se produce en la primera aparición.
period_sec El número de acontecimientos debe ocurrir dentro de este número de unidades del
period_msec temporizador POSIX para aumentar el evento; si no especificado, el control del
período no se aplica.
modelo
Expresión normal usada para realizar las coincidencias de patrones del mensaje de
Syslog.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err =
9)
FH_EMEMORY
(insufficient memory for request)
Este error significa que ha fallado una solicitud interna de memoria procedente de EEM.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 45)
FH_ESEQNUM
(sequence or workset number out of sync)
Este error significa que la secuencia del detector de eventos o el número de workset era inválido.
(_cerr_sub_err = 46)
FH_EREGEMPTY
(registration list is empty)
Este error significa que la lista del registro del detector de evento estaba vacía.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
sys_reqinfo_syslog_history
Pregunta el historial del mensaje de Syslog especificado.
Sintaxis
sys_reqinfo_syslog_history
Argumentos
Ninguno
Cadena de Resultado
rec_list {{log hist string 0}, {log hist str 1}, ...}
Donde está cada cadena del hist del registro:
time_sec %ld time_msec %ld msg {%s}
time_sec Los segundos y los milisegundos desde el 1 de enero, 1970, que representan el tiempo
time_msec el mensaje fue registrado.
msg
Mensaje de Syslog.
Ajuste _cerrno
Sí
(_cerr_sub_err =
2)
FH_ESYSERR
(generic/unknown error from OS/system)
Este error significa que el sistema operativo notificó un error. El valor de POSIX errno que se comunica con el error se debe
utilizar para determinar la causa del error del sistema operativo.
(_cerr_sub_err = 22)
FH_ENULLPTR
(event detector internal error - ptr is null)
Este error significa que un puntero interno del detector de eventos de EEM era nulo cuando debía contener un valor.
(_cerr_sub_err = 44)
FH_EHISTEMPTY
(history list is empty)
Este error significa que la lista de historial estaba vacía.
(_cerr_sub_err = 45)
FH_ESEQNUM
(sequence or workset number out of sync)
Este error significa que la secuencia del detector de eventos o el número de workset era inválido.
(_cerr_sub_err = 54)
FH_EFDUNAVAIL
(connection to event detector unavailable)
Este error significa que el detector de eventos no estaba disponible.
Extensiones del Comando Debug de la Biblioteca EEM
•
cli_debug
•
smtp_debug
cli_debug
Imprime una declaración del debug del comando line interface(cli) al Syslog. Esta extensión del comando Tcl se utiliza para
imprimir una declaración del debug CLI al Syslog si debug event manager tcl cli_library el comando del Cisco IOS CLI está
en efecto.
Sintaxis
cli_debug spec_string debug_string
Argumentos
el spec_string
(Obligatorio) El argumento spec_string se usa para indicar el tipo de sentencia de
debug.
el
debug_string
(Obligatorio) El argumento debug_string se utiliza para indicar el texto de debugging.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
smtp_debug
Imprime una declaración del debug del Simple Mail Transfer Protocol (SMTP) al Syslog. Esta extensión del comando Tcl
imprime una declaración del debug S TP al Syslog si debug event manager tcl smtp_library el comando line interface (cli) del
Cisco IOS está en efecto.
Sintaxis
smtp_debug spec_string debug_string
Argumentos
el spec_string
(Obligatorio) El argumento spec_string se usa para indicar el tipo de sentencia de
debug.
el
debug_string
(Obligatorio) El argumento debug_string se utiliza para indicar el texto de debugging.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Extensiones de Comando de la Biblioteca SMTP
Todas las Extensiones del comando de la biblioteca del Simple Mail Transfer Protocol (SMTP) pertenecen al:: Cisco::
namespace de la liberación.
Para utilizar esta biblioteca, el usuario necesita proporcionar un archivo de plantilla del email. El archivo de plantilla puede incluir
las variables globales Tcl para poder configurar el servicio de email y el texto del email a través event manager environment
Cisco IOS del comando configuration del comando line interface(cli). Hay comandos en esta biblioteca de substituir las
variables globales en el archivo de plantilla del email y de enviar el contexto deseado del email con para dirigir, direccionamiento
del CC, del direccionamiento, y de los asuntos configurados correctamente usando el servidor configurado del email.
Plantilla del email
El archivo de plantilla del email tiene el formato siguiente:
Observebasado en el RFC 2554, el email S TP Nombre del servidor — Mailservername — puede estar en de los formatos
siguientes de la plantilla: nombre de usuario: password@host, username@host, o host.
Mailservername:<space><the list of candidate SMTP server addresses>
From:<space><the e-mail address of sender>
To:<space><the list of e-mail addresses of recipients>
Cc:<space><the list of e-mail addresses that the e-mail will be copied to>
Sourceaddr:<space><the IP addresses of the recipients>
Subject:<subject line>
<a blank line>
<body>
Observela nota que la plantilla incluye normalmente las variables globales Tcl que se configurarán.
Abajo está un archivo de plantilla del email de la muestra:
Mailservername: $_email_server
From: $_email_from
To: $_email_to
Cc: $_email_cc
Sourceaddr: $_email_ipaddr
Subject: From router $routername: Process terminated
process name: $process_name
subsystem: $sub_system
exit status: $exit_status
respawn count: $respawn_count
Extensiones de comando de Tcl Exportadas
•
smtp_send_email
•
smtp_subst
smtp_send_email
Dado el texto de un archivo de plantilla del email con todas las variables globales substituido ya, manda el email usando el
Simple Mail Transfer Protocol (SMTP). La plantilla del email especifica los direccionamientos del mail server del candidato, a los
direccionamientos, a los direccionamientos del CC, del direccionamiento, de los asuntos, y del cuerpo del correo electrónico.
Observela lista A de candidato que los servidores del email pueden ser proporcionados de modo que la biblioteca intente
conectar los servidores en la lista uno por uno hasta que pueda conectar con éxito con uno de ellos.
Sintaxis
smtp_send_email text
Argumento
texto (Obligatorio) el texto de un archivo de plantilla del email con todas las variables globales
substituido ya.
s
Cadena de Resultado
Ninguno
Ajuste _cerrno
•
Perjudique el 1r formato de línea — Mailservername: lista de nombres de servidor.
•
Perjudique el 2do formato de línea — De: de-direccionamiento.
•
Perjudique el 3ro formato de línea — A: lista de a-direccionamientos.
•
Perjudique el 4to formato de línea — CC: lista de cc-direccionamientos.
• Error al conectar con el servidor de correo: — $sock cerrado por el servidor remoto (donde $sock es el nombre del
socket abierto al servidor de mail).
• Error al conectar con el servidor de correo: — el código de la contestación $sock es $k en vez del saludo listo del
servicio (donde está el nombre $sock del socket abierto en el mail server; $k es el código de la contestación de $sock).
•
Error al conectar con el servidor de correo: — no puede conectar con todos los servidores del correo del candidato.
• Error que desconecta del mail server: — $sock cerrado por el servidor remoto (donde $sock es el nombre del socket
abierto al servidor de mail).
Secuencias de comandos de ejemplo
Después de todo las variables globales necesarias en la plantilla del email se definen:
if [catch {smtp_subst [file join $tcl_library email_template_sm]} result] {
puts stderr $result
exit 1
}
if [catch {smtp_send_email $result} result] {
puts stderr $result
exit 1
}
smtp_subst
Dado un e-mail_template del archivo de plantilla del email, substituye cada variable global en el archivo por su valor definido por
el usuario. Vuelve el texto del archivo después de la substitución.
Sintaxis
smtp_subst e-mail_template
Argumento
eNombre (obligatorio) de un archivo de plantilla del email en el cual las variables
mail_template globales necesitan ser substituidas por un valor definido por el usuario. Un nombre
de fichero del ejemplo podría ser /disk0://example.template que representa un
archivo nombrado example.template en un directorio a nivel superior en un disco
Flash ATA en el slot0.
s
Cadena de Resultado
El texto del archivo de plantilla del email con todas las variables globales substituido.
Ajuste _cerrno
•
no puede abrir el archivo de plantilla del email
•
no puede cerrar el archivo de plantilla del email
Extensiones de Comando de la Biblioteca CLI
Todas las Extensiones del comando de la biblioteca de comando line interface(cli) pertenecen al :: Cisco:: eem.
Esta biblioteca proporciona a los usuarios la capacidad de funcionar con los comandos CLI y de conseguir la salida de los
comandos en el Tcl. Los usuarios pueden utilizar los comandos en esta biblioteca de spawn/generar un ejecutivo y abrir un
canal del Terminal virtual en él, escriba el comando de ejecutar al canal de modo que el comando sea ejecutado por el
ejecutivo, y de releer la salida del comando.
Hay dos tipos de comandos CLI: comandos interactivos y comandos no interactivos.
Para los comandos interactivos, después de que el comando se ingrese, habrá una fase del “Q&A” en la cual el router pedirá
diversa Opción del usuario, y suponen al usuario ingresar la respuesta para cada pregunta. Solamente después de todo las
preguntas se han contestado correctamente el comando funcionado con según las opciones de usuario hasta la realización.
Para los comandos no interactivos, una vez que se ingresa el comando, el comando se ejecutará a la realización. Para
funcionar con diversos tipos de comandos usando un script EEM, diversas secuencias de comandos de la biblioteca CLI deben
ser utilizadas, que se documentan en “usando la biblioteca CLI para funcionar con la sección de un comando no interactivo” y
en “usando la biblioteca CLI para funcionar con la sección de un comando interactivo”.
Las líneas del vty se afectan un aparato del pool de las líneas del vty que se configuran usando line vty el comando de
configuración CLI. EEM utilizará una línea del vty cuando una línea del vty no está siendo utilizada por EEM y hay líneas
disponibles del vty. EEM también utilizará una línea del vty cuando EEM está utilizando ya una línea del vty y hay tres o más
líneas del vty disponibles. Sea consciente que la conexión fallará cuando más poco de tres líneas del vty están disponibles,
preservando el vty restante alinea para el uso de Telnet.
En el Cisco IOS Release 12.4(22)T, y posterior las versiones, soporte XML-PI fueron introducidas. Para más información sobre
el soporte XML-PI, las nuevas Extensiones del comando de la biblioteca CLI, y algunos ejemplos de cómo implementar XML-PI,
consideran “la sección del soporte de la biblioteca XML-PI CLI”.
Extensiones de comando de Tcl Exportadas
•
cli_close
•
cli_exec
•
cli_get_ttyname
•
cli_open
•
cli_read
•
cli_read_drain
•
cli_read_line
•
cli_read_pattern
•
cli_run
•
cli_run_interactive
•
cli_write
cli_close
Cierra el proceso del ejecutivo y libera el vty y al programa piloto del canal especificado conectados con el comando line
interface(cli).
Sintaxis
cli_close fd tty_id
Argumentos
fd
(Obligatorio) Handler del canal CLI.
tty_id
(Obligatorio) El TTY ID volvió cli_open de la extensión del comando.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No puede cerrar el canal.
cli_exec
Escribe el comando al programa piloto del canal especificado de ejecutar el comando. Después lee la salida del comando del
canal y vuelve la salida.
Sintaxis
cli_exec fd cmd
Argumentos
fd
(Obligatorio) el programa piloto del canal de comando line interface(cli).
cmd
(Obligatorio) El comando CLI que se va a ejecutar.
Cadena de Resultado
La salida del comando CLI ejecutado.
Ajuste _cerrno
Error de lectura el canal.
cli_get_ttyname
Vuelve los nombres reales y pseudo TTY para una identificación dada TTY
Sintaxis
cli_get_ttyname tty_id
Argumento
tty_id
(Obligatorio) El TTY ID volvió cli_open de la extensión del comando.
s
Cadena de Resultado
pty %s tty %s
Ajuste _cerrno
Ninguno
cli_open
Afecta un aparato un vty, crea una sesión del comando line interface(cli) del EXEC, y conecta el vty con un programa piloto del
canal. Vuelve un arsenal incluyendo el programa piloto del canal.
Observecada llamada a cli_open inicia a una sesión EXEC del Cisco IOS que afecte un aparato una línea del vty del Cisco
IOS. El vty sigue siendo funcionando hasta que cli_close se llame la rutina. Las líneas del vty se afectan un aparato del
pool de las líneas del vty que se configuran usando line vty el comando de configuración CLI. EEM utilizará una línea
del vty cuando una línea del vty no está siendo utilizada por EEM y hay líneas disponibles del vty. EEM también
utilizará una línea del vty cuando EEM está utilizando ya una línea del vty y hay tres o más líneas del vty disponibles.
Sea consciente que la conexión fallará cuando más poco de tres líneas del vty están disponibles, preservando el vty
restante alinea para el uso de Telnet
Sintaxis
cli_open
Argumentos
Ninguno
Cadena de Resultado
"tty_id {%s} pty {%d} tty {%d} fd {%d}"
Tipo de Evento
Descripción
tty_id
IDENTIFICACIÓN TTY
pty
Nombre del dispositivo PTY.
tty
Nombre del dispositivo TTY.
fd
Programa piloto del canal CLI.
Ajuste _cerrno
•
No puede conseguir el pty para el EXEC.
•
No puede crear a una sesión CLI del EXEC.
•
Error de lectura el primer prompt.
cli_read
Lee la salida de comando del programa piloto especificado del canal de comando line interface(cli) hasta que el modelo del
prompt de router ocurra en el contenido leído. Devuelve todo el contenido leído hasta la coincidencia.
Sintaxis
cli_read fd
Argumentos
fd
(Obligatorio) Handler del canal CLI.
Cadena de Resultado
Todo el contenido leído.
Ajuste _cerrno
No puede conseguir el nombre del router.
Observeesta extensión del comando Tcl bloqueará esperar el prompt de router para aparecer en el contenido leído.
cli_read_drain
Lee y drena la salida de comando del programa piloto especificado del canal de comando line interface(cli). Vuelve todo el
contenido leído.
Sintaxis
cli_read_drain fd
Argumentos
fd
(Obligatorio) Handler del canal CLI.
Cadena de Resultado
Todo el contenido leído.
Ajuste _cerrno
Ninguno
cli_read_line
Lee una línea de la salida de comando del programa piloto especificado del canal de comando line interface(cli). Vuelve la línea
leída.
Sintaxis
cli_read_line fd
Argumentos
fd
(Obligatorio) Handler del canal CLI.
Cadena de Resultado
La línea leída.
Ajuste _cerrno
Ninguno
Observeesta extensión del comando Tcl bloqueará esperar el fin de la línea para aparecer en el contenido leído.
cli_read_pattern
Lee la salida de comando del programa piloto especificado del canal de comando line interface(cli) hasta que el modelo que
debe para ser correspondido con ocurra en el contenido leído. Devuelve todo el contenido leído hasta la coincidencia.
Observela lógica de las coincidencias de patrones intenta una coincidencia mirando los datos de salida de comando como se
entrega del comando cisco ios. La coincidencia se hace siempre en los caracteres más recientes 256 del búfer de salida a
menos que haya menos caracteres disponibles, en este caso la coincidencia se hace en menos caracteres. Si más que
los caracteres 256 en el búfer de salida se requieren para que la coincidencia tenga éxito, el modelo no hará juego.
Sintaxis
cli_read_pattern fd ptn
Argumentos
fd
(Obligatorio) Handler del canal CLI.
ptn (Obligatorio) el modelo que se corresponderá con al leer la salida de comando del canal.
Cadena de Resultado
Todo el contenido leído.
Ajuste _cerrno
Ninguno
Observeesta extensión del comando Tcl bloqueará esperar el modelo especificado para aparecer en el contenido leído.
cli_run
Itera sobre los elementos en el clist y asume que cada uno es comando line interface (cli) de ser ejecutado en el enable mode.
En el éxito, vuelve la salida de todos los comandos ejecutados y en el error, error de las devoluciones del error.
Sintaxis
cli_run clist
Argumentos
clist
(Obligatorio) la lista de comandos de ser ejecutado.
Cadena de Resultado
Salida de todos los comandos se ejecutan que o de un mensaje de error.
Ajuste _cerrno
Ninguno.
Ejemplo de Uso
El siguiente ejemplo muestra cómo utilizar cli_run la extensión del comando.
set clist [list {sh run} {sh ver} {sh event man pol reg}]
cli_run { clist }
cli_run_interactive
Proporciona una sublista al clist que tiene cuatro elementos. En el éxito, vuelve la salida de todos los comandos ejecutados y en
el error, error de las devoluciones del error. También utiliza los vectses cuando es posible mientras que una manera de hacer
las cosas más fáciles leer más adelante guardando espera y contesta separado.
Sintaxis
cli_run_interactive clist
Argumentos
clist La sublista (obligatoria) que tiene cuatro elementos y cada elemento tiene cuatro subitems:
•
comando
– espere
– una pregunta prevista
– contestación
– contestación a esta pregunta
•
un comando de ejecutarse
– espere
– una pregunta prevista
– contestación
– contestación a esta pregunta
•
respuestas
– espere
– una pregunta prevista
– contestación
– contestación a esta pregunta
•
una lista qué a esperar y qué a contestar.
– espere
– una pregunta prevista
– contestación
– contestación a esta pregunta
Cadena de Resultado
Salida de todos los comandos se ejecutan que o de un mensaje de error.
Ajuste _cerrno
Ninguno.
Ejemplo de Uso
El siguiente ejemplo muestra cómo utilizar la extensión interactiva del comando del cli_ru_.
set cmd1 "first command"
set cmd1_exp1 {[confirm]}
set cmd1_rep1 {y}
set cmd1_response [list [list expect $cmd1_exp1 reply $cmd1_rep1]]
set cmd2 "second command"
set cmd2_exp1 {save config}
set cmd2_rep1 {no}
set cmd2_exp2 {[confirm]}
set cmd2_rep2 {y}
set cmd2_response [list [list expect $cmd2_exp1 reply $cmd2_rep1] [list expect $cmd2_exp2
reply $cmd2_rep2]]
set cmd3 "third command"
set cmd3_exp1 {are you sure}
set cmd3_rep1 {yes}
set cmd3_exp2 {destination file}
set cmd3_rep2 {test.txt}
set cmd2_response [list [list expect $cmd3_exp1 reply $cmd3_rep1] [list expect $cmd3_exp2
reply $cmd3_rep2]]
set clist [list " command $cmd1 responses $cmd1_response" " command $cmd2 responses
$cmd2_response" " command $cmd3 responses $cmd3_response"]
cli_run_interactive { clist }
cli_write
Escribe el comando que debe ser ejecutado al programa piloto especificado del canal CLI. El programa piloto del canal CLI
ejecuta el comando.
Sintaxis
cli_write fd cmd
Argumentos
fd
(Obligatorio) Handler del canal CLI.
cmd
(Obligatorio) El comando CLI que se va a ejecutar.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Ninguno
Ejemplo de Uso
Como un ejemplo, comandos CLI de la configuración del uso de sacar a colación la interfaz de Ethernet 1/0:
if [catch {cli_open} result] {
puts stderr $result
exit 1
} else {
array set cli1 $result
}
if [catch {cli_exec $cli1(fd) "en"} result] {
puts stderr $result
exit 1
}
if [catch {cli_exec $cli1(fd) "config t"} result] {
puts stderr $result
exit 1
}
if [catch {cli_exec $cli1(fd) "interface Ethernet1/0"} result] {
puts stderr $result
exit 1
}
if [catch {cli_exec $cli1(fd) "no shut"} result] {
puts stderr $result
exit 1
}
if [catch {cli_exec $cli1(fd) "end"} result] {
puts stderr $result
exit 1
}
if [catch {cli_close $cli1(fd) $cli1(tty_id)} } result] {
puts stderr $result
exit 1
Usando la biblioteca CLI para funcionar con un comando no interactivo
Para funcionar con un comando no interactivo, utilice cli_exec la extensión del comando para publicar el comando, y después
espere el resultado completo y el prompt de router. Por ejemplo, las demostraciones siguientes el uso de los comandos CLI de
la configuración de sacar a colación la interfaz de Ethernet 1/0:
if [catch {cli_open} result] {
error $result $errorInfo
} else {
set fd $result
}
if [catch {cli_exec $fd "en"} result] {
error $result $errorInfo
}
if [catch {cli_exec $fd "config t"} result] {
error $result $errorInfo
}
if [catch {cli_exec $fd "interface Ethernet1/0"} result] {
error $result $errorInfo
}
if [catch {cli_exec $fd "no shut"} result] {
error $result $errorInfo
}
if [catch {cli_exec $fd "end"} result] {
error $result $errorInfo
}
if [catch {cli_close $fd} result] {
error $result $errorInfo
}
Usando la biblioteca CLI para funcionar con un comando interactivo
Para funcionar con los comandos interactivos, tres fases son necesarias:
•
Fase 1: Publique el comando usando cli_write la extensión del comando.
• Fase 2: Fase del Q&A. Utilice cli_read_pattern la extensión del comando para leer la pregunta (el modelo regular que
se especifica para hacer juego el texto de la pregunta) y cli_write la extensión del comando para contestar las respuestas
alternativamente.
• Fase 3: Fase no interactiva. Se han contestado todas las preguntas, y el comando se ejecutará a la realización. Utilice
cli_read la extensión del comando para esperar el resultado completo del comando y del prompt de router.
Por ejemplo, comandos CLI del uso de hacer el bootflash del apretón: y salve la salida de este comando en el cmd_output de la
variable Tcl.
if [catch {cli_open} result] {
error $result $errorInfo
} else {
array set cli1 $result
}
if [catch {cli_exec $cli1(fd) "en"} result] {
error $result $errorInfo
}
# Phase 1: issue the command
if [catch {cli_write $cli1(fd) "squeeze bootflash:"} result] {
error $result $errorInfo
}
# Phase 2: Q&A phase
# wait for prompted question:
# All deleted files will be removed. Continue? [confirm]
if [catch {cli_read_pattern $cli1(fd) "All deleted"} result] {
error $result $errorInfo
}
# write a newline character
if [catch {cli_write $cli1(fd) "\n"} result] {
error $result $errorInfo
}
# wait for prompted question:
# Squeeze operation may take a while. Continue? [confirm]
if [catch {cli_read_pattern $cli1(fd) "Squeeze operation"} result] {
error $result $errorInfo
}
# write a newline character
if [catch {cli_write $cli1(fd) "\n"} result] {
error $result $errorInfo
}
# Phase 3: noninteractive phase
# wait for command to complete and the router prompt
if [catch {cli_read $cli1(fd) } result] {
error $result $errorInfo
} else {
set cmd_output $result
}
if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
error $result $errorInfo
}
El siguiente ejemplo hace a un router ser recargado usando el comando CLI reload . Observe que el comando action_reload
EEM logra el mismo resultado de una manera más eficiente, pero este ejemplo se presenta para ilustrar la flexibilidad de la
biblioteca CLI para la ejecución interactiva del comando.
# 1. execute the reload command
if [catch {cli_open} result] {
error $result $errorInfo
} else {
array set cli1 $result
}
if [catch {cli_exec $cli1(fd) "en"} result] {
error $result $errorInfo
}
if [catch {cli_write $cli1(fd) "reload"} result] {
error $result $errorInfo
} else {
set cmd_output $result
}
if [catch {cli_read_pattern $cli1(fd) ".*(System configuration has been modified. Save\\\?
\\\[yes/no\\\]: )"} result] {
error $result $errorInfo
} else {
set cmd_output $result
}
if [catch {cli_write $cli1(fd) "no"} result] {
error $result $errorInfo
} else {
set cmd_output $result
}
if [catch {cli_read_pattern $cli1(fd) ".*(Proceed with reload\\\? \\\[confirm\\\])"}
result] {
error $result $errorInfo
} else {
set cmd_output $result
}
if [catch {cli_write $cli1(fd) "y"} result] {
error $result $errorInfo
} else {
set cmd_output $result
}
if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
error $result $errorInfo
}
Soporte de la biblioteca XML-PI CLI
La interfaz programática XML (XML-PI) fue introducida en el Cisco IOS Release 12.4(22)T. XML-PI proporciona una interfaz
programable que encapsule los comandos show del comando line interface(cli) IOS en el formato XML en una manera
coherente a través de diversos Productos Cisco. Los clientes que usan XML-PI podrán analizar la salida del comando show IOS
dentro del Scripts TCL usando las palabras claves bien conocidas en vez de tener que depender del uso de la salida del
“pantalla-rascado” del soporte de la expresión normal.
La ventaja de usar las Extensiones del comando XML-PI es facilitar la extracción de la información específica de la salida que
se genera usando un comando CLI show . La mayoría de los comandos show vuelven muchos campos dentro de la salida y
una expresión normal tiene que ser utilizada actualmente para extraer la información específica de la información que puede
aparecer en el medio de una línea. El soporte XML-PI proporciona un conjunto de las funciones de biblioteca Tcl para facilitar el
análisis de la salida IOS CLI de la extensión del formato bajo la forma de:
show <show-command> | format {spec-file}
donde está una concatenación un SPEC-ARCHIVO de todas las entradas de archivo espec. (SFE) para cada show comando
soportado actualmente. Como parte del proyecto XML-PI un SPEC-ARCHIVO predeterminado será incluido en las imágenes de
la versión del IOS 12.4(22)T. El spec-ARCHIVO predeterminado tendrá un pequeño conjunto de comandos y el SFE para los
comandos tendrá un subconjunto de las etiquetas posibles. Si no se proporciona ningún SPEC-ARCHIVO el comando format,
se utiliza el SPEC-ARCHIVO predeterminado.
Por ejemplos de implementar la característica XML-PI, vea “uso de la muestra la sección de la característica XML-PI”.
Para detalles más generales sobre XML-PI, vea el módulo “XML-PI”.
The following Tcl command extensions were introduced to support XML-PI:
•
xml_pi_exec
•
xml_pi_parse
•
xml_pi_read
•
xml_pi_write
xml_pi_exec
Escribe el comando XML-PI especificado usando el argumento del cmd al canal cuyo especifican a programa piloto usando el
argumento fd y el SPEC-ARCHIVO especificados por el argumento spec_file para ejecutar el comando. Los datos de salida sin
procesar XML del comando entonces se leen en el canal y se vuelve la salida XML.
Sintaxis
xml_pi_show fd cmd [spec_file]
Argumentos
fd
(Obligatorio) El descriptor de archivo de la biblioteca de CLI obtenido de cli_open.
cmd
(Obligatorio) Comando show de IOS.
spec_file (Opcional) spec_file del comando show de la CLI de IOS.
Cadena de Resultado
Resultado del comando show IOS en el formato XML.
Ajuste _cerrno
Error posible aumentado:
1. error de lectura el canal
xml_pi_parse
Procesa la salida sin procesar del comando show XML pasajera en esta función como xml_data y extrae esos campos que sean
especificados por el xml_tags_list. El proceso siguiente ocurre:
Paso 1: La lista de la etiqueta XML se valida como lista Tcl. Una etiqueta XML se puede especificar como el nombre de la
etiqueta del bajo orden XML o pues un nombre calificado completamente de la etiqueta XML en caso de que el nombre de
orden inferior sea ambiguo para un comando dado.
Etiquetas del ejemplo:
<interface>
<ShowIpInterfaceBrief><IPInterfaces><entry><Interface>
Paso 2: El xml_data se valida como XML válido y se analiza en un árbol de análisis XML.
Paso 3: Un paseo se hace a través del árbol de análisis XML y cada etiqueta se compara con las entradas en la lista de la
etiqueta XML. Cuando ocurre un emparejamiento se determina si el nombre de la etiqueta corresponde con un procedimiento
Tcl definido dentro del alcance actual Tcl. Si es así ese procedimiento Tcl será llamado con el resultado actual. Si no, el nombre
de la etiqueta y los datos asociados a ese nombre de la etiqueta serán añadidos al final del fichero al resultado actual.
Sintaxis
xml_pi_parse fd xml_show_cmd_output xml_tags_list
Argumentos
fd
(Obligatorio) El descriptor de archivo de la biblioteca de CLI obtenido de
cli_open.
xml_show_cmd_output Salida (obligatoria) de la extensión del comando del xml_pi_show en el
formato del xml.
xml_tags_list
Lista (obligatoria) de etiquetas interesantes.
Cadena de Resultado
Los datos en un arsenal Tcl puesto en un índice por el XML marcan el nombre con etiqueta.
Observeel resultado actual se reajusta después de las llamadas de procedimiento Tcl.
Ajuste _cerrno
Posibles errores generados:
1. el error que parte el XML marca la lista con etiqueta
2. lista nula de la etiqueta XML especificada
3. El árbol de la etiqueta XML excede 20 niveles
4. el procedimiento llamado Tcl volvió un error
5. falla de asignación de memoria
6. El XML analiza el error
7. no podido crear el dominio XML
xml_pi_read
Lee la salida de comando XML-PI (del comando show especificado) del canal CLI cuyo la descripción del archivo da programa
piloto hasta que el modelo del prompt de router ocurra en el contenido se lee que. Vuelve todo el contenido leído hasta la
coincidencia en el formato XML.
Sintaxis
xml_pi_read fd
Argumentos
fd (Obligatorio) El descriptor de archivo de la biblioteca de CLI obtenido de cli_open.
Cadena de Resultado
Todo el contenido que es adentro leído formato XML.
Ajuste _cerrno
Posibles errores generados:
1. no puede conseguir el nombre del router
2. comando error
xml_pi_write
Escribe el comando XML-PI especificado usando el argumento del cmd al canal cuyo el archivo especificado espec. por el
argumento spec_file da programa piloto el argumento fd y.
Sintaxis
xml_pi_write fd cmd spec_file
Argumentos
fd
(Obligatorio) El descriptor de archivo de la biblioteca de CLI obtenido de cli_open.
cmd
(Obligatorio) Comando show de IOS.
spec_file (Opcional) spec_file del comando show de la CLI de IOS.
Cadena de Resultado
Ninguno
Ajuste _cerrno
Ninguno
Uso de la muestra de la característica XML-PI
La directiva siguiente EEM (sample.tcl) presenta un ejemplo que ilustre cinco diversas implementaciones de las nuevas
funciones EEM XML-PI. El spec-ARCHIVO odm (requerido por ejemplo 2) sigue esta directiva.
::cisco::eem::event_register_none maxrun 60
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
# open the cli_lib.tcl channel
if [catch {cli_open} result] {
error $result $errorInfo
} else {
array set cli1 $result
}
# enter "enable" privilege mode
if [catch {cli_exec $cli1(fd) "en"} result] {
error $result $errorInfo
}
# Example 1:
#
# Detect if XML-PI is present in this image
# Invoke xml_pi_exec with the default spec file for the "show inventory"
# command. After the command executes $result contains the raw XML data if
# the command is successful.
if [catch {xml_pi_exec $cli1(fd) "show inventory" ""} result] {
puts "Example 1: XML-PI support is not present in this image - exiting"
exit
} else {
puts "Example 1: XML-PI support is present in this image"
}
# Example 2:
#
# In the next example we demonstrate how to extract two data elements
# from the "show version" command using the specified XML-PI spec file.
# The raw output from this command is as follows:
#
# router#show version | format disk2:speceemtest.odm
# <?xml version="1.0" encoding="UTF-8"?>
# <ShowVersion>
# <Version>12.4(20071029:194217)</Version>
# <Compiled>Thu 08-Nov-07 11:28</Compiled>
# <ROM>System Bootstrap, Version 12.2(20030826:190624) [BLD-npeg1_rommon_r11 102],
DEVELOPMENT</ROM>
# <uptime>17 minutes</uptime>
# <processor>NPE-G1</processor>
# <bytesofmemory>983040K/65536K</bytesofmemory>
# <CPU>700MHz</CPU>
# <L2Cache>0.2</L2Cache>
# <GigabitEthernetinterfaces>3</GigabitEthernetinterfaces>
# <bytesofNVRAM>509K</bytesofNVRAM>
# <bytesofATAPCMCIAcard>125952K</bytesofATAPCMCIAcard>
# <Sectorsize>512 bytes</Sectorsize>
# <bytesofFlashinternalSIMM>16384K</bytesofFlashinternalSIMM>
# <Configurationregister>0x2100</Configurationregister>
# </ShowVersion>
#
# Invoke xml_pi_exec with the spec file "disk2:speceemtest.odm" for the
# "show version" command. After the command executes $result contains
# the raw XML data.
if [catch {xml_pi_exec $cli1(fd) "show version" "disk2:speceemtest.odm"} result] {
error $result $errorInfo
} else {
# Pass the raw XML data to the xml_pi_parse routine to extract fields
# of interest:
# we ask that only the <processor> and <CPU> fields be returned.
array set xml_result [xml_pi_parse $cli1(fd) $result "<processor> <CPU>"]
puts "Example 2: Processor is $xml_result(<processor>) CPU is $xml_result(<CPU>)"
}
# Example 3:
#
# In the next example we demonstrate how to extract two data elements
# from the multi-record "show inventory" command using the default built-in
# XML-PI spec file. Sample raw output from this command is as follows:
#
# router#show inventory | format
# <?xml version="1.0" encoding="UTF-8"?>
# <ShowInventory>
# <SpecVersion>built-in</SpecVersion>
# <InventoryEntry>
# <ChassisName>"Chassis"</ChassisName>
# <Description>"Cisco 7206VXR, 6-slot chassis"</Description>
# <PID>CISCO7206VXR</PID>
# <VID>
# </VID>
# <SN>31413378 </SN>
# </InventoryEntry>
# <InventoryEntry>
# <ChassisName>"NPE-G1 0"</ChassisName>
# <Description>"Cisco 7200 Series Network Processing Engine
NPE-G1"</Description>
# <PID>NPE-G1</PID>
# <VID>
# </VID>
# <SN>31493825 </SN>
# </InventoryEntry>
# <InventoryEntry>
# <ChassisName>"disk2"</ChassisName>
# <Description>"128MB Compact Flash Disk for NPE-G1"</Description>
# <PID>MEM-NPE-G1-FLD128</PID>
# <VID>
# </VID>
# <SN>NAME: "module 1"</SN>
# </InventoryEntry>
# <InventoryEntry>
# <ChassisName>"module 1"</ChassisName>
# <Description>"Dual Port FastEthernet (RJ45)"</Description>
# <PID>PA-2FE-TX</PID>
# <VID>
# </VID>
# <SN>JAE0827NGKX</SN>
# </InventoryEntry>
# <InventoryEntry>
# <ChassisName>"Power Supply 2"</ChassisName>
# <Description>"Cisco 7200 AC Power Supply"</Description>
# <PID>PWR-7200-AC</PID>
# <VID>
# </VID>
# </InventoryEntry>
# </ShowInventory>
#
# Define a procedure to be called every time the <InventoryEntry> tag
# is processed. Since this tag precedes each new output record, the data
# that is passed into this procedure contains the fields that have been
# requested via xml_pi_parse since the previous time this procedure was
# called.
proc <InventoryEntry> {xml_line} {
global num
# The first time that this function is called there is no data and
# xml_line will be null.
if [string length $xml_line] {
array set xml_result $xml_line
incr num
set output [format "Example 3: Item %2d %-18s %s" \
$num $xml_result(<PID>) $xml_result(<Description>)]
puts $output
}
}
set num 0
# Invoke xml_pi_exec with the default built-in spec file for the
# "show inventory" command. After the command executes $result contains
# the raw XML data.
if [catch {xml_pi_exec $cli1(fd) "show inventory"} result] {
error $result $errorInfo
} else {
# Pass the raw XML data to the xml_pi_parse routine to extract fields
# of interest:
# we ask that only the <PID> and <Description> fields be returned.
# If an XML tag name is requested and a Tcl proc exists with that name,
# the Tcl proc will be called every time that tag is encountered in the
# output data. Specify the <InventoryEntry> tag and define the proc
# before executing the xml_pi_parse statement.
array set xml_result [xml_pi_parse $cli1(fd) $result \
"<InventoryEntry> <PID> <Description>"]
# Display the data from the last record.
incr num
set output [format "Example 3: Item %2d %-18s %s" \
$num $xml_result(<PID>) $xml_result(<Description>)]
puts $output
}
# Example 4:
#
# In the next example we demonstrate how to extract two data elements
# from the multi-record "show ip interface brief" command using the default
# built-in XML-PI spec file. Sample raw output from this command is as
# follows:
#
# router#show ip interface brief | format
# <?xml version="1.0" encoding="UTF-8"?>
# <ShowIpInterfaceBrief>
# <SpecVersion>built-in</SpecVersion>
# <IPInterfaces>
# <entry>
# <Interface>GigabitEthernet0/1</Interface>
# <IP-Address>172.19.209.34</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>up</Status>
# <Protocol>up</Protocol>
# </entry>
# <entry>
# <Interface>GigabitEthernet0/2</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# <entry>
# <Interface>GigabitEthernet0/3</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# <entry>
# <Interface>FastEthernet1/0</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# <entry>
# <Interface>FastEthernet1/1</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# </IPInterfaces>
# </ShowIpInterfaceBrief>
#
# Define a procedure to be called every time the fully qualified name
# <ShowIpInterfaceBrief><IPInterfaces><entry> tag is processed. Since
# this tag precedes each new output record, the data that is passed into
# this procedure contains the fields that have been requested via
# xml_pi_parse since the previous time this procedure was called.
proc <ShowIpInterfaceBrief><IPInterfaces><entry> {xml_line} {
global num
# The first time that this function is called there is no data and
# xml_line will be null.
if [string length $xml_line] {
array set xml_result $xml_line
incr num
set output [format "Example 4: Interface %2d %-30s %s" \
$num $xml_result(<Interface>) $xml_result(<Status>)]
puts $output
} else {
puts "Example 4: Display All Interfaces"
}
}
set num 0
# Invoke xml_pi_exec with the default built-in spec file for the
# "show ip interface brief" command. After the command executes $result
# contains the raw XML data.
if [catch {xml_pi_exec $cli1(fd) "show ip interface brief"} result] {
error $result $errorInfo
} else {
# Pass the raw XML data to the xml_pi_parse routine to extract fields
# of interest:
# we ask that only the <Interface> and <Status> fields be returned.
# If an XML tag name is requested and a Tcl proc exists with that name,
# the Tcl proc will be called every time that tag is encountered in the
# output data. Specify the <entry> tag and define the proc
# before executing the xml_pi_parse statement.
array set xml_result [xml_pi_parse $cli1(fd) $result \
"<ShowIpInterfaceBrief><IPInterfaces><entry> <Interface> <Status>"]
# Display the data from the last record.
incr num
set output [format "Example 4: Interface %2d %-30s %s" \
$num $xml_result(<Interface>) $xml_result(<Status>)]
puts $output
}
# Example 5:
#
# In the next example we demonstrate how to extract two data elements
# from the multi-record "show ip interface brief" command using the default
# built-in XML-PI spec file. Sample raw output from this command is as
# follows:
#
# router#show ip interface brief | format
# <?xml version="1.0" encoding="UTF-8"?>
# <ShowIpInterfaceBrief>
# <SpecVersion>built-in</SpecVersion>
# <IPInterfaces>
# <entry>
# <Interface>GigabitEthernet0/1</Interface>
# <IP-Address>172.19.209.34</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>up</Status>
# <Protocol>up</Protocol>
# </entry>
# <entry>
# <Interface>GigabitEthernet0/2</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# <entry>
# <Interface>GigabitEthernet0/3</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# <entry>
# <Interface>FastEthernet1/0</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# <entry>
# <Interface>FastEthernet1/1</Interface>
# <IP-Address>unassigned</IP-Address>
# <OK>YES</OK>
# <Method>NVRAM</Method>
# <Status>administratively down</Status>
# <Protocol>down</Protocol>
# </entry>
# </IPInterfaces>
# </ShowIpInterfaceBrief>
#
# Note: This example is the same as Example 4 with the exception that
# the new record procedure is called by the un-qualified tag name. The
# ability to specify the un-qualified tag names is simplier but only works
# if the un-qualified name is used once per Tcl program. In this example
# the unqualified new record tag name is "<entry>" which is a very
# common name in the Cisco spec file.
# Define a procedure to be called every time the <entry> tag
# is processed. Since this tag precedes each new output record, the data
# that is passed into this procedure contains the fields that have been
# requested via xml_pi_parse since the previous time this procedure was
# called.
proc <entry> {xml_line} {
global num
# The first time that this function is called there is no data and
# xml_line will be null.
if [string length $xml_line] {
array set xml_result $xml_line
incr num
if ([string equal $xml_result(<Status>) "up"]) {
set output [format "Example 5: Interface %2d %-30s %s" \
$num $xml_result(<Interface>) $xml_result(<Status>)]
puts $output
}
} else {
puts "Example 5: Display All Interfaces That Are Up"
}
}
set num 0
# Invoke xml_pi_exec with the default built-in spec file for the
# "show ip interface brief" command. After the command executes $result
# contains the raw XML data.
if [catch {xml_pi_exec $cli1(fd) "show ip interface brief"} result] {
error $result $errorInfo
} else {
# Pass the raw XML data to the xml_pi_parse routine to extract fields
# of interest:
# we ask that only the <Interface> and <Status> fields be returned.
# If an XML tag name is requested and a Tcl proc exists with that name,
# the Tcl proc will be called every time that tag is encountered in the
# output data. Specify the <entry> tag and define the proc
# before executing the xml_pi_parse statement.
array set xml_result [xml_pi_parse $cli1(fd) $result \
"<entry> <Interface> <Status>"]
# Display the data from the last record.
incr num
if ([string equal $xml_result(<Status>) "up"]) {
set output [format "Example 5: Interface %2d %-30s %s" \
$num $xml_result(<Interface>) $xml_result(<Status>)]
puts $output
}
}
Archivo espec. eemtest.odm ODM de la muestra XML-PI:
###
show version
<?xml version='1.0' encoding='utf-8'?>
<ODMSpec>
<Command>
<Name>show version</Name>
</Command>
<OS>ios</OS>
<DataModel>
<Container name="ShowVersion">
<Property name="Version" distance = "1.0" length = "1" type = "IpAddress"/>
<Property name="Technical Support" distance = "1.0" length = "1" type = "IpAddress"/>
<Property name="Compiled" distance = "1.0" length = "3" type = "String"/>
<Property name="ROM" distance = "1.0" length = "7" type = "IpAddress"/>
<Property name="uptime" distance = "2" length = "8" type = "String"/>
<Property name="image" distance = "4" length = "1" type = "IpAddress"/>
<Property name="processor" distance = "-1" length = "1" type = "String"/>
<Property name="bytes of memory" distance = "-1" length = "1" type = "Port"/>
<Property name="CPU" distance = "2" length = "1" end-delimiter = "," type = "String"/>
<Property name="L2 Cache" distance = "-2" length = "1" end-delimiter = "," type =
"String"/>
<Property name="Gigabit Ethernet interfaces" distance = "-1" length = "1" type =
"Integer"/>
<Property name="bytes of NVRAM" distance = "-1" length = "1" type = "String"/>
<Property name="bytes of ATA PCMCIA card" distance = "-1" length = "1" type = "String"/>
<Property name="Sector size" distance = "1.0" length = "2" end-delimiter = ")" type =
"String"/>
<Property name="bytes of Flash internal SIMM" distance = "-1" length = "1" type =
"String"/>
<Property name="Configuration register" distance = "2" length = "1" type = "String"/>
</Container>
</DataModel>
</ODMSpec>
Ejemplo sample.tcl funcionado con:
router#config t
Enter configuration commands, one per line. End with CNTL/Z.
router(config)#event manager policy sample.tcl
router(config)#end
router#
Oct 10 20:21:26: %SYS-5-CONFIG_I: Configured from console by console
router#event manager run sample.tcl
Example 1: XML-PI support is present in this image
Example 2: Processor is NPE-G1 CPU is 700MHz
Example 3: Item 1 CISCO7206VXR "Cisco 7206VXR, 6-slot chassis"
Example 3: Item 2 NPE-G1 "Cisco 7200 Series Network Processing Engine NPE-G1"
Example 3: Item 3 MEM-NPE-G1-FLD128 "128MB Compact Flash Disk for NPE-G1"
Example 3: Item 4 PA-2FE-TX "Dual Port FastEthernet (RJ45)"
Example 3: Item 5 PWR-7200-AC "Cisco 7200 AC Power Supply"
Example 4: Display All Interfaces
Example 4: Interface 1 GigabitEthernet0/1 up
Example 4: Interface 2 GigabitEthernet0/2 administratively down
Example 4: Interface 3 GigabitEthernet0/3 administratively down
Example 4: Interface 4 FastEthernet1/0 administratively down
Example 4: Interface 5 FastEthernet1/1 administratively down
Example 4: Interface 6 SSLVPN-VIF0 up
Example 5: Display All Interfaces That Are Up
Example 5: Interface 1 GigabitEthernet0/1 up
Example 5: Interface 6 SSLVPN-VIF0 up
Extensiones de Comando de la Biblioteca de Contexto Tcl
Todas las Extensiones del comando de la biblioteca del contexto Tcl pertenecen al:: Cisco:: eem.
Comandos exportados
•
context_retrieve
•
context_save
context_retrieve
Extrae las variables Tcl identificadas por el nombre del contexto dado, y posiblemente el nombre de variable scalar, el nombre
de variable de arsenal, y el índice del arsenal. La información extraída se borra automáticamente.
Observela información una vez guardada se extrae, él se borra automáticamente. Si esa información es necesitada por otra
directiva, la directiva que la extrae (usando context_retrieve la extensión del comando) debe también salvarla otra vez
(usando context_save la extensión del comando).
Sintaxis
context_retrieve ctxt [var] [index_if_array]
Argumentos
ctxt
(Obligatorio) Nombre del contexto.
var
Nombre de variable scalar o nombre de variable (opcional) de arsenal. Omite una
cadena nula si este argumento no se especifica.
index_if_array (Opcional) el índice del arsenal.
Observeel argumento index_if_array será ignorado cuando el argumento var es una variable scalar.
Si el var está sin especificar, extrae la Tabla de variable entera guardada en el contexto.
Si se especifica var y no se especifica index_if_array, o bien si se especifica if index_if_array pero var es una variable escalar,
recupera el valor de var.
Si se especifica el var, e index_if_array se especifica, y el var es una variable de arsenal, extrae el valor del elemento de matriz
especificado.
Cadena de Resultado
Reajusta las variables globales Tcl al estado que estaban en cuando la salvaguardia fue realizada.
Ajuste _cerrno
• Una cadena que visualiza el _cerrno, _cerr_sub_num, _cerr_sub_err, _cerr_posix_err, _cerr_str debido al error del
appl_reqinfo.
•
La variable no está en el contexto.
Ejemplo de Uso
Los siguientes ejemplos muestran cómo utilizar context_save y context_retrieve las funciones de la extensión del comando
para salvar y para extraer los datos. Los ejemplos se muestran en la salvaguardia y extraen los pares.
Ejemplo 1: Guardar
Si el var está sin especificar o si un modelo si está especificado, guarda las variables múltiples al contexto.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
set testvara 123
set testvarb 345
set testvarc 789
if {[catch {context_save TESTCTX "testvar*"} errmsg]} {
action_syslog msg "context_save failed: $errmsg"
} else {
action_syslog msg "context_save succeeded"
}
Ejemplo 1: Extraiga
Si el var está sin especificar, extrae las variables múltiples del contexto.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
if {[catch {foreach {var value} [context_retrieve TESTCTX] {set $var $value}} errmsg]} {
action_syslog msg "context_retrieve failed: $errmsg"
} else {
action_syslog msg "context_retrieve succeeded"
}
if {[info exists testvara]} {
action_syslog msg "testvara exists and is $testvara"
} else {
action_syslog msg "testvara does not exist"
}
if {[info exists testvarb]} {
action_syslog msg "testvarb exists and is $testvarb"
} else {
action_syslog msg "testvarb does not exist"
}
if {[info exists testvarc]} {
action_syslog msg "testvarc exists and is $testvarc"
} else {
action_syslog msg "testvarc does not exist"
}
Ejemplo 2: Guardar
Si se especifica el var, guarda el valor de las variedades.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
set testvar 123
if {[catch {context_save TESTCTX testvar} errmsg]} {
action_syslog msg "context_save failed: $errmsg"
} else {
action_syslog msg "context_save succeeded"
}
Ejemplo 2: Extraiga
Si se especifica var y no se especifica index_if_array, o bien si se especifica if index_if_array pero var es una variable escalar,
recupera el valor de var.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
if {[catch {set testvar [context_retrieve TESTCTX testvar]} errmsg]} {
action_syslog msg "context_retrieve failed: $errmsg"
} else {
action_syslog msg "context_retrieve succeeded"
}
if {[info exists testvar]} {
action_syslog msg "testvar exists and is $testvar"
} else {
action_syslog msg "testvar does not exist"
}
Ejemplo 3: Guardar
Si se especifica var, guarda el valor de var aunque sea una matriz.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
array set testvar "testvar1 ok testvar2 not_ok"
if {[catch {context_save TESTCTX testvar} errmsg]} {
action_syslog msg "context_save failed: $errmsg"
} else {
action_syslog msg "context_save succeeded"
}
Ejemplo 3: Extraiga
Si se especifica el var, e index_if_array no se especifica, y el var es una variable de arsenal, extrae el arsenal entero.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
if {[catch {array set testvar [context_retrieve TESTCTX testvar]} errmsg]} {
action_syslog msg "context_retrieve failed: $errmsg"
} else {
action_syslog msg "context_retrieve succeeded"
}
if {[info exists testvar]} {
action_syslog msg "testvar exists and is [array get testvar]"
} else {
action_syslog msg "testvar does not exist"
}
Ejemplo 4: Guardar
Si se especifica var, guarda el valor de var aunque sea una matriz.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
array set testvar "testvar1 ok testvar2 not_ok"
if {[catch {context_save TESTCTX testvar} errmsg]} {
action_syslog msg "context_save failed: $errmsg"
} else {
action_syslog msg "context_save succeeded"
}
Ejemplo 4: Extraiga
Si se especifica el var, e index_if_array se especifica, y el var es una variable de arsenal, extrae el valor especificado del
elemento de matriz.
::cisco::eem::event_register_none
namespace import ::cisco::eem::*
namespace import ::cisco::lib::*
if {[catch {set testvar [context_retrieve TESTCTX testvar testvar1]} errmsg]} {
action_syslog msg "context_retrieve failed: $errmsg"
} else {
action_syslog msg "context_retrieve succeeded"
}
if {[info exists testvar]} {
action_syslog msg "testvar exists and is $testvar"
} else {
action_syslog msg "testvar doesn't exist"
}
context_save
Guarda las variables Tcl que hacen juego un modelo dado en la corriente y los espacios de nombres globales con el nombre del
contexto dado como identificación. Utilice esta extensión del comando Tcl para salvar la información fuera de una directiva. La
información guardada se puede extraer por una diversa directiva usando context_retrieve la extensión del comando.
Observela información una vez guardada se extrae, él se borra automáticamente. Si esa información es necesitada por otra
directiva, la directiva que la extrae (usando context_retrieve la extensión del comando) debe también salvarla otra vez
(usando context_save la extensión del comando).
Sintaxis
context_save ctxt [pattern]
Argumentos
ctxt
(Obligatorio) Nombre del contexto.
modelo (Opcional) el modelo del glob-estilo según lo utilizado por string match el comando Tcl. Si
este argumento no se especifica, el modelo omite el comodín *.
Hay tres construcciones usadas en los modelos del glob:
•
* = todos los caracteres
•
¿? = 1 carácter
•
[abc] = coincidencia una de un conjunto de los caracteres
Cadena de Resultado
Ninguno
Ajuste _cerrno
Una cadena que visualiza el _cerrno, _cerr_sub_num, _cerr_sub_err, _cerr_posix_err,
_cerr_str debido al error del appl_setinfo.
Ejemplo de Uso
Por los ejemplos que muestran cómo utilizar context_save y context_retrieve las funciones de la extensión del comando para
salvar y para extraer los datos, vea “la sección del uso de la muestra”.
Extensiones del comando Tcl del registro del evento para EEM 3,2
•
event_register_identity
•
event_register_mat
•
event_register_neighbhor_discovery
event_register_identity
Registros para un evento de la identidad. Utilice esta extensión del comando Tcl para generar un evento cuando la
autenticación AAA o la autorización es acertada o el error o después de que el tráfico del usuario normal en el puerto se permita
fluir.
Sintaxis
event_register_identity [tag ?] interface ?
[aaa-attribute ?]
[authc {all | fail | success}]
[authz {all | fail | success}]
[authz-complete]
[mac-address ?]
[queue_priority {normal | low | high | last}]
[maxrun ?] [nice {0 | 1}]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
interfaz
Un patrón de expresión normal a hacer juego contra los nombres de la interfaz.
AAA-atributo
La expresión normal (opcional) A que se puede utilizar para filtrar los eventos por el
AAA específico atribuye.
authc
(Opcional) acciona los eventos en acertado, fallado o acertado y la autenticación
fallida.
authz
(Opcional) acciona los eventos en acertado, fallado o acertado y la autorización
fallida.
authzcompleto
(Opcional) acciona los eventos una vez que el dispositivo conectado con la interfaz
se autentica completamente, autorizados y el tráfico normal ha comenzado a fluir en
esa interfaz.
MAC address Patrón de expresión normal (opcional) A que se puede utilizar para filtrar los eventos
por los direccionamientos del mac del dispositivo remoto.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 31536000, inclusive, y MMM debe ser un número
entero que representa los milisegundos entre 0 y 999). Si no se especifica este
argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last" establecido,
estos scripts se ejecutarán en el orden en que se publiquen los eventos.
El argumento del queue_priority especifica la prioridad de envío a cola, pero no la
prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Event_reqinfo para EEM_EVENT_IDENTITY
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u
event_severity %u identity_stage %u identity_status %u interface %u identity_mac %u
identity_<attribute> {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string
Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
event_pub_msec
El tiempo, en los segundos y los milisegundos, en los cuales el evento fue
publicado al EEM.
event_severity
La gravedad del evento.
identity_stage
Uno entre la autenticación, el autherization o las etapas autherizationcompletas.
identity_status
Éxito o uno de estos tipos de falla: fail_authc, fail_aaa_server,
fail_no_response, fail_timeout, fail_authz. Para autherization-completo es
siempre éxito.
interface
La interfaz para el evento.
identity_mac
La dirección MAC del dispositivo remoto para el evento.
identity_<attribute> Para cada atributo AAA, un conjunto una variable dinámica al valor
correspondiente a ese atributo AAA en la lista del atributo o de valor.
event_register_mat
Registros para un evento MAT. Utilice esta extensión del comando Tcl para generar un evento cuando un MAC address se
aprende en el mac-address-table.
Sintaxis
event_register_identity [tag ?] interface ?
[mac-address ?]
[type {add | delete}]
[hold-down ?]
[maxrun ?]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de eventos
dentro de un script Tcl.
interfaz
Un patrón de expresión normal a hacer juego contra los nombres de la interfaz.
MAC
address
Obligatorio si el parámetro de la interfaz no se especifica. Un patrón de expresión
normal que se puede utilizar para filtrar los eventos por los direccionamientos del mac
del dispositivo remoto.
tipo
El filtro (opcional) basado en un tipo de evento del mac-address-table de agrega o
borra. Si no especificado, no utilizan al tipo de evento en determinar si el evento debe
ser accionado.
asentamiento (Opcional) cuando viene un evento del mac-address-table adentro, el temporizador
del asentamiento se puede fijar para hacer el evento para esperar entre 1 y
4294967295 segundos antes de procesar la directiva. Si no fije entonces la directiva
no se retrasa en el proceso.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 31536000, inclusive, y MMM debe ser un número
entero que representa los milisegundos entre 0 y 999). Si no se especifica este
argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Event_reqinfo para EEM_EVENT_MAT
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u
event_severity %u notification %u intf_name %u mac_address {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado. Se puede ejecutar
múltiples políticas para el mismo evento, y cada política tendrá el mismo
event_id.
event_type
Tipo de evento.
event_type_string Una cadena ASCII que representa el nombre de evento de este tipo de evento.
event_pub_sec
El tiempo, en los segundos y los milisegundos, en los cuales el evento fue
event_pub_msec publicado al EEM.
event_severity
La gravedad del evento.
notification
Tipo de notificación — agregue o borre.
intf_name
El nombre de la interfaz para la entrada de tabla del direccionamiento.
mac_address
El MAC address para la entrada de tabla del direccionamiento.
event_register_neighbhor_discovery
Los registros para un vecino descubren el evento. Utilice esta extensión del comando Tcl para generar un evento cuando un
Cisco Discovery Protocol (CDP) o una entrada de caché del Discovery Protocol de la capa de link (LLDP) o un estado de link de
la interfaz cambia.
Sintaxis
event_register_neighbhor_discovery [tag ?] interface ?
[cdp {add | update | delete | all}]
[lldp {add | update | delete | all}]
[link-event]
[line-event]
[queue_priority {normal | low | high | last}]
[maxrun ?] [nice {0 | 1}]
Argumentos
etiqueta
(Opcional) Cadena que identifica una etiqueta que se puede utilizar con la extensión
de comando Tcl del desencadenado para soportar múltiples declaraciones de
eventos dentro de un script Tcl.
interfaz
Un patrón de expresión normal a hacer juego contra los nombres de la interfaz.
cdp
Accione un evento cuando ocurre un evento CDP que corresponde con. Una de las
opciones siguientes debe ser especificado.
• agregue — Accione los eventos solamente cuando una nueva entrada de la
memoria caché CDP se crea en la tabla CDP.
• todos — Accione un evento cuando una entrada de la memoria caché CDP se
agrega o se borra de la tabla de la memoria caché CDP y cuando un dispositivo
del telecontrol CDP envía un keepalive para poner al día la entrada de la memoria
caché CDP.
• cancelación — accione los eventos solamente cuando una entrada de la
memoria caché CDP se borra de la tabla CDP.
• actualización — accione un evento cuando una entrada de la memoria caché
CDP se agrega a la tabla CDP o cuando el dispositivo del telecontrol CDP envía
un keepalive CDP para poner al día la entrada de la memoria caché CDP.
lldp
Accione un evento cuando ocurre un evento del lldp que corresponde con. Una de las
opciones siguientes debe ser especificado.
• agregue — Accione los eventos solamente cuando una nueva entrada de
caché cdp se crea en la tabla cdp.
• todos — Accione un evento cuando una entrada de caché cdp se agrega o se
borra de la tabla de caché cdp y cuando un dispositivo cdp del telecontrol envía
un keepalive para poner al día la entrada de caché cdp.
• cancelación — accione los eventos solamente cuando una entrada de caché
cdp se borra de la tabla cdp.
• actualización — accione un evento cuando una entrada de caché cdp se
agrega a la tabla cdp o cuando el dispositivo cdp del telecontrol envía un
keepalive cdp para poner al día la entrada de caché cdp.
línea-evento
Accione un evento cuando el estado del Line Protocol de la interfaz cambia.
link-evento
Accione un evento cuando el estado de link de la interfaz cambia.
queue_priority (Opcional) Nivel de prioridad en el que se podrá en cola el script:
• queue_priority low: especifica que el script debe ponerse en cola en el más
bajo de los tres niveles de prioridad.
• queue_priority normal: especifica que el script debe ser puesto en cola en un
nivel de prioridad mayor que la prioridad baja pero menos que la prioridad alta.
• queue_priority high: especifica que el script debe ponerse en cola en el más
alto de los tres niveles de prioridad.
• queue_priority last: especifica que el script debe ponerse en cola en el nivel
de prioridad más bajo.
Si se registra más de un script con el argumento "queue_priority_last" establecido,
estos scripts se ejecutarán en el orden en que se publiquen los eventos.
El argumento del queue_priority especifica la prioridad de envío a cola, pero no la
prioridad de ejecución, del script que es registrado.
Si este argumento no se especifica, la prioridad de envío a cola predeterminada es
normal.
maxrun
(Opcional) El tiempo de ejecución máximo del script (especificado en el formato
SSSSSSSSSS[,MMM], donde SSSSSSSSSS debe ser un número entero que
representa los segundos entre 0 y 31536000, inclusive, y MMM debe ser un número
entero que representa los milisegundos entre 0 y 999). Si no se especifica este
argumento, se utiliza el límite de tiempo de ejecución predeterminado de 20
segundos.
agradable
(Opcional) Configuración de la prioridad del tiempo de ejecución de la política.
Cuando el argumento nice se establece en 1, la política se ejecuta con una prioridad
de tiempo de ejecución menor que la prioridad predeterminada. El valor
predeterminado es 0.
Cadena de Resultado
Ninguno
Ajuste _cerrno
No
Event_reqinfo para EEM_EVENT_NEIGHBOR_DISCOVERY
"event_id %u event_type %u event_type_string {%s} event_pub_sec %u event_pub_msec %u
event_severity %u nd_notification {%s}"
Tipo de Evento
Descripción
event_id
Número único que indica el ID para este evento publicado.
Se puede ejecutar múltiples políticas para el mismo evento, y
cada política tendrá el mismo event_id.
event_type
Tipo de evento.
event_type_string
Una cadena ASCII que representa el nombre de evento de
este tipo de evento.
event_pub_sec
event_pub_msec
El tiempo, en los segundos y los milisegundos, en los cuales
el evento fue publicado al EEM.
event_severity
La gravedad del evento.
Event_Reqinfo común
nd_notification
El Tipo de notificación — CDP-agregue, CDP-actualización,
CDP-cancelación, lldp-agregan, lldp-actualización, lldpcancelación, link, línea.
nd_intf_linkstatus
El estado de link actual de la interfaz, hacia arriba o hacia
abajo.
nd_intf_linestatus
La línea actual estatus de la interfaz, abajo, goingdown, init,
prueba, encima de, restauración, admindown, borrado.
nd_local_intf_name
El nombre de la interfaz local para el evento.
nd_short_local_intf_name
El nombre corto de la interfaz local para el evento.
nd_port_id
El ID del puerto según lo identificado por el cdp o el
protocolo del lldp. Esto no se fija para los eventos del link o
del Line Protocol.
Event_reqinfo CDP-específico
nd_protocol
Identifica qué protocolo accionó el evento, porque CDP será
fijado siempre al cdp.
nd_proto_notif
Identifica que el tipo de evento del protocolo accionó el
evento, agrega, se pone al día o borra.
nd_proto_new_entry
Si estuvo fijado a 1, el evento fue accionado porque la
entrada de caché es nueva, si no será fijada a 0.
nd_cdp_entry_name
El nombre de la entrada de caché cdp en la tabla cdp.
nd_cdp_hold_time
El tiempo que permanece hasta que la entrada de caché cdp
expire y se borre de la tabla cdp. Esta hora será reajustada a
un cierto máximo por una actualización del vecino cdp. Se
fija generalmente a 0 para las nuevas entradas.
nd_cdp_mgmt_domain
El dominio de administración CDP VTP.
nd_cdp_platform
El Nombre de la plataforma señalado por el dispositivo
remoto.
nd_cdp_version
La versión del código que se ejecuta en el dispositivo
remoto.
nd_cdp_capabilities_string
El contenido de las capacidades de CDP coloca en un
formato de la cadena: El router, Transporte-Bridge, SourceRoute Bridge, Switch, host, IGMP, repetidor, teléfono,
Alejado-manejó el dispositivo, el puerto telefónico CVTA, la
retransmisión cuadripola del mac o cualquier combinación de
éstos separados por las comas.
nd_cdp_capabilities_bits
Los bits de las capacidades de CDP en un número
hexadecimal precedido con 0x.
nd_cdp_capabilities_bit_[0-31]
Una serie de valores que serán fijados a los YE si ese bit en
el campo de las capacidades se fija o NINGÚN si no se fija.
Event_reqinfo LLDP-específico
nd_protocol
Identifica qué protocolo accionó el evento, porque LLDP será
fijado siempre al lldp.
nd_proto_notif
Identifica que el tipo de evento del protocolo accionó el
evento, agrega, se pone al día o borra.
nd_proto_new_entry
Si estuvo fijado a 1, el evento fue accionado porque la
entrada de caché es nueva, si no será fijada a 0.
nd_lldp_chassis_id
El campo identificación del chasis de la entrada de caché
LLDP.
nd_lldp_system_name
El nombre del sistema de la entrada de caché LLDP.
nd_lldp_system_description
El campo de Descripción del sistema de la entrada de caché
LLDP.
nd_lldp_ttl
El campo del Time to Live LLDP de la entrada de caché
LLDP.
nd_lldp_port_description
El campo Description (Descripción) del puerto de la entrada
de caché LLDP.
nd_lldp_system_capabilities_string Las capacidades de sistema LLDP colocan de la entrada de
caché LLDP. Con tal que como cadena que puede contener
O, P, B, W, R, T, el C, S o cualquier combinación de éstos se
separaran por las comas.
nd_lldp_enabled_capabilities_string El LLDP habilitó las capacidades de sistema coloca de la
entrada de caché LLDP. Con tal que como cadena que
puede contener O, P, B, W, R, T, el C, S o cualquier
combinación de éstos se separaran por las comas.
nd_lldp_system_capabilities_bits
Los bits de las capacidades de sistema LLDP colocan de la
entrada de caché LLDP. Con tal que como número
hexadecimal precedido por 0x.
nd_lldp_enabled_capabilities_bits
El LLDP habilitó las capacidades que los bits colocan de la
entrada de caché LLDP. Con tal que como número
hexadecimal precedido por 0x.
nd_lldp_capabilities_bits
Los bits de las capacidades LLDP colocan de la entrada de
caché LLDP. Con tal que como número hexadecimal
precedido por 0x.
nd_lldp_capabilities_bit_[0-31]
Una serie de valores que serán fijados a los YE si ese bit en
el campo de las capacidades se fija o NINGÚN si no se fija.
Información sobre Funciones para Escribir Políticas de Embedded Event Manager con Tcl
El cuadro 18 enumera las características en este módulo y proporciona los links a la información de la configuración específica.
Solamente las características que fueron introducidas o modificadas en los Cisco IOS Release 12.3(14)T, 12.2(25)S, 12.0(26)S,
12.2(18)SXF4, 12.2(28)SB, 12.2(33)SRA, 12.2(33)SXH, 12.2(33)SXI, 12.4(20)T, 12.4(22)T, el 15.0(1)M, 12.2(33)SRE o una
versión posterior aparecen en la tabla.
Puede que no estén disponibles todos los comandos en su versión de software de Cisco IOS. Para la información de versión
sobre un comando específico, vea la documentación de referencia de comandos.
Utilice el Cisco Feature Navigator para encontrar la información sobre el soporte del Soporte de la plataforma y de la imagen del
software. Cisco Feature Navigator le permite determinar qué imágenes de Cisco IOS y Catalyst OS Software soportan una
versión de software, un conjunto de funciones o una plataforma específica. Para acceder a Cisco Feature Navigator, vaya a
http://www.cisco.com/go/cfn. Una cuenta en el cisco.com no se requiere.
Observelas listas del cuadro 18 solamente la versión de Cisco IOS Software que introdujo el soporte para una característica
dada en un tren de versión del Cisco IOS Software dado. A menos que se indique lo contrario, las versiones posteriores de
dicha serie de versiones de software de Cisco IOS también soportan esa función.
Nombre de la
función
Versiones
Información de la Configuración de la Función
Embedded
12.2(18)SXF5
Event Manager 12.2(28)SB
2.1
12.2(33)SRA
12.3(14)T
Este documento fue introducido para soportar la capacidad de
crear las directivas usando el Tool Command Language (Tcl) que
fue introducida en la característica integrada del 2.1 del
administrador del evento en el Cisco IOS Release 12.3(14)T.
Embedded
Event Manager
2.1
(Modularidad
del Software)
El 2.1 EEM para las imágenes de la modularidad del software
introdujo el ORO, administrador del sistema, y los detectores de
evento de WDSysMon (perro guardián de la modularidad del
Cisco IOS Software) y la capacidad de visualizar los procesos de
la modularidad del Cisco IOS Software y la matriz de proceso.
Seis nuevas directivas de la muestra también fueron introducidas.
imágenes de la
modularidad del
Cisco IOS
Software
12.2(18)SXF4
Las secciones siguientes proporcionan información acerca de
esta función:
• Categorías de Extensiones de Comando de Tcl de
Políticas de EEM
• Visualización de la Métrica de la Confiabilidad del Proceso
de Modularidad de Software mediante EEM
•
Modificación de las Políticas de EEM de Ejemplo
Los siguientes comandos fueron introducidos por esta función:
event gold event process show event manager metric
process.
Observeel 2.1 EEM para las imágenes de la modularidad
del software también soporta el recurso y los detectores de
evento RF introducidos en EEM 2,2, pero no soporta el
detector de evento aumentado del Rastreo de objetos o las
acciones para leer y para fijar los objetos seguidos.
Embedded
12.2(31)SB3
Event Manager 12.2(33)SRB
2.2
12.4(2)T
EEM 2.2 introdujo el seguimiento de objetos, recursos y los
detectores de eventos RF mejorados. También se insertaron las
acciones de leer y definir el estado de un objeto de seguimiento.
Las siguientes secciones proporcionan información sobre esta
función:
• Categorías de Extensiones de Comando de Tcl de
Políticas de EEM
•
Modificación de las Políticas de EEM de Ejemplo
Los siguientes comandos fueron introducidos o modificados por
esta característica: action track read action track set defaultstate event resource event rf event track show track track
stub-object.
Variable de
entorno1 del
delta del
detector de
evento SNMP
12.4(11)T
Embedded
12.2(33)SB
Event Manager 12.2(33)SXH
2.3
Una nueva variable de entorno del detector de evento SNMP,
delta_val, fue introducida.
EEM 2.3 introdujo algunas funciones nuevas en relación con el
Detector de Eventos de Diagnósticos en Línea Genéricos
(GOLD) en Cisco Catalyst 6500 Series Switches.
event gold El comando fue aumentado además de las palabras
claves Tclaction-notify — testing-type test-name test-id
consecutive-failure platform-action, y maxrun— para la
reacción mejorada a las fallas de prueba y a las condiciones del
ORO.
Las actualizaciones siguientes fueron hechas event gold al
comando:
• Los argumentos optativos fueron agregados
event_register_gold a la extensión del comando Tcl del
registro del evento EEM para soportar las opciones de
configuración de evento adicionales.
• Agregaron a los tipos de evento bajo event_reqinfo
extensión del comando Tcl de la Información del evento EEM
para proporcionar el acceso a la información de política
plataforma-ancha y prueba-específica del ORO EEM Tcl para
un evento detectado.
Embedded
12.2(33)SRE
Event Manager 12.2(33)SXI
2.4
12.4(20)T
EEM 2.4 se soporta en Cisco IOS Release 12.4(20)T y versiones
posteriores, e introdujo varias funciones nuevas.
Las secciones siguientes eran actualizadas:
• Categorías de Extensiones de Comando de Tcl de
Políticas de EEM
•
Modificación de las Políticas de EEM de Ejemplo
Los siguientes comandos fueron introducidos por esta función:
attribute (EEM) correlate event manager detector rpc event
manager directory user repository event manager update
user policy event manager scheduler clear event manager
update user policy event owner event rpc event snmpnotification show event manager detector show event
manager version trigger (EEM).
Embedded
12.2(33)SRE
Event Manager 12.4(22)T
3.0
EEM 3.0 se soporta en Cisco IOS Release 12.4(22)T y versiones
posteriores, e introdujo varias funciones nuevas.
Las secciones siguientes proporcionan información acerca de
esta función:
• Categorías de Extensiones de Comando de Tcl de
Políticas de EEM
•
Modificación de las Políticas de EEM de Ejemplo
Los siguientes comandos fueron introducidos o modificados por
esta característica:
action add action append action break action comment
action context retrieve action context save action continue
action decrement action divide action else action elseif
action end action exit action foreach action gets action if
action if goto action increment action info type interfacenames action info type snmp getid action info type snmp
inform action info type snmp oid action info type snmp trap
action info type snmp var action multiply action puts action
regexp action set (EEM) action string compare action string
equal action string first action string index action string last
action string length action string match action string range
action string replace action string tolower action string
toupper action string trim action string trimleft action string
trimright action subtract action while event cli event ipsla
event manager detector routing event manager scheduler
event manager scheduler clear event manager scheduler
hold event manager scheduler modify event manager
scheduler release event nf event routing show event
manager policy active show event manager policy pending, y
show event manager scheduler.
Administrador
del evento
integrado 3,1
el 15.0(1)M
EEM 3,1 se soporta en las versiones del Cisco IOS Release
15.0(1)M y Posterior, e introdujo varias nuevas funciones.
Las secciones siguientes proporcionan información acerca de
esta función:
• Categorías de Extensiones de Comando de Tcl de
Políticas de EEM
•
Modificación de las Políticas de EEM de Ejemplo
Los siguientes comandos fueron introducidos o modificados por
esta característica:
action syslog description event manager applet event
manager policy event snmp-notification event snmp-object
show event manager policy registered, y show event
manager policy available.
1 esto es una mejora de menor importancia. Las mejoras de menor importancia no se suelen enumerar en Feature Navigator.
Cisco and the Cisco Logo are trademarks of Cisco Systems, Inc. and/or its affiliates in the U.S. and other countries. A listing of Cisco's trademarks
can be found at www.cisco.com/go/trademarks. Third party trademarks mentioned are the property of their respective owners. The use of the word
partner does not imply a partnership relationship between Cisco and any other company. (1005R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any
examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only.
Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.
© 2005-2010 Cisco Systems, Inc. All rights reserved.
© 1992-2013 Cisco Systems Inc. Todos los Derechos Reservados.
Fecha de Generación del PDF: 2 Agosto 2013
http://www.cisco.com/cisco/web/support/LA/107/1073/1073589_nm_eem_policy_tcl_ps6922_TSD_Products_Configuration_Guide_Chapter.html
Descargar