Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Usar eventos correlacionados para activar una política de eventos

RESUMEN Configure una directiva de eventos para que se ejecute cuando se produzcan dos o más eventos correlacionados.

Descripción de eventos correlacionados

Puede configurar una directiva de eventos que correlacione dos o más eventos. Si los eventos se producen según lo especificado, provocan que se realicen acciones concretas. Por ejemplo, es posible que desee emitir ciertos comandos del modo operativo cuando se genera un evento UI_CONFIGURATION_ERROR dentro de los cinco minutos (300 segundos) posteriores a un evento UI_COMMIT_PROGRESS. Como otro ejemplo, es posible que desee cargar un archivo en particular si un evento DCD_INTERFACE_DOWN se genera dos veces dentro de un intervalo de 60 segundos.

Para correlacionar eventos en una directiva de eventos, incluya las siguientes instrucciones en el [edit event-options] nivel jerárquico:

En la events instrucción, puede enumerar varios eventos desencadenantes. Para obtener información acerca de cómo definir eventos en las directivas de eventos, consulte Información general sobre las directivas de eventos y las notificaciones de eventos. Para correlacionar esos eventos con otros eventos, configure las within instrucciones y/o las attributes-match instrucciones.

La within instrucción define los eventos correlacionados que deben (o no) ocurrir dentro de un intervalo de tiempo especificado antes de un evento desencadenante. La attributes-match instrucción correlaciona el atributo de un evento con el atributo de otro evento o con una expresión regular. La directiva de eventos ejecuta las acciones configuradas en la then instrucción sólo si se cumplen las condiciones especificadas. En las secciones siguientes se describe cómo utilizar las instrucciones.

Correlacionar eventos por intervalo de tiempo

Puede configurar una directiva de eventos para que se ejecute únicamente si un evento desencadenador se produce dentro de un intervalo de tiempo especificado después de otro evento. Para ello, configure la within seconds events instrucción. La política se ejecuta si alguno de los eventos correlacionados definidos en la within seconds events instrucción se produce dentro del número configurado de segundos antes de cualquiera de los eventos desencadenadores definidos en la primera events instrucción. El número de segundos puede ser del 60 al 604.800. La not instrucción hace que la directiva se ejecute sólo si los eventos correlacionados no se producen dentro del intervalo de tiempo configurado antes de un evento desencadenador.

Por ejemplo, el dispositivo ejecuta la siguiente política si uno de los eventos desencadenantes, event3, event4o event5, se produce dentro de los 60 segundos posteriores a que ocurra uno de los eventos correlacionados, event1 o event2, :

Para configurar una directiva de eventos para correlacionar eventos por intervalo de tiempo:

  1. Configure uno o más eventos desencadenantes.

  2. Configure los eventos correlacionados que deben o no deben ocurrir antes de un evento desencadenador y dentro del intervalo de tiempo especificado.

    • Para especificar que un evento correlacionado debe producirse dentro del intervalo de tiempo especificado antes de un evento desencadenador, omita la not palabra clave.

    • Para especificar que un evento correlacionado no debe producirse dentro del intervalo de tiempo especificado antes de un evento desencadenador, incluya la not palabra clave.

  3. Configure las acciones que ejecuta la directiva de eventos si se cumplen las condiciones.

Nota:

El dispositivo ejecuta una política de eventos si se produce alguno de los eventos correlacionados (o no se produce, si configura la not palabra clave) antes de cualquier evento desencadenante. Para requerir que se produzcan (o no se produzcan) varios eventos correlacionados antes de un evento desencadenador, configure varias within instrucciones. Cada instrucción debe especificar un intervalo de tiempo diferente.

La within instrucción también admite la ejecución de una directiva de eventos cuando el evento desencadenante se produce un cierto número de veces dentro de un intervalo de tiempo determinado. Para obtener más información, vea Activar una política de eventos basada en el recuento de eventos.

Correlacionar eventos según atributos de eventos

La attributes-match declaración correlaciona dos eventos de la siguiente manera:

  • event1.attribute-name equals event2.attribute-name: ejecute la política sólo si el atributo especificado de event1 es igual al atributo especificado de event2.

  • event.attribute-name matches regular-expression: ejecute la política sólo si el atributo especificado de event coincide con la expresión regular dada. Para obtener más información, vea Usar expresiones regulares para refinar el conjunto de eventos que desencadenan una directiva.

  • event1.attribute-name starts-with event2.attribute-name: ejecute la política sólo si el atributo especificado de event1 comienza con el atributo especificado de event2.

Si la attributes-match instrucción incluye la equals opción o starts-with , o si incluye una matches opción que incluye una cláusula para un evento que no se especifica en el nivel de [edit event-options policy policy-name events] jerarquía, también debe definir una o varias within instrucciones en la misma directiva de evento.

Puede utilizar variables de política de eventos dentro de la attributes-match instrucción para diferenciar entre un atributo de evento desencadenador y un atributo de evento correlacionado. Los eventos desencadenadores son aquellos que se configuran en el nivel jerárquico [edit event-options policy policy-name events] . La notación del signo de dólar doble ($$) representa el evento que desencadena una directiva y {$$.attribute-name} se resuelve en el valor del atributo del evento desencadenante. Para correlacionar eventos, el signo de dólar simple con la notación de nombre de evento ($event) representa el evento más reciente que coincide con el nombre del evento y {$event.attribute-name} se resuelve en el valor del atributo asociado con ese evento.

Por ejemplo, la siguiente directiva de eventos ejecuta las acciones de la then instrucción si se realizan cuatro o más confirmaciones en un período de 5 minutos y el nombre de usuario de uno o más de los eventos correlacionados es el mismo que el nombre de usuario del evento desencadenador.

Hay muchas maneras de encontrar los atributos a los que puede hacer referencia para un evento específico, por ejemplo:

  • Utilice el Explorador de registros del sistema.

  • Utilice el comando de help syslog event modo operativo en la CLI.

  • Utilice la ayuda contextual en el modo de configuración cuando configure el atributo.

La aplicación System Log Explorer le permite buscar en los mensajes de registro del sistema estándar un sistema operativo y una versión determinados. Los detalles del mensaje incluyen los atributos a los que puede hacer referencia para ese evento.

Como alternativa, en la CLI, el comando de help syslog event modo operativo también muestra una lista de los atributos a los que puede hacer referencia para un evento determinado. El resultado del comando muestra los atributos del evento entre corchetes angulares (<>). El siguiente resultado muestra que el ACCT_ACCOUNTING_SMALL_FILE_SIZE evento tiene tres atributos a los que se puede hacer referencia: filename, file-size, y record-size.

Nota:

Puede filtrar el resultado de una búsqueda utilizando el símbolo de barra vertical (|). Para obtener más información sobre el uso del símbolo de barra vertical, consulte la Guía del usuario de CLI.

También puede ver los atributos de evento emitiendo el comando de set attributes-match event? modo de configuración en el nivel de [edit event-options policy policy-name] jerarquía, como se muestra en el ejemplo siguiente:

Nota:

En este set comando, no hay espacio entre el nombre del evento y el signo de interrogación (?).

Cómo representar eventos desencadenantes y correlacionados en una directiva de eventos

En los argumentos de script de eventos y las instrucciones de política de eventos admitidas, como la instrucción, puede utilizar variables de execute-commands directiva de eventos para diferenciar entre un evento desencadenador y un evento correlacionado. Los eventos desencadenadores y correlacionados se configuran en las siguientes instrucciones en el nivel jerárquico [edit event-options policy policy-name] :

  • Evento desencadenante: configurado en la events instrucción
  • Evento correlacionado: configurado en la within seconds events instrucción

Puede usar variables de política de eventos de las siguientes formas para representar eventos desencadenantes y correlacionados:

  • {$$.attribute-name}: la notación del signo de dólar doble ($$) 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 al 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 coincide con event. Cuando se combina con un nombre de atributo, la variable se resuelve en el valor del atributo asociado a ese evento. Por ejemplo, cuando una política emite el show 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 reciente COSD_CHAS_SCHED_MAP_INVALID almacenado en caché por el proceso de eventos.

  • {$*.attribute-name}—El signo de dólar con la notación asterisco ($*) representa el evento más reciente que coincide con cualquiera de los eventos correlacionados. La variable se resuelve en el valor del atributo asociado al evento más reciente que coincide con cualquiera de los eventos correlacionados especificados en la configuración de directiva.

En las directivas de eventos, puede hacer referencia a eventos específicos mediante variables de directiva de eventos. Tenga en cuenta la siguiente política de eventos:

En el show interfaces {$$.interface-name} comando, el valor del interface-name atributo de evento e1, e2, o e3 se sustituye por la {$$.interface-name} variable.

En el show interfaces {$e4.interface-name} comando, el valor del interface-name atributo del evento más reciente e4 se sustituye por la {$e4.interface-name} variable.

En el show interfaces {$*.interface-name} comando, el valor del interface-name atributo del evento , e5, o e6 más reciente e4se sustituye por la {$*.interface-name} variable. Si se produce uno de , , o dentro de e1los {$*.interface-name} 60 segundos posteriores e4a , e5, o e6, la variable sustituye el valor del interface-name atributo para ese evento correlacionado (e4, e5, o e6).e3 e2 Si el evento correlacionado no tiene un interface-name atributo, el software no ejecuta el show interfaces {$*.interface-name} comando.

Si e1 se produce dentro de los 60 segundos de ambos e4 y , entonces e5el valor del interface-name atributo para e4 se sustituye por la {$*.interface-name} variable. Esto se debe a que el proceso de eventos (eventd) busca correlacionar eventos en orden secuencial tal como se configura en la within instrucción. En este caso, el pedido es e4 > e5 > e6.

Ejemplo: correlacionar eventos en función de la recepción de otros eventos dentro de un intervalo de tiempo especificado

La directiva de eventos de este ejemplo emite un conjunto de comandos y carga el archivo de salida resultante en un sitio de archivo. La política se ejecuta si uno de los eventos desencadenantes, event3, , o event5, se produce dentro de los 60 segundos posteriores a que ocurra uno de los eventos correlacionados, event1 o event2, . event4 El pseudocódigo de la directiva es el siguiente:

La directiva de eventos especifica dos sitios de archivado en la configuración. El dispositivo intenta transferirse al primer sitio de archivo de la lista y se mueve al siguiente sitio solo si se produce un error en la transferencia. La configuración de la directiva de eventos es:

Ejemplo: correlacionar eventos basados en atributos de eventos

En la siguiente directiva de eventos, los dos eventos se correlacionan si sus valores de atributo de evento coinciden. La coincidencia de los atributos de ambos eventos garantiza que los dos eventos estén relacionados. En este caso, las direcciones de interfaz deben coincidir y los nombres de interfaz física (ifd) deben coincidir.

El RPD_KRT_IFDCHANGE error se produce cuando el proceso de protocolo de enrutamiento (rpd) envía una solicitud al kernel para cambiar el estado de una interfaz y la solicitud falla. El RPD_RDISC_NOMULTI error se produce cuando se configura una interfaz para la detección del enrutador, pero la interfaz no admite operaciones de multidifusión IP según sea necesario.

En este ejemplo, rpd_rdisc_nomulti.interface-name podría ser so-0/0/0.0 y rpd_krt_ifdchange.ifd-index podría ser so-0/0/0.