gRPC Access Log Service (ALS)

service.accesslog.v3.StreamAccessLogsResponse

[service.accesslog.v3.StreamAccessLogsResponse proto]

Empty response for the StreamAccessLogs API. Will never be sent. See below.

{}

service.accesslog.v3.StreamAccessLogsMessage

[service.accesslog.v3.StreamAccessLogsMessage proto]

Stream message for the StreamAccessLogs API. Envoy will open a stream to the server and stream access logs without ever expecting a response.

{
  "identifier": "{...}",
  "http_logs": "{...}",
  "tcp_logs": "{...}"
}
identifier

(service.accesslog.v3.StreamAccessLogsMessage.Identifier) Identifier data that will only be sent in the first message on the stream. This is effectively structured metadata and is a performance optimization.

http_logs

(service.accesslog.v3.StreamAccessLogsMessage.HTTPAccessLogEntries) Batches of log entries of a single type. Generally speaking, a given stream should only ever include one type of log entry.

Precisely one of http_logs, tcp_logs must be set.

tcp_logs

(service.accesslog.v3.StreamAccessLogsMessage.TCPAccessLogEntries) Batches of log entries of a single type. Generally speaking, a given stream should only ever include one type of log entry.

Precisely one of http_logs, tcp_logs must be set.

service.accesslog.v3.StreamAccessLogsMessage.Identifier

[service.accesslog.v3.StreamAccessLogsMessage.Identifier proto]

{
  "node": "{...}",
  "log_name": "..."
}
node

(config.core.v3.Node, REQUIRED) The node sending the access log messages over the stream.

log_name

(string, REQUIRED) The friendly name of the log configured in CommonGrpcAccessLogConfig.

service.accesslog.v3.StreamAccessLogsMessage.HTTPAccessLogEntries

[service.accesslog.v3.StreamAccessLogsMessage.HTTPAccessLogEntries proto]

Wrapper for batches of HTTP access log entries.

{
  "log_entry": []
}
log_entry

(data.accesslog.v3.HTTPAccessLogEntry, REQUIRED)

service.accesslog.v3.StreamAccessLogsMessage.TCPAccessLogEntries

[service.accesslog.v3.StreamAccessLogsMessage.TCPAccessLogEntries proto]

Wrapper for batches of TCP access log entries.

{
  "log_entry": []
}
log_entry

(data.accesslog.v3.TCPAccessLogEntry, REQUIRED)