@Test public void vm_vitals() { uaaMetricsEmitter.emitVmVitals(); Mockito.verify(statsDClient).gauge(eq("vitals.vm.cpu.count"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("vitals.vm.cpu.load"), geq(0l)); Mockito.verify(statsDClient).gauge(eq("vitals.vm.memory.total"), geq(134217728l)); Mockito.verify(statsDClient).gauge(eq("vitals.vm.memory.committed"), geq(1l)); Mockito.verify(statsDClient).gauge(eq("vitals.vm.memory.free"), geq(1l)); }
@Test public void perUrlGroup_request_metrics() throws Exception { Mockito.when(metricsUtils.getUaaMetrics(any())).thenReturn(uaaMetrics1); uaaMetricsEmitter.emitUrlGroupRequestMetrics(); Mockito.verify(statsDClient).gauge(eq("requests.ui.completed.count"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("requests.ui.completed.time"), geq(300l)); Mockito.verify(statsDClient).gauge(eq("requests.static-content.completed.count"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("requests.static-content.completed.time"), geq(23l)); }
@Test public void testResetNextBatchExpiry() throws Exception { client = spy(new MockClient(time, metadata)); setupWithTransactionState(null); accumulator.append(tp0, 0L, "key".getBytes(), "value".getBytes(), null, null, MAX_BLOCK_TIMEOUT); sender.run(time.milliseconds()); sender.run(time.milliseconds()); time.setCurrentTimeMs(time.milliseconds() + accumulator.getDeliveryTimeoutMs() + 1); sender.run(time.milliseconds()); InOrder inOrder = inOrder(client); inOrder.verify(client, atLeastOnce()).ready(any(), anyLong()); inOrder.verify(client, atLeastOnce()).newClientRequest(anyString(), any(), anyLong(), anyBoolean(), anyInt(), any()); inOrder.verify(client, atLeastOnce()).send(any(), anyLong()); inOrder.verify(client).poll(eq(0L), anyLong()); inOrder.verify(client).poll(eq(accumulator.getDeliveryTimeoutMs()), anyLong()); inOrder.verify(client).poll(geq(1L), anyLong()); }
@Test public void jvm_vitals() { uaaMetricsEmitter.emitJvmVitals(); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.cpu.load"), and(geq(0l), leq(100l))); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.thread.count"), and(gt(1l), leq(1000l))); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.heap.init"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.heap.committed"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.heap.used"), gt(0l)); //Mockito.verify(statsDClient).gauge(eq("vitals.jvm.heap.max"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.non-heap.init"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.non-heap.committed"), gt(0l)); Mockito.verify(statsDClient).gauge(eq("vitals.jvm.non-heap.used"), gt(0l)); //Mockito.verify(statsDClient).gauge(eq("vitals.jvm.non-heap.max"), gt(0l)); }
/** * Delegates call to {@link AdditionalMatchers#geq(float)}. */ default float geq(float value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(long)}. */ default long geq(long value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(int)}. */ default int geq(int value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(short)}. */ default short geq(short value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(Comparable)}. */ default <T extends Comparable<T>> T geq(T value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(double)}. */ default double geq(double value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(double)}. */ default double geq(double value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(float)}. */ default float geq(float value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(byte)}. */ default byte geq(byte value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(int)}. */ default int geq(int value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(Comparable)}. */ default <T extends Comparable<T>> T geq(T value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(byte)}. */ default byte geq(byte value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(long)}. */ default long geq(long value) { return AdditionalMatchers.geq(value); }
/** * Delegates call to {@link AdditionalMatchers#geq(short)}. */ default short geq(short value) { return AdditionalMatchers.geq(value); }
/** * Asserts that the NumOps and quantiles for a metric have been changed at * some point to a non-zero value. * * @param prefix of the metric * @param rb MetricsRecordBuilder with the metric */ public static void assertQuantileGauges(String prefix, MetricsRecordBuilder rb) { verify(rb).addGauge(eqName(info(prefix + "NumOps", "")), geq(0l)); for (Quantile q : MutableQuantiles.quantiles) { String nameTemplate = prefix + "%dthPercentileLatency"; int percentile = (int) (100 * q.quantile); verify(rb).addGauge( eqName(info(String.format(nameTemplate, percentile), "")), geq(0l)); } } }
/** * Asserts that the NumOps and quantiles for a metric have been changed at * some point to a non-zero value. * * @param prefix of the metric * @param rb MetricsRecordBuilder with the metric */ public static void assertQuantileGauges(String prefix, MetricsRecordBuilder rb) { verify(rb).addGauge(eqName(info(prefix + "NumOps", "")), geq(0l)); for (Quantile q : MutableQuantiles.quantiles) { String nameTemplate = prefix + "%dthPercentileLatency"; int percentile = (int) (100 * q.quantile); verify(rb).addGauge( eqName(info(String.format(nameTemplate, percentile), "")), geq(0l)); } } }