public DimensionStats(String name, long updateDurationInSec) { this.name = name; this.dimensionSumLabel = name + "_sum"; this.dimensionCountLabel = name + "_count"; Builder summaryBuilder = Summary.build().name(name).help("-"); for (int i = 0; i < QUANTILES.length; i++) { summaryBuilder.quantile(QUANTILES[i], 0.01); } this.summary = summaryBuilder.maxAgeSeconds(updateDurationInSec).create(); try { defaultRegistry.register(summary); } catch (IllegalArgumentException ie) { // it only happens in test-cases when try to register summary multiple times in registry log.warn("{} is already registred {}", name, ie.getMessage()); } }
protected void createAssertionCollector(){ if (!collectAssertions){ return; } String[] labelNames = new String[]{}; if (SampleEvent.getVarCount() > 0) { labelNames = this.combineAssertionLabelsWithSampleVars(); }else { labelNames = this.assertionConfig.getLabels(); } if(this.getSaveConfig().getAssertionClass().equals(Summary.class)) this.assertionsCollector = Summary.build().name("jmeter_assertions_total").help("Counter for assertions") .labelNames(labelNames).quantile(0.5, 0.1).quantile(0.99, 0.1) .create().register(CollectorRegistry.defaultRegistry); else if(this.getSaveConfig().getAssertionClass().equals(Counter.class)) this.assertionsCollector = Counter.build().name("jmeter_assertions_total").help("Counter for assertions") .labelNames(labelNames).create().register(CollectorRegistry.defaultRegistry); }
.help("Summary for Sample Latency") .labelNames(labelNames) .quantile(0.5, 0.1) .quantile(0.99, 0.1) .create() .register(CollectorRegistry.defaultRegistry); .help("Summary for sample latency(TTFB) in seconds") .labelNames(labelNames) .quantile(0.5, 0.1) .quantile(0.99, 0.1) .create() .register(CollectorRegistry.defaultRegistry); .help("Summary for sample duration in seconds") .labelNames(labelNames) .quantile(0.5, 0.1) .quantile(0.99, 0.1) .create() .register(CollectorRegistry.defaultRegistry); .help("Summary for sample idle time in seconds") .labelNames(labelNames) .quantile(0.5, 0.1) .quantile(0.99, 0.1) .create() .register(CollectorRegistry.defaultRegistry); .help("Summary for sample connect time in seconds")
public PrometheusSummary(Builder builder, SummaryConfiguration configuration) { builder.name(configuration.getName()) .help(configuration.getDescription()) .labelNames(configuration.getLabels()); final List<QuantileConfiguration> quantiles = configuration.getQuantiles(); if(quantiles != null) { quantiles.forEach(q -> builder.quantile(q.getQuantile(), q.getError())); } final Integer ageBuckets = configuration.getAgeBuckets(); if(ageBuckets != null) { builder.ageBuckets(ageBuckets); } final Long maxAgesSeconds = configuration.getMaxAgeSeconds(); if(maxAgesSeconds != null) { builder.maxAgeSeconds(maxAgesSeconds); } this.summary = builder.create(); }