¿Leer archivos de varios directorios en Logstash?
-
21-12-2019 - |
Pregunta
Leo mis archivos de registro (cron_log, auth_log, mail_log, etc.) usando esta configuración:
file{
path => '/path/to/log/file/*_log'
}
Entonces leo mis archivos de registro y verifico:
if(path) ~= "cron" -----match--------
if(path) ~= "auth" -----match--------
Ahora tengo directorios como: Server1 Server2 Server3
......En Server 1
hay subdirectorios: authlog cronlog
.....Dentro de authlog hay subdirectorios según la fecha (como 2014.05.26, 2014.05.27
) que finalmente contiene el archivo de registro del día, que tengo que analizar.
Actualmente tenía un archivo de configuración que se usa para leer archivos usando *_log
y uso para ejecutar ese archivo de configuración y todos los archivos de registro presentes en /path/to/log/file/*_log
fueron analizados.
Ahora tengo que leer en muchos directorios (como se explicó anteriormente).
¿Tendré que escribir un archivo de configuración separado para cada directorio?
¿Cuál es la mejor manera de lograr esto usando logstash?
Solución
Los globos de rubí interpretan **
incluyendo todos los subdirectorios.
Entonces, por ejemplo, podrías darle al file
aporte un camino como:
/path/to/date/folders/**/*_log