Skip to content

logging: Add support for JSON log output #8557

@mcpherrinm

Description

@mcpherrinm

Let's Encrypt is working on getting more structured logs.

We'd like to have Boulder support optionally emitting JSON-structured logs. Each log message should be a JSON object, newline-delimited. The slog JSONHandler would be the typical example of what we're thinking.

We would like this to be a setting in cmd.SyslogConfig.
Alongside StdoutLevel, we'd have `StdoutFormat: "json".
We don't need this for syslog, but if it's helpful to keep things symmetric, that's fine too.

In production we currently have Boulder use Syslog for most output, so the way we'll migrate is by enabling JSON to stdout, with a new log pipeline configured that will parse the full line as JSON, instead of just the JSON={...} portion today.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions