傳輸監聽器資料 (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) 以位元組字串形式讀取或寫入內容。

只能設定 readwriteclosed 其中之一。

write

(data.tap.v3.SocketEvent.Write) 以位元組字串形式讀取或寫入內容。

只能設定 readwriteclosed 其中之一。

closed

(data.tap.v3.SocketEvent.Closed) 以位元組字串形式讀取或寫入內容。

只能設定 readwriteclosed 其中之一。

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) 連線屬性。

只能設定 connectionevent 其中之一。

event

(data.tap.v3.SocketEvent) Socket 事件。

只能設定 connectionevent 其中之一。