.. _envoy_v3_api_file_envoy/config/trace/v3/dynamic_ot.proto:

Dynamically loadable OpenTracing tracer (proto)
===============================================






.. _envoy_v3_api_msg_config.trace.v3.DynamicOtConfig:

config.trace.v3.DynamicOtConfig
-------------------------------


:repo:`[config.trace.v3.DynamicOtConfig proto] <api/envoy/config/trace/v3/dynamic_ot.proto#L26>`

DynamicOtConfig is used to dynamically load a tracer from a shared library
that implements the `OpenTracing dynamic loading API
<https://github.com/opentracing/opentracing-cpp>`_.

.. _extension_envoy.tracers.dynamic_ot:

This extension has the qualified name ``envoy.tracers.dynamic_ot``


.. note::
  

  This extension has an unknown security posture and should only be
  used in deployments where both the downstream and upstream are
  trusted.

.. tip::
  This extension extends and can be used with the following extension category:


  - :ref:`envoy.tracers <extension_category_envoy.tracers>`



  This extension must be configured with one of the following type URLs:



  - :ref:`type.googleapis.com/envoy.config.trace.v3.DynamicOtConfig <envoy_v3_api_msg_config.trace.v3.DynamicOtConfig>`




.. code-block:: json
  :force:

  {
    "library": ...,
    "config": {...}
  }

.. _envoy_v3_api_field_config.trace.v3.DynamicOtConfig.library:


library
  (`string <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_, *REQUIRED*) Dynamic library implementing the `OpenTracing API
  <https://github.com/opentracing/opentracing-cpp>`_.


.. _envoy_v3_api_field_config.trace.v3.DynamicOtConfig.config:


config
  (`Struct <https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct>`_) The configuration to use when creating a tracer from the given dynamic
  library.