傳輸監聽器資料 (proto)
用於監聽器傳輸 Socket 擴展的追蹤格式。這會在 Socket 上傾印純文字讀取/寫入序列。
data.tap.v3.SocketEvent
[data.tap.v3.SocketEvent proto]
Socket 追蹤中的事件。
{
"timestamp": {...},
"read": {...},
"write": {...},
"closed": {...}
}
- timestamp
(Timestamp) 事件的時間戳記。
- read
(data.tap.v3.SocketEvent.Read) 以位元組字串形式讀取或寫入內容。
- write
(data.tap.v3.SocketEvent.Write) 以位元組字串形式讀取或寫入內容。
- closed
(data.tap.v3.SocketEvent.Closed) 以位元組字串形式讀取或寫入內容。
data.tap.v3.SocketEvent.Read
[data.tap.v3.SocketEvent.Read proto]
Envoy 從傳輸 Socket 讀取的資料。
{
"data": {...}
}
- data
(data.tap.v3.Body) 讀取的二進位資料。
data.tap.v3.SocketEvent.Write
[data.tap.v3.SocketEvent.Write proto]
Envoy 寫入至傳輸 Socket 的資料。
{
"data": {...},
"end_stream": ...
}
- data
(data.tap.v3.Body) 寫入的二進位資料。
- end_stream
(bool) 在這次寫入之後,串流已半關閉。
data.tap.v3.SocketEvent.Closed
[data.tap.v3.SocketEvent.Closed proto]
連線已關閉。
data.tap.v3.SocketBufferedTrace
[data.tap.v3.SocketBufferedTrace proto]
構成 Socket 上緩衝追蹤的讀取/寫入事件序列。
{
"trace_id": ...,
"connection": {...},
"events": [],
"read_truncated": ...,
"write_truncated": ...
}
- trace_id
(uint64) 僅針對原始 Envoy 的唯一追蹤 ID。追蹤 ID 可能會重複,不應用於長期穩定的唯一性。符合 Envoy 日誌中使用的連線 ID。
- connection
(data.tap.v3.Connection) 連線屬性。
- events
(repeated data.tap.v3.SocketEvent) 觀察到的事件序列。
- read_truncated
(bool) 如果由於 max_buffered_rx_bytes 設定而截斷讀取事件,則設定為 true。
- write_truncated
(bool) 如果由於 max_buffered_tx_bytes 設定而截斷寫入事件,則設定為 true。
data.tap.v3.SocketStreamedTraceSegment
[data.tap.v3.SocketStreamedTraceSegment proto]
串流 Socket 追蹤片段。多個片段組成完整的追蹤。
{
"trace_id": ...,
"connection": {...},
"event": {...}
}
- trace_id
(uint64) 僅針對原始 Envoy 的唯一追蹤 ID。追蹤 ID 可能會重複,不應用於長期穩定的唯一性。符合 Envoy 日誌中使用的連線 ID。
- connection
(data.tap.v3.Connection) 連線屬性。
只能設定 connection、event 其中之一。
- event
(data.tap.v3.SocketEvent) Socket 事件。
只能設定 connection、event 其中之一。