Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update logging with processor pipeline #86995

Closed
wants to merge 21 commits into from

Conversation

JamesNK
Copy link
Member

@JamesNK JamesNK commented Jun 1, 2023

Work in progress.

Tasks:

  • API - We need a proposed API design for using enrichment. This includes a producer side (the developers who are populating the enrichment properties) and a consumer side (the developers writing ILoggerProviders that log the properties)
  • API - We need a proposed API design for configuring the middleware pipeline
  • API - BufferWriter. Use IBufferWriter instead? Add to dotnet/runtime in neutral location? Rename to logger specific API?
  • API (Noah working on it) - Pipeline, LogEntryPipeline, ScopePipeline. Make internal. This is difficult because they're used in Extensions.Logging and Extensions.Logging.Abstractions.
  • API (Noah working on it) - ILogEntryPipelineFactory. Make internal.
    https://github.com/JamesNK/runtime/pull/1/files
  • API - PropertyCustomFormatter, IPropertyFormatterFactory - Delegates vs virtual methods for property factory
  • API - ProcessorContext. Is cancellation needed here?
  • API - ProcessorFactory. Replace with a func?
  • API - IProcessorFactory, ILogEntryProcessorFactory. Merge two processor factories?
  • API - ILogMetadata. Members on this interface need review.
  • Perf - Add enrichment perf tests to https://github.com/dotnet/performance
  • Perf - Add redaction perf tests to https://github.com/dotnet/performance
  • Functionality - Processors are registered via type to DI container. This means it isn't possible to have multiple processors of the same type in a pipeline. Is that an acceptable limitation?

cc @noahfalk @tarekgh

@dotnet-issue-labeler
Copy link

Note regarding the new-api-needs-documentation label:

This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change.

@ghost
Copy link

ghost commented Jun 1, 2023

Tagging subscribers to this area: @dotnet/area-extensions-logging
See info in area-owners.md if you want to be subscribed.

Issue Details

Work in progress.

cc @noahfalk @tarekgh

Author: JamesNK
Assignees: -
Labels:

area-Extensions-Logging

Milestone: -

@noahfalk
Copy link
Member

This PR was superceded by #87550

@noahfalk noahfalk closed this Jun 15, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Jul 15, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants