.. _arch_overview_access_logs: Access logging ============== The :ref:`HTTP connection manager <arch_overview_http_conn_man>` and :ref:`tcp proxy <arch_overview_tcp_proxy>` supports extensible access logging with the following features: * Any number of access logs per connection manager or tcp proxy. * Customizable access log filters that allow different types of requests and responses to be written to different access logs. .. _arch_overview_access_log_filters: Access log filters ------------------ Envoy supports several built-in :ref:`access log filters<envoy_api_msg_config.filter.accesslog.v2.AccessLogFilter>` and :ref:`extension filters<envoy_api_field_config.filter.accesslog.v2.AccessLogFilter.extension_filter>` 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. Further reading --------------- * Access log :ref:`configuration <config_access_log>`. * File :ref:`access log sink <envoy_api_msg_config.accesslog.v2.FileAccessLog>`. * gRPC :ref:`Access Log Service (ALS) <envoy_api_msg_config.accesslog.v2.HttpGrpcAccessLogConfig>` sink.