spring-projects / spring-projects/spring-boot

Offer a cababilty to disable structured logging

Open
#45,407 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

status: pending-design-work type: enhancement
Dominant language
Java
Stars
81.5k
Forks
42.7k
Avg merge
2d 4h
Merged PRs (30d)
65

Description

Thank you for the new integrated structured logging in Spring Boot 3.4. I have been very satisfied with its behaviour and the ergonomics of using it contrasted with having to wire that up, myself.

I would like to be able to explicitly disable it, though. I have a situation where, for safety purposes, the setting is distributed widely with

logging.structured.format.console=ecs

for correct default behaviour, but that leads to developers being unable to view plain text logs anywhere, namely during development, on account of the settings having no non-structured override option. The JSON logs are a lot more difficult to parse so that one use case has suffered considerably.

Before 3.4, we relied on a local

logging.config=

to disable a similarly distributed configuration and that worked well enough. Unfortunately there is no analogue for logging.structured.format.console that lets us do the same.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the logging.structured.format.console setting and compare it with the previously used logging.config= override described in the issue. Determine how an explicit local setting can disable the distributed structured format while preserving the default elsewhere. Done means developers can view plain-text console logs without removing the shared ECS configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring-boot
Domain
backend, observability
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.