Thrift proxy

  • v2 API reference

  • This filter should be configured with the name

Cluster Protocol Options

Thrift connections to upstream hosts can be configured by adding an entry to the appropriate Cluster’s extension_protocol_options keyed by The ThriftProtocolOptions message describes the available options.

Thrift Request Metadata

The HEADER transport and TWITTER protocol support metadata. In particular, the Header transport supports informational key/value pairs and the Twitter protocol transmits tracing and request context data.

Header Transport Metadata

Header transport key/value pairs are available for routing as headers.

Twitter Protocol Metadata

Twitter protocol request contexts are converted into headers which are available for routing as headers. In addition, the following fields are presented as headers:

Client Identifier

The ClientId’s name field (nested in the RequestHeader client_id field) becomes the :client-id header.


The RequestHeader dest field becomes the :dest header.


Each Delegation from the RequestHeader delegations field is added as a header. The header name is the prefix :d: followed by the Delegation’s src. The value is the Delegation’s dst field.

Metadata Interoperability

Request metadata that is available for routing (see above) is automatically converted between wire formats when translation between downstream and upstream connections occurs. Twitter protocol request contexts, client id, destination, and delegations are therefore presented as Header transport key/value pairs, named as above. Similarly, Header transport key/value pairs are presented as Twitter protocol RequestContext values, unless they match the special names described above. For instance, a downstream Header transport request with the info key “:client-id” is translated to an upstream Twitter protocol request with a ClientId value.