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

Note for design: Log customization and tuning #58

Open
jamesmunns opened this issue Jul 26, 2024 · 2 comments
Open

Note for design: Log customization and tuning #58

jamesmunns opened this issue Jul 26, 2024 · 2 comments
Milestone

Comments

@jamesmunns
Copy link
Collaborator

I've gotten feedback that we should take special care around customization of log output.

Currently, we only really offer the supported log level, and don't have specific support for specifying the log level of our dependencies including pingora.

As logging is a primary "user interface" for River, we should make another design pass on the desired capabilities and options for logging.

Some additional suggested features include:

  • reducing the percentage of logs that are printed, allowing for statistical sampling of high-volume logs, e.g. tracing 1%/10%/100% of all connections verbosely
  • tuning the contents and format of primary logs, allowing for different users to include different information relevant to their use cases
  • Filtering and anonymization of logs, for example not logging headers based on some sort of regex (to remove PII), or allowing for hashed versions of logs, such as logging the hash of the entire header, allowing for observation of duplicate requests

CC @branlwyd

@jamesmunns jamesmunns added this to the Backlog milestone Jul 26, 2024
@jamesmunns
Copy link
Collaborator Author

Also note: we should make sure we have setting for consuming structured logs, like OpenTelemetry, compat with Loki, Prometheus, etc.

@ljianc
Copy link

ljianc commented Sep 15, 2024

I hope to support full customization through placeholders, instead of adding, deleting, or renaming fields to pre-set JSON like in Caddy. Therefore, there is no need to worry about whether CLF or JSON format is better, allowing users to fully customize it

Additionally, it is necessary to support log rotated like Caddy

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants