Package io.vertx.core.spi

## Interface VertxTracerFactory

- All Superinterfaces:
    `VertxServiceProvider`
  All Known Implementing Classes:
    `OpenTelemetryTracingFactory`, `OpenTracingTracerFactory`, `ZipkinTracerFactory`

      public interface VertxTracerFactory
      extends VertxServiceProvider

  A factory for the plug-able tracing SPI.
  Author:
    Julien Viet

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static VertxTracerFactory` | `NOOP` | Noop tracer factory, it can be useful for disabling metrics, e.g.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default void` | `init​(io.vertx.core.internal.VertxBootstrap bootstrap)` | Let the provider initialize the Vert.x builder.
    `default TracingOptions` | `newOptions()` | Create an empty tracing options.
    `default TracingOptions` | `newOptions​(JsonObject jsonObject)` | Create tracing options from the provided `jsonObject`.
    `VertxTracer` | `tracer​(TracingOptions options)` | Create a new `VertxTracer` object.

- - ### Field Detail

    - #### NOOP

          static final VertxTracerFactory NOOP

      Noop tracer factory, it can be useful for disabling metrics, e.g. `new VertxOptions().setTracingOptions(new TracingOptions().setFactory(VertxTracerFactory.NOOP))`

  - ### Method Detail

    - #### init

          default void init​(io.vertx.core.internal.VertxBootstrap bootstrap)

      Description copied from interface: `VertxServiceProvider`
      Let the provider initialize the Vert.x builder.
      Specified by:
        `init` in interface `VertxServiceProvider`
      Parameters:
        `bootstrap` - the builder

    - #### tracer

          VertxTracer tracer​(TracingOptions options)

      Create a new `VertxTracer` object.

      No specific thread and context can be expected when this method is called.
      Parameters:
        `options` - the metrics configuration option
      Returns:
        the tracing implementation

    - #### newOptions

          default TracingOptions newOptions()

      Create an empty tracing options. Providers can override this method to provide a custom tracing options subclass that exposes custom configuration.
      Returns:
        new tracing options

    - #### newOptions

          default TracingOptions newOptions​(JsonObject jsonObject)

      Create tracing options from the provided `jsonObject`. Providers can override this method to provide a custom tracing options subclass that exposes custom configuration.
      Parameters:
        `jsonObject` - json provided by the user
      Returns:
        new tracing options