public void Can_count() { var meter = _metrics.Meter("MeterTests.Can_count"); meter.Mark(3); Assert.AreEqual(3, meter.Count); }
static void Main(string[] args) { var db1Metrics = new MetricRegistry(); var reporter = ConsoleReporter.ForRegistry(db1Metrics).build(); var meter = db1Metrics.Meter("testMeter"); var randomHist = db1Metrics.Histogram("testHist"); //var machineMetrics = MachineMetrics.Create(MachineMetricsCategory.All); //db1Metrics.Register("MachineMetrics", machineMetrics); //reporter.Start(1, TimeUnit.Seconds); CsvReporter creporter = CsvReporter.forRegistry(db1Metrics).build("c:\\merchlog"); //creporter.Start(1, TimeUnit.Seconds); Graphite sender = new Graphite("ttolley-lap3", 2003); GraphiteReporter greporter = GraphiteReporter.ForRegistry(db1Metrics).Build(sender); greporter.Start(10, TimeUnit.Seconds); //var docsTimedCounterPerSec = db1Metrics.TimedCounter("db1", "docs new indexed/sec", "new Indexed Documents"); int i = 0; db1Metrics.Gauge <int>("testGauge", () => i); Random r = new Random(); var counter = db1Metrics.Counter("testCounter"); for (; i < 10000; i++) { meter.Mark(); counter.Increment(i); randomHist.Update(r.Next(101)); Thread.Sleep(100); } Console.WriteLine("Done counting"); for (i = 0; i < 10; i++) { Thread.Sleep(60000); } //Console.WriteLine(docsTimedCounterPerSec.CurrentValue); /*var RequestsPerSecondHistogram = db1Metrics.Histogram("db1.Request Per Second Histogram"); * for (int i = 0; i < 100; i++) * { * RequestsPerSecondCounter.Mark(); * RequestsPerSecondHistogram.Update((long)RequestsPerSecondCounter.CurrentValue); * Thread.Sleep(10); * } * StringBuilder sb = new StringBuilder(); * double[] res; * var perc = RequestsPerSecondHistogram.Percentiles(0.5, 0.75, 0.95, 0.98, 0.99, 0.999); * res = perc; * RequestsPerSecondHistogram.LogJson(sb,perc); * Console.WriteLine(sb); * Console.WriteLine(RequestsPerSecondHistogram.Percentiles(0.5, 0.75, 0.95, 0.98, 0.99, 0.999)); * // RequestsPerSecondHistogram.Update((long)documentDatabase.WorkContext.MetricsCounters.RequestsPerSecondCounter.CurrentValue); //?? */ }
static void Main(string[] args) { var db1Metrics = new MetricRegistry(); var reporter = ConsoleReporter.ForRegistry(db1Metrics).build(); var meter = db1Metrics.Meter("testMeter"); var randomHist = db1Metrics.Histogram("testHist"); //var machineMetrics = MachineMetrics.Create(MachineMetricsCategory.All); //db1Metrics.Register("MachineMetrics", machineMetrics); //reporter.Start(1, TimeUnit.Seconds); CsvReporter creporter = CsvReporter.forRegistry(db1Metrics).build("c:\\merchlog"); //creporter.Start(1, TimeUnit.Seconds); Graphite sender = new Graphite("ttolley-lap3", 2003); GraphiteReporter greporter = GraphiteReporter.ForRegistry(db1Metrics).Build(sender); greporter.Start(10, TimeUnit.Seconds); //var docsTimedCounterPerSec = db1Metrics.TimedCounter("db1", "docs new indexed/sec", "new Indexed Documents"); int i = 0; db1Metrics.Gauge<int>("testGauge", () => i); Random r = new Random(); var counter = db1Metrics.Counter("testCounter"); for (; i < 10000; i++) { meter.Mark(); counter.Increment(i); randomHist.Update(r.Next(101)); Thread.Sleep(100); } Console.WriteLine("Done counting"); for(i=0;i<10;i++) { Thread.Sleep(60000); } //Console.WriteLine(docsTimedCounterPerSec.CurrentValue); /*var RequestsPerSecondHistogram = db1Metrics.Histogram("db1.Request Per Second Histogram"); for (int i = 0; i < 100; i++) { RequestsPerSecondCounter.Mark(); RequestsPerSecondHistogram.Update((long)RequestsPerSecondCounter.CurrentValue); Thread.Sleep(10); } StringBuilder sb = new StringBuilder(); double[] res; var perc = RequestsPerSecondHistogram.Percentiles(0.5, 0.75, 0.95, 0.98, 0.99, 0.999); res = perc; RequestsPerSecondHistogram.LogJson(sb,perc); Console.WriteLine(sb); Console.WriteLine(RequestsPerSecondHistogram.Percentiles(0.5, 0.75, 0.95, 0.98, 0.99, 0.999)); // RequestsPerSecondHistogram.Update((long)documentDatabase.WorkContext.MetricsCounters.RequestsPerSecondCounter.CurrentValue); //?? */ }
public override IInterceptor CreateInterceptor(IProxyRequest request) { if (meter == null) { MetricName metricName = Utils.BuildName(request, Name, Absolute); MetricRegistry registry = request.Context.Kernel.Get <MetricRegistry>(); meter = registry.Meter(metricName); } return(new MeteringInterceptor(meter)); }
public void Can_get_metrics_from_collection_with_registered_changes() { // Counter var name = new MetricName("MeterTests.counter"); var counter = registry.Counter("MeterTests.counter"); Assert.IsNotNull(registry.Metrics[name], "Metric not found in central registry"); counter.Increment(10); var actual = ((Counter)registry.Metrics[name]).Count; Assert.AreEqual(10, actual, "Immutable copy did not contain correct values for this metric"); // Meter name = new MetricName("MeterTests.meter"); var meter = registry.Meter("MeterTests.meter"); Assert.IsNotNull(registry.Metrics[name], "Metric not found in central registry"); meter.Mark(3); actual = ((Meter)registry.Metrics[name]).Count; Assert.AreEqual(3, actual, "Immutable copy did not contain correct values for this metric"); }
public override IInterceptor CreateInterceptor(IProxyRequest request) { if (meterInterceptor == null) { MetricName metricName = Utils.BuildName(request, Name, Absolute); MetricRegistry registry = request.Context.Kernel.Get <MetricRegistry>(); Meter meter = registry.Meter(metricName); Type t = typeof(Exception); if (ExceptionType != null && ExceptionType.IsSubclassOf(t)) { t = ExceptionType; } meterInterceptor = new ExceptionMeteringInterceptor(meter, t); } return(meterInterceptor); }