Como obter logs do Docker com o driver journald?

0

OpenSuse Tumbleweed + Docker 17.04. Eu criei o /etc/docker/daemon.json com:

{
    "log-driver": "journald",
    "log-opts": {
            "labels": "my_test",
            "env": "os,customer"
    }
}

Então eu iniciei o daemon do docker: systemctl start docker . Verifiquei: sudo docker info|grep Logg e veja journald como o driver padrão atual. Também sudo docker inspect -f '{{.HostConfig.LogConfig.Type}}' MY-CONTAINER-ID me mostra journald novamente. Docker foi executado como

sudo docker run -ti -v /sys/fs/cgroup:/sys/fs/cgroup --tmpfs /run/dbus --tmpfs /run/lock --cap-add=ALL MY-CONTAINER

e, em seguida, eu SH-ed para ele. No Docker, fiz várias mensagens de log com:

logger XXX
logger -p local0.notice XXX
# etc...

Eu vejo essas mensagens no Docker journald com journalctl -n ... . E eu supus que eu encontraria essas mensagens de log no container ("host OS") também: com journalctl -n ... - nothing. Com docker logs MY-CONTAINER-ID - nada também. Eu quero registrar mensagens do Docker para container ("host") journald. A configuração parece certa, mas as mensagens de log estão faltando. Alguém me ajudaria - o que há de errado com o Docker no OpenSuse / com minha configuração?

    
por Paul-AG 06.11.2017 / 16:34

1 resposta

1

O driver do Docker JournalD captura o stdout e o stderr do processo do contêiner.

Por outro lado, o comando logger envia um messase para /dev/log .

Editar

Seria bom fazer logger -s

    
por 07.11.2017 / 12:51