Access logging
The HTTP connection manager, the tcp proxy and the thrift proxy support extensible access logging with the following features:
Any number of access logs per a connection stream.
Customizable access log filters that allow different types of requests and responses to be written to different access logs.
Downstream connection access logging can be enabled using listener access logs. The listener access logs complement HTTP request access logging and can be enabled separately and independently from filter access logs.
Access log filters
Envoy supports several built-in access log filters and extension filters that are registered at runtime.
Access logging sinks
Envoy supports pluggable access logging sinks. The currently supported sinks are:
File
Asynchronous IO flushing architecture. Access logging will never block the main network processing threads.
Customizable access log formats using predefined fields as well as arbitrary HTTP request and response headers.
gRPC
Envoy can send access log messages to a gRPC access logging service.
Stdout
Asynchronous IO flushing architecture. Access logging will never block the main network processing threads.
Customizable access log formats using predefined fields as well as arbitrary HTTP request and response headers.
Writes to the standard output of the process. It works in all platforms.
Stderr
Asynchronous IO flushing architecture. Access logging will never block the main network processing threads.
Customizable access log formats using predefined fields as well as arbitrary HTTP request and response headers.
Writes to the standard error of the process. It works in all platforms.
Further reading
Access log configuration.
File access log sink.
gRPC Access Log Service (ALS) sink.
OpenTelemetry (gRPC) LogsService
Stdout access log sink
Stderr access log sink