Re: Generación dinámica de archivo de log con rsyslog
El Fri, 09 May 2014 15:40:14 -0300, Mauro Antivero escribió: El 09/05/14 15:11, Camaleón escribió: (...) Mi pregunta en concreto es, el operador (o como sea que se llame dentro de la jerga de rsyslog) ?, corresponde al formato viejo, nuevo o a ambos? Perdón si por tanta pavada generé tanto lío, pero como ya se habló la documentación de rsyslog es un lío. No le daría muchas muchas vueltas a eso del formato ya que si usas algo que no sea compatible con tu versión no te funcionará y te registrará el error. Si, mi única preocupación es que el día de mañana deje de estar soportado el formato viejo (como dice la documentación que va a pasar), por eso quería dejar todo en el formato nuevo. Ya has visto que la sintaxis de la versión 5 no era compatible con la de la versión 8 y es una pena que no se hayan preocupado de mantener la compatibilidad con los archivos de configuración de versiones anteriores, pero lo que sí que podrían hacer al menos es documentar las modificaciones en relación 1:1 aunque parece que sí están documentados algunos cambios importantes entre versiones: http://www.rsyslog.com/doc/v8compatibility.html http://www.rsyslog.com/doc/v7compatibility.html http://www.rsyslog.com/doc/v6compatibility.html http://www.rsyslog.com/doc/v5compatibility.html (...) Pero según parece el uso del selector ? sirve tanto para la sintaxis vieja como para la nueva. Se ve que haciendo: ?HOSTS;CustomFormat_Hosts El uso del módulo omfile está implícito. Estas dos páginas aclaran un poco más el asunto (pero igual la documentación es muy confusa): http://www.rsyslog.com/doc/v7-stable/configuration/actions.html http://www.rsyslog.com/doc/v7-stable/configuration/templates.html Al que le interese busque todo lo relacionado con dynamic dentro de ellas. Exacto... en los ejemplos de configuración que aparecen en los enlaces que mandas, se lee (y bien como dices relacionado con los nombres dinámicos): *** Dynamic filenames are indicated by specifying a questions mark ”?” instead of a slash, followed by the template name. Thus, the selector line for our dynamic file name would look as follows: (...) Creating directories is also supported. For example you can use the hostname as directory and the program name as file name: $template DynFile,/var/log/%HOSTNAME%/%programname%.log *** Y también es válido para la versión 8. Saludos, -- Camaleón -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/pan.2014.05.10.13.44...@gmail.com
Re: Generación dinámica de archivo de log con rsyslog
El Fri, 09 May 2014 15:17:04 -0300, Mauro Antivero escribió: (...) Ja, miren esto (si tienen un tiempito): http://www.rsyslog.com/doc/v7-stable/configuration/actions.html Lo que yo estoy haciendo (el uso de ? para generar archivos dinámicamente) está dentro de la sección Legacy, pero no aclara como hacer lo mismo utilizando la sintaxis nueva. (...) Hum... bueno, no está dentro de la sección Legacy Description sino que pertenece a Regular File, no creo que se considere una sintaxis obsoleta en las nuevas versiones, por lo que entiendo puedes descansar tranquilo :-) Saludos, -- Camaleón -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/pan.2014.05.10.13.57...@gmail.com
Re: Generación dinámica de archivo de log con rsyslog
El Thu, 08 May 2014 14:19:33 -0300, Mauro Antivero escribió: Estimados, estoy tratando de hacer que rsyslog me escriba determinados logs en distintos directorios según la fecha. El siguiente es un ejemplo que funciona, pero no hace lo que quiero (osea, en este caso se guarda todo en un mismo archivo en /var/log/rsyslog/rsyslog.log): ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/syslog.log) stop } Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. (...) Pues así, sin entrar en muchos detalles, entiendo que cuando defines la variable file tienes que pasarle una ruta que exista porque no creo que rsyslog tenga permisos para crear directorios al vuelo. Ahora bien, es posible que tengas alguna otra variable que te permita directa o indirectamente hacer lo que buscas (p. ej., a través de un pequeño script que se encargue de crear antes la estructura de directorios) o también podrías simplemente usar las variables de año-mes- día en el nombre del archivo. Saludos, -- Camaleón -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/pan.2014.05.09.14.12...@gmail.com
Re: Generación dinámica de archivo de log con rsyslog
El 09/05/14 02:48, C. L. Martinez escribió: 2014-05-08 17:19 GMT+00:00 Mauro Antivero mauro.antiv...@gmail.com: Estimados, estoy tratando de hacer que rsyslog me escriba determinados logs en distintos directorios según la fecha. El siguiente es un ejemplo que funciona, pero no hace lo que quiero (osea, en este caso se guarda todo en un mismo archivo en /var/log/rsyslog/rsyslog.log): ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/syslog.log) stop } Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. Intenté con las propiedades, pero no he podido. Usando el formato de sintaxis viejo si he podido, pero no es aconsejable usar dicha sintaxis. Lo que si funciona es lo siguiente: template(name=CustomFormat_Hosts type=string String=%$year%-%$month%-%$day% %$hour%:%$minute% %hostname% %syslogtag% %msg%\n) ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { ?CMTS;CustomFormat_Hosts stop } En este caso como ven uso las propiedades pero en el string generado con el template. Luego en la regla configuro que todos los mensajes de log que vengan del host 192.168.0.5 sean guardados en una estructura como la que yo deseo. Bueno, el tema documentación en rsyslog solo tiene un calificativo: desastroso. Pero, es superable :)). A ver, de entrada está mezclando sintaxis antigua con sintaxis nueva. De entrada, ¿que versión rsyslog estás utilizando? Por solo tienes dos opciones: Perdón, estoy usando la 8.2.1 a) Configurar todo con sintaxis antigua. b) Configurar todo con sintaxis nueva. Estoy tratando de ir por la b. Ahora mismo lo has mezclado todo. Yo nunca he tratado de hacer lo que estás intentando (básicamente porque sería infumable gestionar en archivos planos el alto volumen de logs que debo gestionar), pero te pongo un ejemplo de como utilizar los templates en sintaxis nueva (versiones 6.x en adelante): Templates definitions $template idp01_rfc5424fmt,suricata idp01 %fromhost-ip% %msg%\n Esta ($template) es justamente la sintaxis vieja. La nueva es del tipo template(name=...). if $syslogtag == 'idp01' then { action(type=omfwd protocol=tcp target=172.17.22.1 port=10514 template=suricata01_rfc5424fmt queue.filename=suricata01fwd queue.maxdiskspace=10g queue.saveonshutdown=on queue.type=linkedlist queue.maxfilesize=5m action.resumeretrycount=-1) stop } Como ves, la forma de utilizar el template difiere mucho de como la has configurado. Es que ese es un template distinto, vos ahí estás usando el módulo omfwd, que no lo conozco pero supongo que hace forward hacia donde vos le indiques (172.17.22.1). Yo en todo caso quiero usar el módulo omfile y que el archivo sea generado dentro de una estructura de directorios que indique el año/mes/día. El tema es que si lo quiero hacer con la sintaxis: action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) No logro hacer que me tome como nombre de directorios al año, al mes y al día, ya que no me reconoce las propierties ($year, $month y $day). Como decía, lo que me funciona es lo siguiente: *template(name=HOSTS type=string string=/var/log/rsyslog/%$year%/%$month%/%$day%/%hostname%/syslog.log)* *template(name=CustomFormat_Hosts type=string String=%$year%-%$month%-%$day% %$hour%:%$minute% %hostname% %syslogtag% %msg%\n)* *ruleset(name=remote){** **if $fromhost-ip == '192.168.0.5' then {** **?CMTS;CustomFormat_Hosts** **stop** **}** * Que en respuesta a lo que está más abajo fijate que no tengo en cuenta las horas y los minutos para la generación de la ruta, sino que la ruta es año/mes/día/syslog.log y lo que se guarda dentro de este archivo es: año-mes-día hora:minuto host tag mensaje /n Pido disculpas porque en el correo original me olvidé de incluir el template HOSTS que es el que define el string para la ruta al archivo, y esto puede haber generado confusiones. En resumen, de esta manera (usando ?CMTS;CustomFormat_Hosts luego del then) me funciona, pero no sé si eso no es justamente el formato viejo. Me gustaría dejarlo con una sentencia tipo action, pero eso es lo que no puedo hacer. Prueba a ajustarla. Creo que la definición del propio template es correcta. Si, los dos templates (el de la generación dinámica de la ruta y el que indica que es lo que se debe escribir dentro del archivo) funcionan perfectamente :) Por cierto, ¿estás seguro que quieres crear directorios de hora y minuto?. Yo no lo haría porque dependiendo del volumen, ya puedes tener un disco muy muy rápido en escritura. Piensa que rsyslog está pensado para trabajar con
Re: Generación dinámica de archivo de log con rsyslog
El 09/05/14 11:12, Camaleón escribió: El Thu, 08 May 2014 14:19:33 -0300, Mauro Antivero escribió: Estimados, estoy tratando de hacer que rsyslog me escriba determinados logs en distintos directorios según la fecha. El siguiente es un ejemplo que funciona, pero no hace lo que quiero (osea, en este caso se guarda todo en un mismo archivo en /var/log/rsyslog/rsyslog.log): ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/syslog.log) stop } Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. (...) Pues así, sin entrar en muchos detalles, entiendo que cuando defines la variable file tienes que pasarle una ruta que exista porque no creo que rsyslog tenga permisos para crear directorios al vuelo. Mmm... En mi caso no es así (Debian Wheezy con todo por defecto), si borro la ruta ni bien entra un log rsyslog crea la ruta completa, ya lo he probado varias veces, puesto que cada vez que hago un cambio en la configuración borro todo dentro de la carpeta /var/log/rsyslog para empezar de cero. Ahora bien, es posible que tengas alguna otra variable que te permita directa o indirectamente hacer lo que buscas (p. ej., a través de un pequeño script que se encargue de crear antes la estructura de directorios) o también podrías simplemente usar las variables de año-mes- día en el nombre del archivo. Como te decía en mi caso no es así. A mi me sucede que si hago lo siguiente: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/%$year%/%$month%/%$day%/syslog.log) stop } Lo que logro es que se me genere la siguiente ruta (tal cual la escribo): /var/log/rsyslog/%$año%/%$mes%/%$día%/syslog.log Osea que no me toma las propiedades $month y demás. Cosa que si me las tomaba usando el formato viejo. Lo que logré hacer para que funcione (lo acabo de poner en el mail anterior pero lo repito por claridad) es lo siguiente: template(name=HOSTS type=string string=/var/log/rsyslog/%$year%/%$month%/%$day%/%hostname%/syslog.log) template(name=CustomFormat_Hosts type=string String=%$year%-%$month%-%$day% %$hour%:%$minute% %hostname% %syslogtag% %msg%\n) ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { ?CMTS;CustomFormat_Hosts stop } El template HOSTS define la ruta dinámica. El template CustomFormat_Hosts define el contenido del archivo. Mmm... Me parece que me estoy enroscando demasiado. Lo que me mareó acá es que no puedo usar la sentencia action(type=...), que SE que corresponde al nuevo formato. Mi pregunta en concreto es, el operador (o como sea que se llame dentro de la jerga de rsyslog) ?, corresponde al formato viejo, nuevo o a ambos? Perdón si por tanta pavada generé tanto lío, pero como ya se habló la documentación de rsyslog es un lío. Saludos y muchas gracias! Saludos, -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/536d14f6.6080...@gmail.com
Re: Generación dinámica de archivo de log con rsyslog
El Fri, 09 May 2014 14:48:38 -0300, Mauro Antivero escribió: El 09/05/14 11:12, Camaleón escribió: (...) Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. (...) Pues así, sin entrar en muchos detalles, entiendo que cuando defines la variable file tienes que pasarle una ruta que exista porque no creo que rsyslog tenga permisos para crear directorios al vuelo. Mmm... En mi caso no es así (Debian Wheezy con todo por defecto), si borro la ruta ni bien entra un log rsyslog crea la ruta completa, ya lo he probado varias veces, puesto que cada vez que hago un cambio en la configuración borro todo dentro de la carpeta /var/log/rsyslog para empezar de cero. (...) Ahh... vale, ya entiendo. Como decías que no podías generar el archivo pensaba que simplemente no te creaba la ruta completa y que te daba algún error por permisos de escritura pero lo que querías decir es que no te toma las variables que le pasas, que es diferente. Te daré un apunte sobre esto y luego lo miraré con más calma, pero el manual de rsyslog dice que las variables se usan dentro de las plantillas y seguramente por eso no se traduzcan donde las estás poniendo. *** http://www.rsyslog.com/doc/property_replacer.html Accessing Properties Syslog message properties are used inside templates. They are accessed by putting them between percent signs. Properties can be modified by the property replacer. The full syntax is as follows: *** Por eso, al definir una plantilla como has hecho ya te funciona la traducción de las variables. Mi pregunta en concreto es, el operador (o como sea que se llame dentro de la jerga de rsyslog) ?, corresponde al formato viejo, nuevo o a ambos? Perdón si por tanta pavada generé tanto lío, pero como ya se habló la documentación de rsyslog es un lío. No le daría muchas muchas vueltas a eso del formato ya que si usas algo que no sea compatible con tu versión no te funcionará y te registrará el error. Saludos, -- Camaleón -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/pan.2014.05.09.18.11...@gmail.com
Re: Generación dinámica de archivo de log con rsyslog
El 09/05/14 11:12, Camaleón escribió: El Thu, 08 May 2014 14:19:33 -0300, Mauro Antivero escribió: Estimados, estoy tratando de hacer que rsyslog me escriba determinados logs en distintos directorios según la fecha. El siguiente es un ejemplo que funciona, pero no hace lo que quiero (osea, en este caso se guarda todo en un mismo archivo en /var/log/rsyslog/rsyslog.log): ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/syslog.log) stop } Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. (...) Pues así, sin entrar en muchos detalles, entiendo que cuando defines la variable file tienes que pasarle una ruta que exista porque no creo que rsyslog tenga permisos para crear directorios al vuelo. Ahora bien, es posible que tengas alguna otra variable que te permita directa o indirectamente hacer lo que buscas (p. ej., a través de un pequeño script que se encargue de crear antes la estructura de directorios) o también podrías simplemente usar las variables de año-mes- día en el nombre del archivo. Saludos, Ja, miren esto (si tienen un tiempito): http://www.rsyslog.com/doc/v7-stable/configuration/actions.html Lo que yo estoy haciendo (el uso de ? para generar archivos dinámicamente) está dentro de la sección Legacy, pero no aclara como hacer lo mismo utilizando la sintaxis nueva. En fin, un tiempo más le dedico, sino lo dejo así hasta que aparezca la documentación correcta. Saludos y gracias, Mauro. -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/536d1ba0.4040...@gmail.com
Re: Generación dinámica de archivo de log con rsyslog
El 09/05/14 15:11, Camaleón escribió: El Fri, 09 May 2014 14:48:38 -0300, Mauro Antivero escribió: El 09/05/14 11:12, Camaleón escribió: (...) Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. (...) Pues así, sin entrar en muchos detalles, entiendo que cuando defines la variable file tienes que pasarle una ruta que exista porque no creo que rsyslog tenga permisos para crear directorios al vuelo. Mmm... En mi caso no es así (Debian Wheezy con todo por defecto), si borro la ruta ni bien entra un log rsyslog crea la ruta completa, ya lo he probado varias veces, puesto que cada vez que hago un cambio en la configuración borro todo dentro de la carpeta /var/log/rsyslog para empezar de cero. (...) Ahh... vale, ya entiendo. Como decías que no podías generar el archivo pensaba que simplemente no te creaba la ruta completa y que te daba algún error por permisos de escritura pero lo que querías decir es que no te toma las variables que le pasas, que es diferente. Te daré un apunte sobre esto y luego lo miraré con más calma, pero el manual de rsyslog dice que las variables se usan dentro de las plantillas y seguramente por eso no se traduzcan donde las estás poniendo. *** http://www.rsyslog.com/doc/property_replacer.html Accessing Properties Syslog message properties are used inside templates. They are accessed by putting them between percent signs. Properties can be modified by the property replacer. The full syntax is as follows: *** Por eso, al definir una plantilla como has hecho ya te funciona la traducción de las variables. Excelente aclaración, gracias :) Mi pregunta en concreto es, el operador (o como sea que se llame dentro de la jerga de rsyslog) ?, corresponde al formato viejo, nuevo o a ambos? Perdón si por tanta pavada generé tanto lío, pero como ya se habló la documentación de rsyslog es un lío. No le daría muchas muchas vueltas a eso del formato ya que si usas algo que no sea compatible con tu versión no te funcionará y te registrará el error. Saludos, Si, mi única preocupación es que el día de mañana deje de estar soportado el formato viejo (como dice la documentación que va a pasar), por eso quería dejar todo en el formato nuevo. Pero según parece el uso del selector ? sirve tanto para la sintaxis vieja como para la nueva. Se ve que haciendo: ?HOSTS;CustomFormat_Hosts El uso del módulo omfile está implícito. Estas dos páginas aclaran un poco más el asunto (pero igual la documentación es muy confusa): http://www.rsyslog.com/doc/v7-stable/configuration/actions.html http://www.rsyslog.com/doc/v7-stable/configuration/templates.html Al que le interese busque todo lo relacionado con dynamic dentro de ellas. Saludos y gracias! Mauro. -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/536d210e.4010...@gmail.com
Generación dinámica de archivo de log con rsyslog
Estimados, estoy tratando de hacer que rsyslog me escriba determinados logs en distintos directorios según la fecha. El siguiente es un ejemplo que funciona, pero no hace lo que quiero (osea, en este caso se guarda todo en un mismo archivo en /var/log/rsyslog/rsyslog.log): ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/syslog.log) stop } Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. Intenté con las propiedades, pero no he podido. Usando el formato de sintaxis viejo si he podido, pero no es aconsejable usar dicha sintaxis. Lo que si funciona es lo siguiente: template(name=CustomFormat_Hosts type=string String=%$year%-%$month%-%$day% %$hour%:%$minute% %hostname% %syslogtag% %msg%\n) ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { ?CMTS;CustomFormat_Hosts stop } En este caso como ven uso las propiedades pero en el string generado con el template. Luego en la regla configuro que todos los mensajes de log que vengan del host 192.168.0.5 sean guardados en una estructura como la que yo deseo. Se pueden preguntar lo siguiente: Si ya lograste hacer lo que querías por qué estás preguntando como hacerlo??? Bueno, es que sinceramente hoy en día no sé si lo que he hecho (?CMTS;CustomFormat_Hosts) es la forma correcta de hacerlo. En la documentación de rsyslog se ven muchos ejemplos usando la sentencia action, pero no he encontrado ninguno que en el campo file use las propiedades para generar dinámicamente los directorios o los archivos. Lo de usar ?CMTS;CustomFormat_Hosts lo saqué de un ejemplo escrito con la sintaxis vieja y por eso no sé si esa línea en particular está formalmente bien (eso si, funciona perfecto). El tema es que la misma documentación oficial de rsyslog mezcla sintaxis nueva con vieja! Incluso su creador da ejemplos usando la sintaxis vieja!!! Una cosa de locos, sobre todo pensando que en la misma página te dicen que la sintaxis vieja por ahora es compatible, pero que en un tiempo va a dejar de serlo y por eso conviene escribir todo según la sintaxis vieja. Me parece que esto no es algo inherentemente malo, sino que se debe a la gran velocidad de desarrollo de rsyslog. Supongo que mucha documentación no estará actualizada del todo. En fin, a lo mejor alguno de ustedes me pueda dar una mano. Saludos y muchas gracias. Mauro. -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/536bbca5.5050...@gmail.com
Re: Generación dinámica de archivo de log con rsyslog
2014-05-08 17:19 GMT+00:00 Mauro Antivero mauro.antiv...@gmail.com: Estimados, estoy tratando de hacer que rsyslog me escriba determinados logs en distintos directorios según la fecha. El siguiente es un ejemplo que funciona, pero no hace lo que quiero (osea, en este caso se guarda todo en un mismo archivo en /var/log/rsyslog/rsyslog.log): ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/syslog.log) stop } Y lo que quiero en realidad es algo de este tipo: ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { action(type=omfile file=/var/log/rsyslog/año/mes/día/syslog.log) stop } Pero no logro hacerlo andar. Intenté con las propiedades, pero no he podido. Usando el formato de sintaxis viejo si he podido, pero no es aconsejable usar dicha sintaxis. Lo que si funciona es lo siguiente: template(name=CustomFormat_Hosts type=string String=%$year%-%$month%-%$day% %$hour%:%$minute% %hostname% %syslogtag% %msg%\n) ruleset(name=remote){ if $fromhost-ip == '192.168.0.5' then { ?CMTS;CustomFormat_Hosts stop } En este caso como ven uso las propiedades pero en el string generado con el template. Luego en la regla configuro que todos los mensajes de log que vengan del host 192.168.0.5 sean guardados en una estructura como la que yo deseo. Bueno, el tema documentación en rsyslog solo tiene un calificativo: desastroso. Pero, es superable :)). A ver, de entrada está mezclando sintaxis antigua con sintaxis nueva. De entrada, ¿que versión rsyslog estás utilizando? Por solo tienes dos opciones: a) Configurar todo con sintaxis antigua. b) Configurar todo con sintaxis nueva. Ahora mismo lo has mezclado todo. Yo nunca he tratado de hacer lo que estás intentando (básicamente porque sería infumable gestionar en archivos planos el alto volumen de logs que debo gestionar), pero te pongo un ejemplo de como utilizar los templates en sintaxis nueva (versiones 6.x en adelante): Templates definitions $template idp01_rfc5424fmt,suricata idp01 %fromhost-ip% %msg%\n if $syslogtag == 'idp01' then { action(type=omfwd protocol=tcp target=172.17.22.1 port=10514 template=suricata01_rfc5424fmt queue.filename=suricata01fwd queue.maxdiskspace=10g queue.saveonshutdown=on queue.type=linkedlist queue.maxfilesize=5m action.resumeretrycount=-1) stop } Como ves, la forma de utilizar el template difiere mucho de como la has configurado. Prueba a ajustarla. Creo que la definición del propio template es correcta. Por cierto, ¿estás seguro que quieres crear directorios de hora y minuto?. Yo no lo haría porque dependiendo del volumen, ya puedes tener un disco muy muy rápido en escritura. Piensa que rsyslog está pensado para trabajar con +100K EPS ... O sea que puede llevar a tu disco de cabeza :)) Saludos. -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/caejqa5jb382j5sjwgb2wfq+g_ffudnw_0iso1oroa-vav+i...@mail.gmail.com
Re: archivo de log
.bash_history en tu /home/usuario/ 2014/1/18 Ismael L. Donis Garcia ism...@citricos.co.cu Alguien me podría decir en que archivo Debian guarda las instrucciones que uno teclea en una consola? Desde Ya Gracias | ISMAEL | -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/9BE022EAA8164DA0885A9DC9B75BDD 8...@natio.co.cu -- Free your mind, free your computer, free your life... César Cordero (Rockcesar) Linux Counter #461087
Re: archivo de log
en el .bash history de tu home -- Si dominas los Bits, dominas el mundo -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/201401201628.58048.hay...@inor.sld.cu
Re: archivo de log
On 01/18/2014 01:53 PM, Ismael L. Donis Garcia wrote: Alguien me podría decir en que archivo Debian guarda las instrucciones que uno teclea en una consola? Si usas bash, puedes verlo en la variable de entorno $HISTFILE. En el manual se explica en la parte de 'Shell Variables'. Saludos, Desde Ya Gracias | ISMAEL | -- Santiago López Denazis GNU/Linux SysAdmin sldena...@gmail.com Open your source, open your mind. Por favor, no utilice formatos de archivo privativos para el intercambio de documentos, como DOC y XLS, sino HTML, PDF, TXT, CSV o cualquier otro que no obligue a utilizar un programa de un fabricante concreto. Vea http://www.gnu.org/philosophy/no-word-attachments.es.html -- -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/52dc3147.3050...@gmail.com
archivo de log
Alguien me podría decir en que archivo Debian guarda las instrucciones que uno teclea en una consola? Desde Ya Gracias | ISMAEL | -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/9be022eaa8164da0885a9dc9b75bd...@natio.co.cu
Re: archivo de log
2014/1/18 Ismael L. Donis Garcia ism...@citricos.co.cu: Alguien me podría decir en que archivo Debian guarda las instrucciones que uno teclea en una consola? Desde Ya Gracias | ISMAEL | -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/9be022eaa8164da0885a9dc9b75bd...@natio.co.cu /home/usuario/.bash_history Saludos. -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/CAJ2aOA9rmh_6xz05LDxBxOUtnF_UaqE8M6OZjatee+q=z02...@mail.gmail.com
Re: archivo de log
El 18/01/14 17:53, Ismael L. Donis Garcia escribió: Alguien me podría decir en que archivo Debian guarda las instrucciones que uno teclea en una consola? .bash_history Es el fichero. -- Saludos de Santiago José López Borrazás. signature.asc Description: OpenPGP digital signature
Re: archivo de log
2014/1/18 Ismael L. Donis Garcia ism...@citricos.co.cu Alguien me podría decir en que archivo Debian guarda las instrucciones que uno teclea en una consola? Desde Ya Gracias | ISMAEL | Depende de la shell que uses. Para bash están en $HOME/.bash_history Para otras shell mira su manual. También te puede interesar el comando history. S2.