En el pasado he utilizado la gema syslog-logger
para este
Puede configurar esto en un inicializador:
config.logger = Logger::Syslog.new("site1", Syslog::LOG_LOCAL5)
En las últimas versiones de rubí, también hay syslog/logger
en la biblioteca estándar - el uso es prácticamente el mismo.
Para iniciar el registro en syslog en lugar del archivo de texto predeterminado. Lo que sucede a continuación es una cosa configuración de syslog - es necesario crear reglas rsyslog que definen dónde están sus datos va
Lo más sencillo posible sería algo así como
!site1 /var/log/site1.log
que dirige todo con el nombre del programa "sitio1" (el primer argumento para Logger :: Syslog).
Hay mucho más que puede hacer, por ejemplo, puede reenviar mensajes de registro a un servidor de registro central que los agrega a todos en un archivo para que no tenga un archivo de registro para cada instancia de la aplicación .
Para la rotación de registros utilizo logrotate - Creo que rsyslog puede manejar ese tipo de cosas internamente pero no conozco los detalles.
Lamento no haber comentado todavía sobre esto, no había visto, que había una respuesta. Voy a probar esto la próxima semana, ¡gracias! –
Syslog :: LOG_LOCAL5 - ¿No hay un error aquí? –
Solo falta un cierre). Aparte de eso vino directamente desde el archivo de configuración de una aplicación de producción. –