.. _envoy_api_file_envoy/data/tap/v2alpha/transport.proto:

Transport tap data
==================

Trace format for the tap transport socket extension. This dumps plain text read/write
sequences on a socket.

.. _envoy_api_msg_data.tap.v2alpha.Connection:

data.tap.v2alpha.Connection
---------------------------

`[data.tap.v2alpha.Connection proto] <https://github.com/envoyproxy/envoy/blob/v1.11.1/api/envoy/data/tap/v2alpha/transport.proto#L19>`_

Connection properties.

.. code-block:: json

  {
    "local_address": "{...}",
    "remote_address": "{...}"
  }

.. _envoy_api_field_data.tap.v2alpha.Connection.local_address:

local_address
  (:ref:`core.Address <envoy_api_msg_core.Address>`) Local address.
  
  
.. _envoy_api_field_data.tap.v2alpha.Connection.remote_address:

remote_address
  (:ref:`core.Address <envoy_api_msg_core.Address>`) Remote address.
  
  


.. _envoy_api_msg_data.tap.v2alpha.SocketEvent:

data.tap.v2alpha.SocketEvent
----------------------------

`[data.tap.v2alpha.SocketEvent proto] <https://github.com/envoyproxy/envoy/blob/v1.11.1/api/envoy/data/tap/v2alpha/transport.proto#L28>`_

Event in a socket trace.

.. code-block:: json

  {
    "timestamp": "{...}",
    "read": "{...}",
    "write": "{...}",
    "closed": "{...}"
  }

.. _envoy_api_field_data.tap.v2alpha.SocketEvent.timestamp:

timestamp
  (`Timestamp <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#timestamp>`_) Timestamp for event.
  
  
.. _envoy_api_field_data.tap.v2alpha.SocketEvent.read:

read
  (:ref:`data.tap.v2alpha.SocketEvent.Read <envoy_api_msg_data.tap.v2alpha.SocketEvent.Read>`) 
  Read or write with content as bytes string.
  
  
  Only one of :ref:`read <envoy_api_field_data.tap.v2alpha.SocketEvent.read>`, :ref:`write <envoy_api_field_data.tap.v2alpha.SocketEvent.write>`, :ref:`closed <envoy_api_field_data.tap.v2alpha.SocketEvent.closed>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.SocketEvent.write:

write
  (:ref:`data.tap.v2alpha.SocketEvent.Write <envoy_api_msg_data.tap.v2alpha.SocketEvent.Write>`) 
  Read or write with content as bytes string.
  
  
  Only one of :ref:`read <envoy_api_field_data.tap.v2alpha.SocketEvent.read>`, :ref:`write <envoy_api_field_data.tap.v2alpha.SocketEvent.write>`, :ref:`closed <envoy_api_field_data.tap.v2alpha.SocketEvent.closed>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.SocketEvent.closed:

closed
  (:ref:`data.tap.v2alpha.SocketEvent.Closed <envoy_api_msg_data.tap.v2alpha.SocketEvent.Closed>`) 
  Read or write with content as bytes string.
  
  
  Only one of :ref:`read <envoy_api_field_data.tap.v2alpha.SocketEvent.read>`, :ref:`write <envoy_api_field_data.tap.v2alpha.SocketEvent.write>`, :ref:`closed <envoy_api_field_data.tap.v2alpha.SocketEvent.closed>` may be set.
  
.. _envoy_api_msg_data.tap.v2alpha.SocketEvent.Read:

data.tap.v2alpha.SocketEvent.Read
---------------------------------

`[data.tap.v2alpha.SocketEvent.Read proto] <https://github.com/envoyproxy/envoy/blob/v1.11.1/api/envoy/data/tap/v2alpha/transport.proto#L33>`_

Data read by Envoy from the transport socket.

.. code-block:: json

  {
    "data": "{...}"
  }

.. _envoy_api_field_data.tap.v2alpha.SocketEvent.Read.data:

data
  (:ref:`data.tap.v2alpha.Body <envoy_api_msg_data.tap.v2alpha.Body>`) Binary data read.
  
  


.. _envoy_api_msg_data.tap.v2alpha.SocketEvent.Write:

data.tap.v2alpha.SocketEvent.Write
----------------------------------

`[data.tap.v2alpha.SocketEvent.Write proto] <https://github.com/envoyproxy/envoy/blob/v1.11.1/api/envoy/data/tap/v2alpha/transport.proto#L41>`_

Data written by Envoy to the transport socket.

.. code-block:: json

  {
    "data": "{...}",
    "end_stream": "..."
  }

.. _envoy_api_field_data.tap.v2alpha.SocketEvent.Write.data:

data
  (:ref:`data.tap.v2alpha.Body <envoy_api_msg_data.tap.v2alpha.Body>`) Binary data written.
  
  
.. _envoy_api_field_data.tap.v2alpha.SocketEvent.Write.end_stream:

end_stream
  (`bool <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Stream was half closed after this write.
  
  


.. _envoy_api_msg_data.tap.v2alpha.SocketEvent.Closed:

data.tap.v2alpha.SocketEvent.Closed
-----------------------------------

`[data.tap.v2alpha.SocketEvent.Closed proto] <https://github.com/envoyproxy/envoy/blob/v1.11.1/api/envoy/data/tap/v2alpha/transport.proto#L50>`_

The connection was closed.

.. code-block:: json

  {}





.. _envoy_api_msg_data.tap.v2alpha.SocketBufferedTrace:

data.tap.v2alpha.SocketBufferedTrace
------------------------------------

`[data.tap.v2alpha.SocketBufferedTrace proto] <https://github.com/envoyproxy/envoy/blob/v1.11.1/api/envoy/data/tap/v2alpha/transport.proto#L63>`_

Sequence of read/write events that constitute a buffered trace on a socket.

.. code-block:: json

  {
    "trace_id": "...",
    "connection": "{...}",
    "events": [],
    "read_truncated": "...",
    "write_truncated": "..."
  }

.. _envoy_api_field_data.tap.v2alpha.SocketBufferedTrace.trace_id:

trace_id
  (`uint64 <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Trace ID unique to the originating Envoy only. Trace IDs can repeat and should not be used
  for long term stable uniqueness. Matches connection IDs used in Envoy logs.
  
  
.. _envoy_api_field_data.tap.v2alpha.SocketBufferedTrace.connection:

connection
  (:ref:`data.tap.v2alpha.Connection <envoy_api_msg_data.tap.v2alpha.Connection>`) Connection properties.
  
  
.. _envoy_api_field_data.tap.v2alpha.SocketBufferedTrace.events:

events
  (:ref:`data.tap.v2alpha.SocketEvent <envoy_api_msg_data.tap.v2alpha.SocketEvent>`) Sequence of observed events.
  
  
.. _envoy_api_field_data.tap.v2alpha.SocketBufferedTrace.read_truncated:

read_truncated
  (`bool <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Set to true if read events were truncated due to the :ref:`max_buffered_rx_bytes
  <envoy_api_field_service.tap.v2alpha.OutputConfig.max_buffered_rx_bytes>` setting.
  
  
.. _envoy_api_field_data.tap.v2alpha.SocketBufferedTrace.write_truncated:

write_truncated
  (`bool <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Set to true if write events were truncated due to the :ref:`max_buffered_tx_bytes
  <envoy_api_field_service.tap.v2alpha.OutputConfig.max_buffered_tx_bytes>` setting.
  
  


.. _envoy_api_msg_data.tap.v2alpha.SocketStreamedTraceSegment:

data.tap.v2alpha.SocketStreamedTraceSegment
-------------------------------------------

`[data.tap.v2alpha.SocketStreamedTraceSegment proto] <https://github.com/envoyproxy/envoy/blob/v1.11.1/api/envoy/data/tap/v2alpha/transport.proto#L84>`_

A streamed socket trace segment. Multiple segments make up a full trace.

.. code-block:: json

  {
    "trace_id": "...",
    "connection": "{...}",
    "event": "{...}"
  }

.. _envoy_api_field_data.tap.v2alpha.SocketStreamedTraceSegment.trace_id:

trace_id
  (`uint64 <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Trace ID unique to the originating Envoy only. Trace IDs can repeat and should not be used
  for long term stable uniqueness. Matches connection IDs used in Envoy logs.
  
  
.. _envoy_api_field_data.tap.v2alpha.SocketStreamedTraceSegment.connection:

connection
  (:ref:`data.tap.v2alpha.Connection <envoy_api_msg_data.tap.v2alpha.Connection>`) Connection properties.
  
  
  
  Only one of :ref:`connection <envoy_api_field_data.tap.v2alpha.SocketStreamedTraceSegment.connection>`, :ref:`event <envoy_api_field_data.tap.v2alpha.SocketStreamedTraceSegment.event>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.SocketStreamedTraceSegment.event:

event
  (:ref:`data.tap.v2alpha.SocketEvent <envoy_api_msg_data.tap.v2alpha.SocketEvent>`) Socket event.
  
  
  
  Only one of :ref:`connection <envoy_api_field_data.tap.v2alpha.SocketStreamedTraceSegment.connection>`, :ref:`event <envoy_api_field_data.tap.v2alpha.SocketStreamedTraceSegment.event>` may be set.