brgsousa
brgsousa

Reputation: 333

Istio/Envoy access logs to a persistent volume

How can Istio/Envoy be configured to keep writing access logs (ingress) to files in a persistent volume?Different pods responding to a same hostname (example.com) would be writen to the same file. I think it would be something defined in Gateway YAML file or VirtualService YAML file.

Upvotes: 0

Views: 1043

Answers (1)

acid_fuji
acid_fuji

Reputation: 6853

This can be achieved by combination of settings up the EnvoyFilter configuration to selectively enable access logs at gateways and use custom-bootstrap-config:

  1. First you would need to setup custom bootstrap configuration that will container your user-volumes and volume mounts. This config later on can be applied with kubectl patch as described here.

    References: https://github.com/istio/istio/issues/28302

  2. The next step would to use EnvoyFilter configuration to selectively enable access logs at gateways as described in [Tracing and Access Log](Use EnvoyFilter configuration to selectively enable access logs at gateways). By default logs are directed to /dev/stdout. This has to be change appropriately to match the volume you configured in the step 1 with custom bootstrap config.

    References: https://github.com/istio/istio/wiki/EnvoyFilter-Samples#tracing-and-access-logging

Upvotes: 2

Related Questions