old_mixer_repo icon indicating copy to clipboard operation
old_mixer_repo copied to clipboard

Mixer AccessLogs

Open mandarjog opened this issue 8 years ago • 2 comments

Mixer should emit access logs for every grpc request it serves.

  1. 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.
  2. AccessLog should contain all normal fields. src, dest, check|report, requestSize, respSize, checkResp, quotaResp

Options:

  1. Treat access logs as separate and special. ensure that accesslogs have minimal impact on latency.
  2. Solve this with istio on istio. These access logs are eventually processed by a Mixer adapter.

mandarjog avatar Sep 27 '17 21:09 mandarjog

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.

douglas-reid avatar Sep 28 '17 03:09 douglas-reid

Does slapping a sidecar on Mixer address this?

geeknoid avatar Nov 23 '17 06:11 geeknoid