gRPC Access Log Service (ALS) (proto)¶
extensions.access_loggers.grpc.v3.HttpGrpcAccessLogConfig¶
[extensions.access_loggers.grpc.v3.HttpGrpcAccessLogConfig proto]
Configuration for the built-in envoy.access_loggers.http_grpc
AccessLog. This configuration will
populate StreamAccessLogsMessage.http_logs.
This extension has the qualified name envoy.access_loggers.http_grpc
Note
This extension is intended to be robust against untrusted downstream traffic. It assumes that the upstream is trusted.
Tip
This extension extends and can be used with the following extension category:
This extension must be configured with one of the following type URLs:
{
"common_config": {...},
"additional_request_headers_to_log": [],
"additional_response_headers_to_log": [],
"additional_response_trailers_to_log": []
}
- common_config
(extensions.access_loggers.grpc.v3.CommonGrpcAccessLogConfig, REQUIRED)
- additional_request_headers_to_log
(repeated string) Additional request headers to log in HTTPRequestProperties.request_headers.
- additional_response_headers_to_log
(repeated string) Additional response headers to log in HTTPResponseProperties.response_headers.
- additional_response_trailers_to_log
(repeated string) Additional response trailers to log in HTTPResponseProperties.response_trailers.
extensions.access_loggers.grpc.v3.TcpGrpcAccessLogConfig¶
[extensions.access_loggers.grpc.v3.TcpGrpcAccessLogConfig proto]
Configuration for the built-in envoy.access_loggers.tcp_grpc
type. This configuration will
populate StreamAccessLogsMessage.tcp_logs
.
This extension has the qualified name envoy.access_loggers.tcp_grpc
Note
This extension is intended to be robust against untrusted downstream traffic. It assumes that the upstream is trusted.
Tip
This extension extends and can be used with the following extension category:
This extension must be configured with one of the following type URLs:
{
"common_config": {...}
}
- common_config
(extensions.access_loggers.grpc.v3.CommonGrpcAccessLogConfig, REQUIRED)
extensions.access_loggers.grpc.v3.CommonGrpcAccessLogConfig¶
[extensions.access_loggers.grpc.v3.CommonGrpcAccessLogConfig proto]
Common configuration for gRPC access logs.
{
"log_name": ...,
"grpc_service": {...},
"transport_api_version": ...,
"buffer_flush_interval": {...},
"buffer_size_bytes": {...},
"filter_state_objects_to_log": [],
"grpc_stream_retry_policy": {...},
"custom_tags": []
}
- log_name
(string, REQUIRED) The friendly name of the access log to be returned in StreamAccessLogsMessage.Identifier. This allows the access log server to differentiate between different access logs coming from the same Envoy.
- grpc_service
(config.core.v3.GrpcService, REQUIRED) The gRPC service for the access log service.
- transport_api_version
(config.core.v3.ApiVersion) API version for access logs service transport protocol. This describes the access logs service gRPC endpoint and version of messages used on the wire.
- buffer_flush_interval
(Duration) Interval for flushing access logs to the gRPC stream. Logger will flush requests every time this interval is elapsed, or when batch size limit is hit, whichever comes first. Defaults to 1 second.
- buffer_size_bytes
(UInt32Value) Soft size limit in bytes for access log entries buffer. Logger will buffer requests until this limit it hit, or every time flush interval is elapsed, whichever comes first. Setting it to zero effectively disables the batching. Defaults to 16384.
- filter_state_objects_to_log
(repeated string) Additional filter state objects to log in filter_state_objects. Logger will call
FilterState::Object::serializeAsProto
to serialize the filter state object.
- grpc_stream_retry_policy
(config.core.v3.RetryPolicy) Sets the retry policy when the establishment of a gRPC stream fails. If the stream succeeds at least once in establishing itself, no retry will be performed no matter what gRPC status is received. Note that only num_retries will be used in this configuration. This feature is used only when you are using Envoy gRPC client.
- custom_tags
(repeated type.tracing.v3.CustomTag) A list of custom tags with unique tag name to create tags for the logs.