old_mixer_repo
old_mixer_repo copied to clipboard
Mixer AccessLogs
Mixer should emit access logs for every grpc request it serves.
- AccessLog should be performant so that they can be enabled in production at high volume. This is typical for other components / proxies. Envoy produces access logs, and it is designed to be used in production.
- AccessLog should contain all normal fields.
src, dest, check|report, requestSize, respSize, checkResp, quotaResp
Options:
- Treat access logs as separate and special. ensure that accesslogs have minimal impact on latency.
- Solve this with istio on istio. These access logs are eventually processed by a Mixer adapter.
Questions:
- for Report()s, it seems we care about different fields than check. is that correct? the "normal" in this issue description isn't quite clear.
- should logs generation itself be configurable (similar to envoy access logs config) ?
It seems like in the short term we could transition to something like: https://github.com/grpc-ecosystem/go-grpc-middleware/tree/master/logging. Augmenting it to be performant could be a nice contribution to the ecosystem.
Does slapping a sidecar on Mixer address this?