Package io.vertx.core.spi

## Interface VertxMetricsFactory

- All Superinterfaces:
    `VertxServiceProvider`
  All Known Implementing Classes:
    `DropwizardVertxMetricsFactory`, `MicrometerMetricsFactory`

      public interface VertxMetricsFactory
      extends VertxServiceProvider

  A factory for the plugable metrics SPI.
  Author:
    Nick Scavelli

- - ### 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.
    `VertxMetrics` | `metrics​(VertxOptions options)` | Create a new `VertxMetrics` object.
    `default MetricsOptions` | `newOptions()` | Create an empty metrics options.
    `default MetricsOptions` | `newOptions​(JsonObject jsonObject)` | Create metrics options from the provided `jsonObject`.
    `default MetricsOptions` | `newOptions​(MetricsOptions options)` | Create metrics options from the provided `options`.

- - ### 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

    - #### metrics

          VertxMetrics metrics​(VertxOptions options)

      Create a new `VertxMetrics` object.

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

    - #### newOptions

          default MetricsOptions newOptions()

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

    - #### newOptions

          default MetricsOptions newOptions​(MetricsOptions options)

      Create metrics options from the provided `options`.

      Providers can override this method to provide a custom metrics options subclass that exposes custom configuration.

      It is used when a Vert.x instance is created with a `MetricsOptions` instance.

      Parameters:
        `options` - new metrics options
      Returns:
        new metrics options

    - #### newOptions

          default MetricsOptions newOptions​(JsonObject jsonObject)

      Create metrics options from the provided `jsonObject`.

      Providers can override this method to provide a custom metrics options subclass that exposes custom configuration.

      Parameters:
        `jsonObject` - json provided by the user
      Returns:
        new metrics options