Example #1
0
  @Test
  public void getSortedProbes_whenNoChange() {
    SortedProbesInstances instances1 = metricsRegistry.getSortedProbeInstances();

    SortedProbesInstances instances2 = metricsRegistry.getSortedProbeInstances();

    assertSame(instances1, instances2);
  }
Example #2
0
  @Test
  public void getSortedProbes_whenProbeAdded() {
    SortedProbesInstances instances1 = metricsRegistry.getSortedProbeInstances();

    registerLongMetric("foo", 10);

    SortedProbesInstances instances2 = metricsRegistry.getSortedProbeInstances();

    assertEquals(instances1.modCount + 1, instances2.modCount);
  }
Example #3
0
  @Before
  public void setup() {
    metricsRegistry =
        new MetricsRegistryImpl(Logger.getLogger(MetricsRegistryImpl.class), ProbeLevel.INFO);

    for (String name : metricsRegistry.getNames()) {
      ProbeInstance probeInstance = metricsRegistry.getProbeInstance(name);
      if (probeInstance != null && probeInstance.source != null) {
        metricsRegistry.deregister(probeInstance.source);
      }
    }
  }
Example #4
0
 ProbeInstance getProbeInstance() {
   ProbeInstance probeInstance = this.probeInstance;
   if (probeInstance == null) {
     probeInstance = metricsRegistry.getProbeInstance(name);
     this.probeInstance = probeInstance;
   }
   return probeInstance;
 }
Example #5
0
 private void registerDoubleMetric(String name, final int value) {
   metricsRegistry.register(
       this,
       name,
       ProbeLevel.INFO,
       new DoubleProbeFunction<RenderTest>() {
         @Override
         public double get(RenderTest source) throws Exception {
           return value;
         }
       });
 }
Example #6
0
  @Test
  public void whenDoubleProbeFunctions() {
    ProbeRenderer renderer = mock(ProbeRenderer.class);

    registerDoubleMetric("foo", 10);
    registerDoubleMetric("bar", 20);

    metricsRegistry.render(renderer);

    verify(renderer).start();
    verify(renderer).renderDouble("foo", 10);
    verify(renderer).renderDouble("bar", 20);
    verify(renderer).finish();
    verifyNoMoreInteractions(renderer);
  }
Example #7
0
  @Test
  public void whenException() {
    ProbeRenderer renderer = mock(ProbeRenderer.class);

    final ExpectedRuntimeException ex = new ExpectedRuntimeException();

    metricsRegistry.register(
        this,
        "foo",
        ProbeLevel.MANDATORY,
        new LongProbeFunction<RenderTest>() {
          @Override
          public long get(RenderTest source) throws Exception {
            throw ex;
          }
        });

    metricsRegistry.render(renderer);

    verify(renderer).start();
    verify(renderer).renderException("foo", ex);
    verify(renderer).finish();
    verifyNoMoreInteractions(renderer);
  }
Example #8
0
 @Test(expected = NullPointerException.class)
 public void whenCalledWithNullRenderer() {
   metricsRegistry.render(null);
 }
Example #9
0
 void register(MetricsRegistryImpl metricsRegistry, Object source, String namePrefix) {
   String name = getName(namePrefix);
   metricsRegistry.registerInternal(source, name, probe.level(), this);
 }