Configure una política de eventos para ejecutar comandos en modo operativo
Los comandos del modo operativo realizan una operación o proporcionan salida de diagnóstico en un dispositivo que ejecuta Junos OS. Le permiten ver estadísticas e información sobre el estado operativo actual de un dispositivo. También le permiten tomar medidas correctivas, como reiniciar los procesos de software, desconectar y volver a conectar una tarjeta de interfaz física (PIC), cambiar a interfaces redundantes y ajustar el ancho de banda del protocolo de conmutación de etiquetas (LSP). Para obtener más información acerca de los comandos del modo operativo, consulte el Explorador de CLI.
Puede configurar una política de eventos que ejecute comandos de modo operativo y cargue el resultado de esos comandos en una ubicación especificada para su análisis incluyendo las siguientes instrucciones en el [edit event-options]
nivel de jerarquía:
[edit event-options] policy policy-name { events [ events ]; then { execute-commands { commands { "command"; } output-filename filename; output-format (text | xml); destination destination-name; } } }
En la events
instrucción, puede enumerar varios eventos. Si se produce uno o más de los eventos enumerados, el proceso de evento ejecuta los comandos de modo operativo configurados para la commands
instrucción. Encierre cada comando entre comillas (" "
). El proceso de evento emite los comandos en el orden en que aparecen en la configuración. Por ejemplo, en la siguiente configuración, la ejecución de policy1
hace que el show interfaces
comando se emita primero, seguido del show chassis alarms
comando:
[edit event-options policy policy1 then execute-commands] user@host# show commands { "show interfaces"; "show chassis alarms"; }
Puede incluir variables en el comando para permitir que los datos del evento de activación se incluyan automáticamente en la sintaxis del comando. El proceso con eventos reemplaza cada variable por valores contenidos en el caso de que se active la política. Puede utilizar variables de comando de los siguientes formularios:
-
{$$.attribute-name}
: la notación de signo de doble dólar ($$
) representa el evento que activa la política. Cuando se combina con un nombre de atributo, la variable se resuelve en el valor del atributo asociado con el evento desencadenante. Por ejemplo,{$$.interface-name}
se resuelve en el nombre de interfaz asociado al evento desencadenante. -
{$event.attribute-name}
: el signo de un dólar con la notación del nombre del evento ($event
) representa el evento más reciente que coincideevent
. Cuando se combina con un nombre de atributo, la variable se resuelve en el valor del atributo asociado con ese evento. Por ejemplo, cuando una política emite elshow interfaces {$COSD_CHAS_SCHED_MAP_INVALID.interface-name}
comando, la{$COSD_CHAS_SCHED_MAP_INVALID.interface-name}
variable se resuelve en el nombre de interfaz asociado con el evento más recienteCOSD_CHAS_SCHED_MAP_INVALID
almacenado en caché por el proceso de evento. -
{$*.attribute-name}
: el signo de dólar con la notación del asterisco ($*
) representa el evento más reciente que coincide con cualquiera de los eventos de correlación. La variable se resuelve en el valor del atributo asociado con el evento más reciente que coincide con cualquiera de los eventos correlacionados especificados en la configuración de la política.
Para un evento determinado, puede ver una lista de atributos de eventos a los que puede hacer referencia en un comando de modo operativo mediante la emisión del help syslog event
comando:
user@host> help syslog event
Por ejemplo, en la siguiente salida de comando, el texto entre corchetes angulares (< >
) muestra que classifier-type
es un atributo del cosd_unknown_classifier
evento:
user@host> help syslog cosd_unknown_classifier Name: COSD_UNKNOWN_CLASSIFIER Message: rtsock classifier type <classifier-type> is invalid ...
Otra forma de ver una lista de atributos de eventos es emitir el comando de set attributes-match event?
modo de configuración en el [edit event-options policy policy-name]
nivel jerárquico:
[edit event-options policy policy-name] user@host# set attributes-match event ?
Por ejemplo, en la siguiente salida de comando, la event.attribute
lista muestra que classifier-type
es un atributo del cosd_unknown_classifier
evento:
[edit event-options policy policy-name] user@host# set attributes-match cosd_unknown_classifier? Possible completions: <from-event-attribute> First attribute to compare cosd_unknown_classifier.classifier-type
En este set
comando, no hay espacio entre el nombre del evento y el signo de pregunta (?
).
Para ver una lista de todos los atributos de eventos a los que puede hacer referencia, emita el comando de set attributes-match ?
modo de configuración en el [edit event-options policy policy-name]
nivel de jerarquía:
[edit event-options policy policy-name] user@host# set attributes-match ? Possible completions: <from-event-attribute> First attribute to compare acct_accounting_ferror acct_accounting_fopen_error ...
Cuando el proceso con eventos ejecuta los comandos, carga el archivo con el resultado del comando en la ubicación especificada en la destination
instrucción. En la destination
instrucción, incluya un nombre de destino configurado en el [edit event-options destinations]
nivel jerárquico. Para obtener más información, consulte Ejemplo: Definir destinos para el archivado de archivos por políticas de eventos.
En la output-filename
instrucción, defina una cadena descriptiva que se incluirá en el nombre de archivo. Cada archivo cargado también incluye el nombre de host y la marca de hora en el nombre de archivo para asegurarse de que cada nombre de archivo es único. Si una política se activa varias veces en un período de 1 segundo, se anexa un número de índice al nombre de archivo para asegurarse de que los nombres de archivo siguen siendo únicos. El intervalo de números de índice es del 001 al 999.
A partir de Junos OS versión 14.1R3, se cambia la convención de nomenclatura y el formato del archivo de salida generado por eventd. Cuando se realiza un evento, se ejecutan los comandos definidos en el [edit event-options policy policy-name then execute-commands commands]
nivel de jerarquía y se genera un archivo que contiene el resultado del comando, el nombre del archivo depende de la versión de Junos OS que se ejecute en el dispositivo. Antes de la versión 14.1R3 de Junos OS, el nombre de archivo tiene la siguiente convención de nomenclatura:
hostname_output-filename_YYYYMMDD_HHMMSS_index-number
A partir de Junos OS versión 14.1R3, el nombre de archivo coloca la output-filename cadena después de la marca de hora.
hostname_YYYYMMDD_HHMMSS_output-filename_index-number
Por ejemplo, en un dispositivo denominado r1 que ejecuta junos OS versión 14.1R3 o una versión posterior, si configura la output-filename
instrucción como ifl-events y esta política de eventos se activa tres veces en 1 segundo, los archivos se denominan:
eventos de r1_20060623_132333_ifl
r1_20060623_132333_ifl-events_001
r1_20060623_132333_ifl-events_002
De forma predeterminada, el formato de salida del comando es Junos Extensible Markup Language (XML). Configure la output-format text
instrucción para formatear la salida del comando como texto ASCII .