
Estoy intentando extraer subcadenas de mi campo de ruta en mi configuración de logstash.
El campo 'ruta' se ve así:
/storage/logs/deployment/servers/hostname.example.com/server.log
Dentro de una sección de filtro tengo esto:
ruby {
code => "event.set('log_filename',
event.get('path').split('/').last)"
}
Esto funciona bien. Aparece un nuevo campo llamado 'log_filename'
Sin embargo, también me interesa el nombre del servidor (hostname.example.com)
Entonces probé esto:
ruby {
code => "event.set('log_filename', event.get('path').split('/').[-1]) event.set('server_name', event.get('path').split('/').[-2])"
}
Esto no funciona en absoluto. No recibo ningún error en mi registro de logstash pero no se ven datos de logstash.
Busco el nombre del archivo y el campo anterior, que representa el host del que proviene.
¿Hay algún problema con mi sintaxis?