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

HTTP tap data
=============


.. _envoy_api_msg_data.tap.v2alpha.HttpBufferedTrace:

data.tap.v2alpha.HttpBufferedTrace
----------------------------------

`[data.tap.v2alpha.HttpBufferedTrace proto] <https://github.com/envoyproxy/envoy/blob/v1.14.4/api/envoy/data/tap/v2alpha/http.proto#L17>`_

A fully buffered HTTP trace message.

.. code-block:: json

  {
    "request": "{...}",
    "response": "{...}"
  }

.. _envoy_api_field_data.tap.v2alpha.HttpBufferedTrace.request:

request
  (:ref:`data.tap.v2alpha.HttpBufferedTrace.Message <envoy_api_msg_data.tap.v2alpha.HttpBufferedTrace.Message>`) Request message.
  
  
.. _envoy_api_field_data.tap.v2alpha.HttpBufferedTrace.response:

response
  (:ref:`data.tap.v2alpha.HttpBufferedTrace.Message <envoy_api_msg_data.tap.v2alpha.HttpBufferedTrace.Message>`) Response message.
  
  
.. _envoy_api_msg_data.tap.v2alpha.HttpBufferedTrace.Message:

data.tap.v2alpha.HttpBufferedTrace.Message
------------------------------------------

`[data.tap.v2alpha.HttpBufferedTrace.Message proto] <https://github.com/envoyproxy/envoy/blob/v1.14.4/api/envoy/data/tap/v2alpha/http.proto#L19>`_

HTTP message wrapper.

.. code-block:: json

  {
    "headers": [],
    "body": "{...}",
    "trailers": []
  }

.. _envoy_api_field_data.tap.v2alpha.HttpBufferedTrace.Message.headers:

headers
  (:ref:`core.HeaderValue <envoy_api_msg_core.HeaderValue>`) Message headers.
  
  
.. _envoy_api_field_data.tap.v2alpha.HttpBufferedTrace.Message.body:

body
  (:ref:`data.tap.v2alpha.Body <envoy_api_msg_data.tap.v2alpha.Body>`) Message body.
  
  
.. _envoy_api_field_data.tap.v2alpha.HttpBufferedTrace.Message.trailers:

trailers
  (:ref:`core.HeaderValue <envoy_api_msg_core.HeaderValue>`) Message trailers.
  
  



.. _envoy_api_msg_data.tap.v2alpha.HttpStreamedTraceSegment:

data.tap.v2alpha.HttpStreamedTraceSegment
-----------------------------------------

`[data.tap.v2alpha.HttpStreamedTraceSegment proto] <https://github.com/envoyproxy/envoy/blob/v1.14.4/api/envoy/data/tap/v2alpha/http.proto#L39>`_

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

.. code-block:: json

  {
    "trace_id": "...",
    "request_headers": "{...}",
    "request_body_chunk": "{...}",
    "request_trailers": "{...}",
    "response_headers": "{...}",
    "response_body_chunk": "{...}",
    "response_trailers": "{...}"
  }

.. _envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.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.
  
  
.. _envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_headers:

request_headers
  (:ref:`core.HeaderMap <envoy_api_msg_core.HeaderMap>`) Request headers.
  
  
  
  Only one of :ref:`request_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_headers>`, :ref:`request_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_body_chunk>`, :ref:`request_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_trailers>`, :ref:`response_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_headers>`, :ref:`response_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_body_chunk>`, :ref:`response_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_trailers>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_body_chunk:

request_body_chunk
  (:ref:`data.tap.v2alpha.Body <envoy_api_msg_data.tap.v2alpha.Body>`) Request body chunk.
  
  
  
  Only one of :ref:`request_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_headers>`, :ref:`request_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_body_chunk>`, :ref:`request_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_trailers>`, :ref:`response_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_headers>`, :ref:`response_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_body_chunk>`, :ref:`response_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_trailers>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_trailers:

request_trailers
  (:ref:`core.HeaderMap <envoy_api_msg_core.HeaderMap>`) Request trailers.
  
  
  
  Only one of :ref:`request_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_headers>`, :ref:`request_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_body_chunk>`, :ref:`request_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_trailers>`, :ref:`response_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_headers>`, :ref:`response_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_body_chunk>`, :ref:`response_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_trailers>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_headers:

response_headers
  (:ref:`core.HeaderMap <envoy_api_msg_core.HeaderMap>`) Response headers.
  
  
  
  Only one of :ref:`request_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_headers>`, :ref:`request_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_body_chunk>`, :ref:`request_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_trailers>`, :ref:`response_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_headers>`, :ref:`response_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_body_chunk>`, :ref:`response_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_trailers>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_body_chunk:

response_body_chunk
  (:ref:`data.tap.v2alpha.Body <envoy_api_msg_data.tap.v2alpha.Body>`) Response body chunk.
  
  
  
  Only one of :ref:`request_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_headers>`, :ref:`request_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_body_chunk>`, :ref:`request_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_trailers>`, :ref:`response_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_headers>`, :ref:`response_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_body_chunk>`, :ref:`response_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_trailers>` may be set.
  
.. _envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_trailers:

response_trailers
  (:ref:`core.HeaderMap <envoy_api_msg_core.HeaderMap>`) Response trailers.
  
  
  
  Only one of :ref:`request_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_headers>`, :ref:`request_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_body_chunk>`, :ref:`request_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.request_trailers>`, :ref:`response_headers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_headers>`, :ref:`response_body_chunk <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_body_chunk>`, :ref:`response_trailers <envoy_api_field_data.tap.v2alpha.HttpStreamedTraceSegment.response_trailers>` may be set.