当前位置: 首页>>代码示例>>Java>>正文


Java Quantile类代码示例

本文整理汇总了Java中org.apache.hadoop.metrics2.util.Quantile的典型用法代码示例。如果您正苦于以下问题:Java Quantile类的具体用法?Java Quantile怎么用?Java Quantile使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Quantile类属于org.apache.hadoop.metrics2.util包,在下文中一共展示了Quantile类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: assertQuantileGauges

import org.apache.hadoop.metrics2.util.Quantile; //导入依赖的package包/类
/**
 * 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));
  }
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:19,代码来源:MetricsAsserts.java

示例2: testMutableQuantilesError

import org.apache.hadoop.metrics2.util.Quantile; //导入依赖的package包/类
/**
 * Ensure that quantile estimates from {@link MutableQuantiles} are within
 * specified error bounds.
 */
@Test(timeout = 30000)
public void testMutableQuantilesError() throws Exception {
  MetricsRecordBuilder mb = mockMetricsRecordBuilder();
  MetricsRegistry registry = new MetricsRegistry("test");
  // Use a 5s rollover period
  MutableQuantiles quantiles = registry.newQuantiles("foo", "stat", "Ops",
      "Latency", 5);
  // Push some values in and wait for it to publish
  long start = System.nanoTime() / 1000000;
  for (long i = 1; i <= 1000; i++) {
    quantiles.add(i);
    quantiles.add(1001 - i);
  }
  long end = System.nanoTime() / 1000000;

  Thread.sleep(6000 - (end - start));

  registry.snapshot(mb, false);

  // Print out the snapshot
  Map<Quantile, Long> previousSnapshot = quantiles.previousSnapshot;
  for (Entry<Quantile, Long> item : previousSnapshot.entrySet()) {
    System.out.println(String.format("Quantile %.2f has value %d",
        item.getKey().quantile, item.getValue()));
  }

  // Verify the results are within our requirements
  verify(mb).addGauge(
      info("FooNumOps", "Number of ops for stat with 5s interval"),
      (long) 2000);
  Quantile[] quants = MutableQuantiles.quantiles;
  String name = "Foo%dthPercentileLatency";
  String desc = "%d percentile latency with 5 second interval for stat";
  for (Quantile q : quants) {
    int percentile = (int) (100 * q.quantile);
    int error = (int) (1000 * q.error);
    String n = String.format(name, percentile);
    String d = String.format(desc, percentile);
    long expected = (long) (q.quantile * 1000);
    verify(mb).addGauge(eq(info(n, d)), leq(expected + error));
    verify(mb).addGauge(eq(info(n, d)), geq(expected - error));
  }
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:48,代码来源:TestMutableMetrics.java


注:本文中的org.apache.hadoop.metrics2.util.Quantile类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。