Skip to content

Preserve the dedicated stack trace object all the way to encoder #1373

Open
@oakad

Description

@oakad

Right now, when stack trace is requested (via an annotation on a level enabler or via an explicit field) it is simply formatted into a largish string and treated like a simple string field. However, stack traces these days can be subject to analysis by automatic tooling and otherwise manipulated.

I think it will be beneficial to:

  1. Make stacktrace.Stack object publicly visible
  2. Modify the explicit Stack field to carry that object and not a string
  3. Provide a dedicated exporter method to handle the stacktrace.Stack object. The default encoder can keep using the default formatter, whereupon user provided encoder can do something more advanced

To my opinion, implementing this improvement is easy and seamless for most users. It will also allow for much safer processing of stacks in the log analysis systems as users will have the choice to supply their own encoders which can encode stack traces in analysis friendly way.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions