Con la versión 18.09.5 de Docker, compila e8ff056 y filebeat:7.1.1 (mediante elasticsearch) cuando escribo:
$ docker logs filebeat > filebeat.logVeo los registros pero el filebeat.log está vacío.
Si intento:
$ docker logs logstash > logstash.logNo veo el registro en la consola, pero el archivo está lleno con las líneas de registro.
El sistema operativo utilizado es: Ubuntu 19.04
El > redirige STDOUT, pero también puede tener la salida STDERR de los contenedores. Para redirigir eso, puedes usar:
docker logs filebeat > filebeat.log 2> filebeat.erro enviar ambos al mismo archivo:
docker logs filebeat > filebeat.log 2>&1Debe ejecutar el contenedor con el indicador -t que asignará un pseudo-tty para el contenedor. Ejemplo:
docker run -td --rm --name test store/elastic/filebeat:7.1.1
docker logs test > test.txt
Esto almacenará la salida en el archivo. Cuando se ejecuta sin el indicador -t, simplemente volcará los registros en su terminal