Skip to content

[BUG] systemd-journald recognizes logs as blob #11681

@lms-jk

Description

@lms-jk

Description

I am using a systemd service wrapper to start my containers with docker compose. Up until now, the logs in journald looked as expected:

Mär 30 13:07:54 lmsman-rnddh01 docker[600]: application-1  | 2024/03/30 13:07:54 ...
Mär 30 13:07:54 lmsman-rnddh01 docker[600]: application-1  | 2024/03/30 13:07:54 ...
Mär 30 13:07:54 lmsman-rnddh01 docker[600]: application-1  | 2024/03/30 13:07:54 ...

After updating from 2.24.7 -> 2.26.1 the logs in journald are recognized as binary data:

Apr 03 09:19:00 lmsman-rnddh01 docker[612]: [238B blob data]
Apr 03 09:19:03 lmsman-rnddh01 docker[612]: [232B blob data]
Apr 03 09:19:04 lmsman-rnddh01 docker[612]: [252B blob data]

Steps To Reproduce

Create a systemd unit /etc/systemd/system/compose.service with the following content:

[Unit]
Requires=docker.service
After=docker.service

[Service]
WorkingDirectory=<path_to_docker-compose.yaml>
ExecStart=/usr/bin/docker compose up
ExecStop=/usr/bin/docker compose down

[Install]
WantedBy=multi-user.target

Start the service and view the logs:

systemctl daemon-reload && systemctl start compose.service && journalctl -u compose.service -f

Compose Version

Docker Compose version 2.26.1

Docker Environment

Client:
 Version:    26.0.0
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  0.13.1
    Path:     /usr/lib/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  2.26.1
    Path:     /usr/lib/docker/cli-plugins/docker-compose

Server:
 Containers: 6
  Running: 6
  Paused: 0
  Stopped: 0
 Images: 8
 Server Version: 26.0.0
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: true
  Native Overlay Diff: false
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: dcf2847247e18caba8dce86522029642f60fe96b.m
 runc version:
 init version: de40ad0
 Security Options:
  seccomp
   Profile: builtin
  cgroupns
 Kernel Version: 6.8.2-arch2-1
 Operating System: Arch Linux
 OSType: linux
 Architecture: x86_64
 CPUs: 8
 Total Memory: 7.752GiB
 Name: lmsman-rnddh01
 ID: TCMT:KSFJ:5SX4:5WBH:HCTK:J3YX:WJWA:ZDU7:4EYB:KGOF:WEFS:CQE5
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Anything else?

# systemctl --version
systemd 255 (255.4-2-arch)
+PAM +AUDIT -SELINUX -APPARMOR -IMA +SMACK +SECCOMP +GCRYPT +GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK +XKBCOMMON +UTMP -SYSVINIT default-hierarchy=unified

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions