GNU/Linux >> Tutoriales Linux >  >> Linux

Comprender las plantillas de rsyslog

Las plantillas modifican y dan formato a la salida generada por rsyslog. Permiten especificar cualquier formato que un usuario pueda desear. También se utilizan para la generación dinámica de nombres de archivos. La siguiente es la sintaxis para crear una plantilla:

$template TEMPLATE_NAME,"text %PROPERTY% text", [OPTION]

Los campos se describen de la siguiente manera:

Campo Propósito
$plantilla Directiva que define una plantilla
NOMBRE_PLANTILLA Nombre de la plantilla
“texto” Texto de plantilla real entre comillas
%PROPIEDAD% Contenido de mensaje específico rodeado de signos de porcentaje
OPCIÓN Especifica opciones que modifican la funcionalidad de la plantilla

Las plantillas se pueden utilizar para generar nombres de archivos dinámicos. Especifique una propiedad como parte de la ruta del archivo para crear un nuevo archivo para cada propiedad única. Por ejemplo, use el generado por tiempo propiedad para generar un nombre de archivo único para cada mensaje rsyslog:

$template DynamicFile,“/var/log/%timegenerated%-test.log”

Especifique el nombre de la plantilla en una regla para modificar la salida de rsyslog. Los archivos dinámicos están representados por una plantilla y un prefijo de signo de interrogación (?). Ejemplo:

*.* ?DynamicFile

Propiedades

Puede usar propiedades dentro de una plantilla para hacer referencia a contenidos específicos de un mensaje rsyslog. Utilice la siguiente sintaxis para definir una propiedad dentro de una plantilla:

%PROPERTY_NAME[:FROM_CHAR:TO_CHAR:OPTION]%

Los campos se describen de la siguiente manera:

Campo Propósito
NOMBRE_PROPIEDAD Nombre de una propiedad
FROM_CHAR y TO_CHAR Rango de caracteres sobre los que actúa la propiedad especificada
OPCIÓN Opciones de propiedad

Puede encontrar una lista de propiedades y descripciones disponibles en http://www.rsyslog.com/doc/property_replacer.html.

1. La siguiente propiedad representa el texto completo del mensaje de un mensaje rsyslog:

%msg%

2. El siguiente ejemplo representa los dos primeros caracteres del texto del mensaje:

%msg:1:2%

3. La siguiente propiedad representa el nombre de host en un mensaje rsyslog:

%hostname%

4. La siguiente propiedad representa la instalación del mensaje en forma de texto:

%syslogfacility-text%

Plantilla:Ejemplo

El siguiente ejemplo define una plantilla llamada clase que formatea un mensaje rsyslog para mostrar la marca de tiempo del mensaje, la instalación en forma de texto, la prioridad en forma de texto, el nombre de host y el texto del mensaje, y termina con una nueva línea:

$template class, "Time: %timestamp%, Facility: %syslogfacilitytext%, Priority: %syslogpriority-text%, Hostname: %hostname%,
Message: %msg%\n"

Para usar la plantilla para mensajes /var/log/logfile, incluya el nombre de la plantilla de la siguiente manera:

*.* /var/log/logfile;class
CentOS / RedHat:guía para principiantes sobre la administración de archivos de registro
Comprender las acciones de rsyslog
Comprender las opciones de filtro de rsyslog


Linux
  1. Comprender YAML para Ansible

  2. ¿Entendiendo si?

  3. ¿Cómo imprimo un mensaje a stderr en Go?

  4. Descripción de las asignaciones de puertos de la ventana acoplable

  5. ¿Qué es gssapi con micrófono?

Comando de pared en Linux

Cómo crear plantillas en LibreOffice para ahorrar tiempo y aumentar la productividad

Comprender los procesos en Linux

¿Cómo configurar las plantillas personalizadas en WHM?

Cómo implementar aplicaciones completas rápidamente con las plantillas de aplicaciones de Portainer

Comprender cómo funciona un sistema de correo electrónico