= Cheatsheets

[[Match]]
== Match

++++
 A match for a value.
++++
'''

[cols=">25%,25%,50%"]
[frame="topbot"]
|===
^|Name | Type ^| Description
|[[alias]]`@alias`|`String`|+++
Set an alias that would replace the label value when it matches.
+++
|[[domain]]`@domain`|`link:enums.html#MetricsDomain[MetricsDomain]`|+++
Set the label domain, restricting this rule to a single domain.
+++
|[[label]]`@label`|`String`|+++
Set the label name. The match will apply to the values related to this key.
+++
|[[type]]`@type`|`link:enums.html#MatchType[MatchType]`|+++
Set the type of matching to apply.
+++
|[[value]]`@value`|`String`|+++
Set the matched value.
+++
|===

[[MicrometerMetricsOptions]]
== MicrometerMetricsOptions

++++
 Vert.x micrometer configuration.
 <p>
 It is required to set either <code>influxDbOptions</code>, <code>prometheusOptions</code> or <code>jmxMetricsOptions</code>
 (or, programmatically, <code>micrometerRegistry</code>) in order to actually report metrics.
++++
'''

[cols=">25%,25%,50%"]
[frame="topbot"]
|===
^|Name | Type ^| Description
|[[disabledMetricsCategories]]`@disabledMetricsCategories`|`Array of link:enums.html#MetricsDomain[MetricsDomain]`|+++
Sets metrics types that are disabled.
+++
|[[enabled]]`@enabled`|`Boolean`|+++
Set whether metrics will be enabled on the Vert.x instance. Metrics are not enabled by default.
+++
|[[influxDbOptions]]`@influxDbOptions`|`link:dataobjects.html#VertxInfluxDbOptions[VertxInfluxDbOptions]`|+++
Set InfluxDB options.
 Setting a registry backend option is mandatory in order to effectively report metrics.
+++
|[[jmxMetricsOptions]]`@jmxMetricsOptions`|`link:dataobjects.html#VertxJmxMetricsOptions[VertxJmxMetricsOptions]`|+++
Set JMX metrics options.
 Setting a registry backend option is mandatory in order to effectively report metrics.
+++
|[[jvmMetricsEnabled]]`@jvmMetricsEnabled`|`Boolean`|+++
Whether JVM metrics should be collected. Defaults to <code>false</code>.
+++
|[[labelMatches]]`@labelMatches`|`Array of link:dataobjects.html#Match[Match]`|+++
Set a list of rules for label matching.
+++
|[[labelMatchs]]`@labelMatchs`|`Array of link:dataobjects.html#Match[Match]`|+++
Add a rule for label matching.
+++
|[[labels]]`@labels`|`Array of link:enums.html#Label[Label]`|+++
Sets enabled labels. These labels can be fine-tuned later on using Micrometer's Meter filters (see http://micrometer.io/docs/concepts#_meter_filters)
+++
|[[prometheusOptions]]`@prometheusOptions`|`link:dataobjects.html#VertxPrometheusOptions[VertxPrometheusOptions]`|+++
Set Prometheus options.
 Setting a registry backend option is mandatory in order to effectively report metrics.
+++
|[[registryName]]`@registryName`|`String`|+++
Set a name for the metrics registry, so that a new registry will be created and associated with this name.
 If <code>registryName</code> is not provided (or null), a default registry will be used.
 If the same name is given to several Vert.x instances (within the same JVM), they will share the same registry.
+++
|===

[[VertxInfluxDbOptions]]
== VertxInfluxDbOptions

++++
 Vert.x InfluxDb micrometer configuration.
++++
'''

[cols=">25%,25%,50%"]
[frame="topbot"]
|===
^|Name | Type ^| Description
|[[batchSize]]`@batchSize`|`Number (int)`|+++
Maximum number of measurements sent per request to the InfluxDB server. When the maximum is reached, several requests are made.
 Default is 10000.
+++
|[[compressed]]`@compressed`|`Boolean`|+++
Activate or deactivate GZIP compression. It is activated by default.
+++
|[[connectTimeout]]`@connectTimeout`|`Number (int)`|+++
Connection timeout for InfluxDB server connections, in seconds. Default is 1 second.
+++
|[[db]]`@db`|`String`|+++
Database name used to store metrics. Default is "default".
+++
|[[enabled]]`@enabled`|`Boolean`|+++
Set true to enable InfluxDB reporting
+++
|[[numThreads]]`@numThreads`|`Number (int)`|+++
Number of threads to use by the push scheduler. Default is 2.
+++
|[[password]]`@password`|`String`|+++
Password used for authenticated connections
+++
|[[readTimeout]]`@readTimeout`|`Number (int)`|+++
Read timeout for InfluxDB server connections, in seconds. Default is 10 seconds.
+++
|[[retentionPolicy]]`@retentionPolicy`|`String`|+++
InfluxDB retention policy
+++
|[[step]]`@step`|`Number (int)`|+++
Push interval steps, in seconds. Default is 10 seconds.
+++
|[[uri]]`@uri`|`String`|+++
URI of the InfluxDB server. <i>Example: http://influx:8086</i>.
+++
|[[userName]]`@userName`|`String`|+++
Username used for authenticated connections
+++
|===

[[VertxJmxMetricsOptions]]
== VertxJmxMetricsOptions

++++
 Options for Prometheus metrics backend.
++++
'''

[cols=">25%,25%,50%"]
[frame="topbot"]
|===
^|Name | Type ^| Description
|[[domain]]`@domain`|`String`|+++
Set the JMX domain under which to publish metrics
+++
|[[enabled]]`@enabled`|`Boolean`|+++
Set true to enable Prometheus reporting
+++
|[[step]]`@step`|`Number (int)`|+++
Push interval steps, in seconds. Default is 10 seconds.
+++
|===

[[VertxPrometheusOptions]]
== VertxPrometheusOptions

++++
 Options for Prometheus metrics backend.
++++
'''

[cols=">25%,25%,50%"]
[frame="topbot"]
|===
^|Name | Type ^| Description
|[[embeddedServerEndpoint]]`@embeddedServerEndpoint`|`String`|+++
Set metrics endpoint. Use conjointly with the embedded server options. Defaults to <i>/metrics</i>.
+++
|[[embeddedServerOptions]]`@embeddedServerOptions`|`link:dataobjects.html#HttpServerOptions[HttpServerOptions]`|+++
HTTP server options for the embedded server
+++
|[[enabled]]`@enabled`|`Boolean`|+++
Set true to enable Prometheus reporting
+++
|[[publishQuantiles]]`@publishQuantiles`|`Boolean`|+++
Set true to publish histogram stats, necessary to compute quantiles.
 Note that it generates many new timeseries for stats, which is why it is deactivated by default.
+++
|[[startEmbeddedServer]]`@startEmbeddedServer`|`Boolean`|+++
When true, an embedded server will init to expose metrics with Prometheus format.
+++
|===

