Class OpenMetricsExporter
- java.lang.Object
-
- fish.payara.microprofile.metrics.writer.OpenMetricsExporter
-
- All Implemented Interfaces:
MetricExporter
- Direct Known Subclasses:
FilteredMetricsExporter
public class OpenMetricsExporter extends Object implements MetricExporter
WritesMetrics according to the OpenMetrics standard as defined in microprofile-metrics-spec-2.3.pdf. Theappendmethod code is organised so that its output is reflected in the use ofappendHELP(String, Metadata),appendTYPE(String, OpenMetricsType)andappendValue(String, Tag[], Number)which each emit a single output line.- Since:
- 5.202
- Author:
- Jan Bernitt
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classOpenMetricsExporter.OpenMetricsType
-
Field Summary
Fields Modifier and Type Field Description protected Set<String>helpWrittenByGlobalNameprotected PrintWriteroutprotected Stringscopeprotected Set<String>typeWrittenByGlobalName-
Fields inherited from interface fish.payara.microprofile.metrics.writer.MetricExporter
LOGGER
-
-
Constructor Summary
Constructors Modifier Constructor Description OpenMetricsExporter(Writer out)protectedOpenMetricsExporter(String scope, PrintWriter out, Set<String> typeWrittenByGlobalName, Set<String> helpWrittenByGlobalName)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidappendHELP(String globalName, org.eclipse.microprofile.metrics.Metadata metadata)protected voidappendTYPE(String globalName, OpenMetricsExporter.OpenMetricsType type)protected voidappendValue(String globalName, org.eclipse.microprofile.metrics.Tag[] tags, Number value)voidexport(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Counter counter, org.eclipse.microprofile.metrics.Metadata metadata)voidexport(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Gauge<?> gauge, org.eclipse.microprofile.metrics.Metadata metadata)voidexport(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Histogram histogram, org.eclipse.microprofile.metrics.Metadata metadata)voidexport(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Timer timer, org.eclipse.microprofile.metrics.Metadata metadata)voidexportComplete()MetricExporterin(String scope, boolean asNode)Creates a newMetricExporterwith the provided scope.protected StringroundValue(Number value)static StringsanitizeMetricName(String name)protected static StringtagsToString(org.eclipse.microprofile.metrics.Tag[] tags)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface fish.payara.microprofile.metrics.writer.MetricExporter
export, in
-
-
-
-
Method Detail
-
in
public MetricExporter in(String scope, boolean asNode)
Description copied from interface:MetricExporterCreates a newMetricExporterwith the provided scope.- Specified by:
inin interfaceMetricExporter- Parameters:
scope- the scope to use in the export- Returns:
- A new instance of this
MetricExporterwith the provided scope set, this instance is kept unchanged and will continue to use its current scope. Both, thisMetricExporterand the returned one will however share other internal state that is related to the output written so far.
-
exportComplete
public void exportComplete()
- Specified by:
exportCompletein interfaceMetricExporter
-
export
public void export(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Counter counter, org.eclipse.microprofile.metrics.Metadata metadata)- Specified by:
exportin interfaceMetricExporter
-
export
public void export(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Gauge<?> gauge, org.eclipse.microprofile.metrics.Metadata metadata)- Specified by:
exportin interfaceMetricExporter
-
export
public void export(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Histogram histogram, org.eclipse.microprofile.metrics.Metadata metadata)- Specified by:
exportin interfaceMetricExporter
-
export
public void export(org.eclipse.microprofile.metrics.MetricID metricID, org.eclipse.microprofile.metrics.Timer timer, org.eclipse.microprofile.metrics.Metadata metadata)- Specified by:
exportin interfaceMetricExporter
-
appendTYPE
protected void appendTYPE(String globalName, OpenMetricsExporter.OpenMetricsType type)
-
appendHELP
protected void appendHELP(String globalName, org.eclipse.microprofile.metrics.Metadata metadata)
-
appendValue
protected void appendValue(String globalName, org.eclipse.microprofile.metrics.Tag[] tags, Number value)
-
tagsToString
protected static String tagsToString(org.eclipse.microprofile.metrics.Tag[] tags)
-
-