Skip to content

Add support for custom MdcSerializer in EcsLayout #291

Description

Summary

EcsLayout from log4j2-ecs-layout currently uses a hardcoded implementation of MdcSerializer for MDC serialization. While this works well for most cases, it lacks flexibility for users with custom MDC serialization requirements.

I propose adding support for configuring or overriding the MdcSerializer implementation to accommodate specific use cases, such as:

  • Custom JSON structure for MDC fields.
  • Enhanced MDC sanitization or transformation logic.
  • Integrating additional logging contexts.

Problem Statement

The current implementation of MdcSerializer is resolved dynamically using MdcSerializer.Resolver. However, it does not allow users to provide their own MdcSerializer implementation.

Proposed Solution

Introduce a mechanism to customize the MdcSerializer, such as already implemented for ObjectMessageJacksonSerializer

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent-javacommunityIssues and PRs created by the communitytriageIssues and PRs that need to be triaged

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions