Skip to content

Better forwaring of Kore's log infrastructure to the proxies #3833

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

Closed
wants to merge 16 commits into from

Conversation

geo2a
Copy link
Contributor

@geo2a geo2a commented Apr 29, 2024

No description provided.

@geo2a geo2a self-assigned this Apr 29, 2024
@geo2a
Copy link
Contributor Author

geo2a commented Apr 30, 2024

Subsumed by #3837

@geo2a geo2a closed this Apr 30, 2024
rv-jenkins added a commit that referenced this pull request May 7, 2024
Combines #3833  and #3831

- in Kore, implement rendering of oneline logs prefixed with the context
stack, in the spirit of
#3826

- add `--log-format <standard|oneline|json> (default:oneline)` to
`kore-rpc-booster`.
- to recover the old behaviour of `-l Rewrite` and friends, use
`--log-format standard`, i.e. `kore-rpc-booster --log-format standard -l
Rewrite`
- if any `--log-context` is passed, the log format is effectively
override to be `oneline`

- in `booster/tools/booster/Server.hs`, construct a log action to be
passed to Kore. If no `--log-context` options are passed, then the old
`-l RewriteKore` and fields levels still work with `--log-format
standard`. If `--log-context` is passed, then the complete set of
proxy-compatible Kore log entries is enabled, and the filtering is done
using the glob context filter late in the colog pipeline.

Things to do in a follow-up:
- json logging is inconsistent, both the interface and the
implementation:
- to get simplification JSON logs from both Booster and Kore, we
currently need to give two options: `kore-rpc-booster --log-format json
-l SimplifyJson`, which is not ideal. We need to remove `-l
SimplifyJson` and forward the log format to Booster instead.
- To implement the previous item in a clean way, we actually need to
stop emitting the logs at `SimplifyJson` level and instead render the
regular log items as json.
- file logging is inconsistent. It is currently not possible to redirect
Booster's contextual logs into a file.
- the performance of context filtering in Kore is likely terrible, since
we match the while log message, as a string, against the glob pattern.
There is not penalty if the contextual logging is off however.

---------

Co-authored-by: github-actions <[email protected]>
Co-authored-by: Jost Berthold <[email protected]>
Co-authored-by: rv-jenkins <[email protected]>
@jberthold jberthold deleted the georgy/kore-log-filtering branch March 30, 2025 22:30
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

Successfully merging this pull request may close these issues.

1 participant