Search in sources :

Example 16 with Sample

use of io.prometheus.client.Collector.MetricFamilySamples.Sample in project instrumentation-java by census-instrumentation.

the class PrometheusExportUtilsTest method createMetricFamilySamples_WithNamespace.

@Test
public void createMetricFamilySamples_WithNamespace() {
    String namespace = "opencensus_";
    assertThat(PrometheusExportUtils.createMetricFamilySamples(LONG_METRIC, namespace)).isEqualTo(new MetricFamilySamples(namespace + METRIC_NAME, Type.COUNTER, METRIC_DESCRIPTION, Collections.singletonList(new Sample(namespace + METRIC_NAME, Arrays.asList("k1", "k2"), Arrays.asList("v1", "v2"), 123456789))));
}
Also used : Sample(io.prometheus.client.Collector.MetricFamilySamples.Sample) MetricFamilySamples(io.prometheus.client.Collector.MetricFamilySamples) Test(org.junit.Test)

Example 17 with Sample

use of io.prometheus.client.Collector.MetricFamilySamples.Sample in project instrumentation-java by census-instrumentation.

the class PrometheusExportUtilsTest method createMetricFamilySamples.

@Test
public void createMetricFamilySamples() {
    assertThat(PrometheusExportUtils.createMetricFamilySamples(LONG_METRIC, "")).isEqualTo(new MetricFamilySamples(METRIC_NAME, Type.COUNTER, METRIC_DESCRIPTION, Collections.singletonList(new Sample(METRIC_NAME, Arrays.asList("k1", "k2"), Arrays.asList("v1", "v2"), 123456789))));
    assertThat(PrometheusExportUtils.createMetricFamilySamples(SUMMARY_METRIC, "")).isEqualTo(new MetricFamilySamples(METRIC_NAME2, Type.SUMMARY, METRIC_DESCRIPTION, Arrays.asList(new Sample(METRIC_NAME2 + "_count", Collections.singletonList("k_3"), Collections.singletonList("v1"), 22), new Sample(METRIC_NAME2 + "_sum", Collections.singletonList("k_3"), Collections.singletonList("v1"), 74.8), new Sample(METRIC_NAME2, Arrays.asList("k_3", LABEL_NAME_QUANTILE), Arrays.asList("v1", "0.99"), 10.2))));
    assertThat(PrometheusExportUtils.createMetricFamilySamples(DISTRIBUTION_METRIC, "")).isEqualTo(new MetricFamilySamples(METRIC_NAME3, Type.HISTOGRAM, METRIC_DESCRIPTION, Arrays.asList(new Sample(METRIC_NAME3 + "_bucket", Arrays.asList("k1", "le"), Arrays.asList("v-3", "1.0"), 0), new Sample(METRIC_NAME3 + "_bucket", Arrays.asList("k1", "le"), Arrays.asList("v-3", "2.0"), 2), new Sample(METRIC_NAME3 + "_bucket", Arrays.asList("k1", "le"), Arrays.asList("v-3", "5.0"), 4), new Sample(METRIC_NAME3 + "_bucket", Arrays.asList("k1", "le"), Arrays.asList("v-3", "+Inf"), 5), new Sample(METRIC_NAME3 + "_count", Collections.singletonList("k1"), Collections.singletonList("v-3"), 5), new Sample(METRIC_NAME3 + "_sum", Collections.singletonList("k1"), Collections.singletonList("v-3"), 22.0))));
}
Also used : Sample(io.prometheus.client.Collector.MetricFamilySamples.Sample) MetricFamilySamples(io.prometheus.client.Collector.MetricFamilySamples) Test(org.junit.Test)

Example 18 with Sample

use of io.prometheus.client.Collector.MetricFamilySamples.Sample in project instrumentation-java by census-instrumentation.

the class PrometheusExportUtilsTest method createDescribableMetricFamilySamples_WithNamespace.

@Test
public void createDescribableMetricFamilySamples_WithNamespace() {
    String namespace1 = "myorg";
    assertThat(PrometheusExportUtils.createDescribableMetricFamilySamples(CUMULATIVE_METRIC_DESCRIPTOR, namespace1)).isEqualTo(new MetricFamilySamples(namespace1 + '_' + METRIC_NAME, Type.COUNTER, METRIC_DESCRIPTION, Collections.<Sample>emptyList()));
    String namespace2 = "opencensus/";
    assertThat(PrometheusExportUtils.createDescribableMetricFamilySamples(CUMULATIVE_METRIC_DESCRIPTOR, namespace2)).isEqualTo(new MetricFamilySamples("opencensus_" + METRIC_NAME, Type.COUNTER, METRIC_DESCRIPTION, Collections.<Sample>emptyList()));
}
Also used : Sample(io.prometheus.client.Collector.MetricFamilySamples.Sample) MetricFamilySamples(io.prometheus.client.Collector.MetricFamilySamples) Test(org.junit.Test)

Example 19 with Sample

use of io.prometheus.client.Collector.MetricFamilySamples.Sample in project promregator by promregator.

the class TextFormat004ParserTest method testSimpleWithEFormat.

@Test
public void testSimpleWithEFormat() {
    String textToParse = "# Minimalistic line:\n" + "\n" + "metric_without_labels 1.7560473e+07\n";
    TextFormat004Parser subject = new TextFormat004Parser(textToParse);
    HashMap<String, Collector.MetricFamilySamples> resultMap = subject.parse();
    Enumeration<Collector.MetricFamilySamples> result = Collections.enumeration(resultMap.values());
    // creating expected result
    LinkedList<Collector.MetricFamilySamples> expectedList = new LinkedList<>();
    List<Sample> samples = new LinkedList<>();
    Sample sample = new Sample("metric_without_labels", new LinkedList<String>(), new LinkedList<String>(), 1.7560473e+07);
    samples.add(sample);
    Collector.MetricFamilySamples expectedMFS = new Collector.MetricFamilySamples("metric_without_labels", Type.UNTYPED, null, samples);
    expectedList.add(expectedMFS);
    Enumeration<Collector.MetricFamilySamples> expected = Collections.enumeration(expectedList);
    // compare
    compareEMFS(expected, result);
}
Also used : Sample(io.prometheus.client.Collector.MetricFamilySamples.Sample) Collector(io.prometheus.client.Collector) MetricFamilySamples(io.prometheus.client.Collector.MetricFamilySamples) LinkedList(java.util.LinkedList) MetricFamilySamples(io.prometheus.client.Collector.MetricFamilySamples) Test(org.junit.Test)

Example 20 with Sample

use of io.prometheus.client.Collector.MetricFamilySamples.Sample in project promregator by promregator.

the class TextFormat004ParserTest method testSimpleNan.

@Test
public void testSimpleNan() {
    String textToParse = "# Minimalistic line:\n" + "\n" + "metric_without_labels Nan 123456789012345600\n";
    TextFormat004Parser subject = new TextFormat004Parser(textToParse);
    HashMap<String, Collector.MetricFamilySamples> resultMap = subject.parse();
    Enumeration<Collector.MetricFamilySamples> result = Collections.enumeration(resultMap.values());
    // compareEMFS does not properly work with NaN values
    // Thus, we have to check this explicitly here
    MetricFamilySamples mfs = result.nextElement();
    Assert.assertFalse(result.hasMoreElements());
    Assert.assertEquals("metric_without_labels", mfs.name);
    Assert.assertEquals(1, mfs.samples.size());
    Sample actualSample = mfs.samples.get(0);
    Assert.assertEquals("metric_without_labels", actualSample.name);
    Assert.assertTrue(Double.isNaN(actualSample.value));
}
Also used : Sample(io.prometheus.client.Collector.MetricFamilySamples.Sample) MetricFamilySamples(io.prometheus.client.Collector.MetricFamilySamples) Test(org.junit.Test)

Aggregations

Sample (io.prometheus.client.Collector.MetricFamilySamples.Sample)44 MetricFamilySamples (io.prometheus.client.Collector.MetricFamilySamples)34 Test (org.junit.Test)32 LinkedList (java.util.LinkedList)27 Collector (io.prometheus.client.Collector)18 ArrayList (java.util.ArrayList)4 HashMap (java.util.HashMap)4 Type (io.prometheus.client.Collector.Type)2 Collector.doubleToGoString (io.prometheus.client.Collector.doubleToGoString)2 VisibleForTesting (com.google.common.annotations.VisibleForTesting)1 Meter (com.netflix.spectator.api.Meter)1 Registry (com.netflix.spectator.api.Registry)1 Tag (com.netflix.spectator.api.Tag)1 LabelValue (io.opencensus.metrics.LabelValue)1 Distribution (io.opencensus.metrics.export.Distribution)1 BucketOptions (io.opencensus.metrics.export.Distribution.BucketOptions)1 ExplicitOptions (io.opencensus.metrics.export.Distribution.BucketOptions.ExplicitOptions)1 MetricDescriptor (io.opencensus.metrics.export.MetricDescriptor)1 Summary (io.opencensus.metrics.export.Summary)1 ValueAtPercentile (io.opencensus.metrics.export.Summary.Snapshot.ValueAtPercentile)1