public AspNetCoreHostingObserver(IMetricsObserverOptions options, IStats stats, ILogger <AspNetCoreHostingObserver> logger)
            : base(OBSERVER_NAME, DIAGNOSTIC_NAME, options, stats, logger)
        {
            PathMatcher = new Regex(options.IngressIgnorePattern);

            _responseTimeMeasure = Meter.CreateDoubleMeasure("http.server.requests.seconds");
            _serverCountMeasure  = Meter.CreateInt64Counter("http.server.requests.count");

            /*
             * //var view = View.Create(
             * //        ViewName.Create("http.server.request.time"),
             * //        "Total request time",
             * //        responseTimeMeasure,
             * //        Distribution.Create(BucketBoundaries.Create(new List<double>() { 0.0, 1.0, 5.0, 10.0, 100.0 })),
             * //        new List<ITagKey>() { statusTagKey, exceptionTagKey, methodTagKey, uriTagKey });
             *
             * //ViewManager.RegisterView(view);
             *
             * //view = View.Create(
             * //        ViewName.Create("http.server.request.count"),
             * //        "Total request counts",
             * //        serverCountMeasure,
             * //        Sum.Create(),
             * //        new List<ITagKey>() { statusTagKey, exceptionTagKey, methodTagKey, uriTagKey });
             *
             * //ViewManager.RegisterView(view);
             */
        }
Пример #2
0
        public HttpClientCoreObserver(IMetricsObserverOptions options, IStats stats, ILogger <HttpClientCoreObserver> logger)
            : base(OBSERVER_NAME, DIAGNOSTIC_NAME, options, stats, logger)
        {
            PathMatcher         = new Regex(options.EgressIgnorePattern);
            _clientTimeMeasure  = Meter.CreateDoubleMeasure("http.client.request.time");
            _clientCountMeasure = Meter.CreateInt64Measure("http.client.request.count");

            /* TODO: figureout bound instruments & view API
             * var view = View.Create(
             *      ViewName.Create("http.client.request.time"),
             *      "Total request time",
             *      clientTimeMeasure,
             *      Distribution.Create(BucketBoundaries.Create(new List<double>() { 0.0, 1.0, 5.0, 10.0, 100.0 })),
             *      new List<ITagKey>() { statusTagKey, uriTagKey, methodTagKey, clientTagKey });
             * ViewManager.RegisterView(view);
             *
             * view = View.Create(
             *  ViewName.Create("http.client.request.count"),
             *  "Total request counts",
             *  clientCountMeasure,
             *  Sum.Create(),
             *  new List<ITagKey>() { statusTagKey, uriTagKey, methodTagKey, clientTagKey });
             *
             * ViewManager.RegisterView(view);
             */
        }
Пример #3
0
        public CLRRuntimeObserver(IMetricsObserverOptions options, IStats stats, ILogger <CLRRuntimeObserver> logger)
            : base(OBSERVER_NAME, DIAGNOSTIC_NAME, options, stats, logger)
        {
            _memoryUsed      = Meter.CreateInt64Measure("clr.memory.used");
            _collectionCount = Meter.CreateInt64Measure("clr.gc.collections");
            _activeThreads   = Meter.CreateInt64Measure("clr.threadpool.active");
            _availThreads    = Meter.CreateInt64Measure("clr.threadpool.avail");

            // TODO: Pending View API
            // memoryTagValues = Tagger.CurrentBuilder.Put(memoryAreaKey, heapArea).Build();
            // threadPoolWorkerTagValues = Tagger.CurrentBuilder.Put(threadKindKey, threadPoolWorkerKind).Build();
            // threadPoolCompPortTagValues = Tagger.CurrentBuilder.Put(threadKindKey, threadPoolComppKind).Build();

            // RegisterViews();
        }
Пример #4
0
 public MetricsObserver(string observerName, string diagnosticName, IMetricsObserverOptions options, IStats stats, ILogger logger = null)
     : base(observerName, diagnosticName, logger)
 {
     Meter   = stats.Meter;
     Options = options;
 }
 public TestObserver(IMetricsObserverOptions options, IStats stats, ILogger logger)
     : base("TestObserver", DIAGNOSTIC_NAME, options, stats, logger)
 {
 }