DrydockDrydock
ConfigurationLogs

Logs

Configure drydock log output and use the built-in log viewers to monitor application and container activity.

Server Log Configuration

Control drydock's own log output with environment variables.

Variables

Env varRequiredDescriptionSupported valuesDefault in official Docker image
DD_LOG_LEVELLog levelfatal, error, warn, info, debug, traceinfo
DD_LOG_FORMATLog formattext jsonjson
DD_LOG_BUFFER_ENABLEDEnable in-memory log ring buffer used by UI/API log viewertrue, falsetrue

The official image sets DD_LOG_FORMAT=json by default for structured production logs. Override with DD_LOG_FORMAT=text for pretty logs. Set DD_LOG_BUFFER_ENABLED=false to disable the in-memory ring buffer (reduces per-log processing overhead).

Examples

Set debug level

services:
  drydock:
    image: codeswhat/drydock
    ...
    environment:
      - DD_LOG_LEVEL=debug
docker run -e DD_LOG_LEVEL=debug ... codeswhat/drydock

Set json format (for ElasticSearch ingestion for example)

docker run -e DD_LOG_FORMAT=json ... codeswhat/drydock
services:
  drydock:
    image: codeswhat/drydock
    ...
    environment:
      - DD_LOG_FORMAT=json

Application Log Viewer

The Configuration > Logs page provides a terminal-style viewer for drydock's own runtime logs — startup events, polling cycles, registry checks, trigger executions, and errors.

When enabled, logs are stored in an in-memory ring buffer (last 1,000 entries). They are not persisted to disk. If DD_LOG_BUFFER_ENABLED=false, the viewer returns no application log entries.

Toolbar controls

ControlDescription
LevelFilter by log level: all, debug, info, warn, error. Note: entries below your configured DD_LOG_LEVEL are never captured, so they won't appear regardless of this filter.
LinesNumber of entries to fetch: 50, 100, 500, or 1,000.
Auto fetchAutomatically poll for new entries at a chosen interval: Off, 2s, 5s, 10s, or 30s.
RefreshManual one-shot fetch.

Scroll lock

When auto fetch is active, the viewer auto-scrolls to the newest entry after each fetch. If you scroll up to read earlier entries, scroll lock activates automatically — a warning chip appears and auto-scroll pauses so your reading position is preserved. Click Resume to jump back to the bottom and re-enable auto-scroll.

Container Log Viewer

Each container has a Logs tab in its detail expansion panel. This shows the container's stdout/stderr output directly in the UI — no need to shell into the host.

Toolbar controls

ControlDescription
LinesNumber of tail lines to fetch: 50, 100, or 500.
Auto fetchPoll for new log output at a chosen interval: Off, 2s, 5s, 10s, or 30s.
RefreshManual one-shot fetch.

Scroll lock and resume work the same way as the application log viewer.

Agent containers

Container logs work for both local and remote agent containers. For agent-managed containers, drydock proxies the log request through the agent connection automatically.

Agent Log Viewer

Agent runtime logs are available from the Agents page. Open an agent's detail slide-in panel and switch to the Logs tab.

On this page