public Task StartAsync(CancellationToken cancellationToken)
        {
            _scheduler = new Timer(Callback, null, TimeSpan.FromSeconds(5), _captureInterval);
            return(Task.CompletedTask);

            async void Callback(object state)
            {
                var counter = new PerformanceMetrics
                {
                    Processor = _processorMetricsCollector.GetUsage(),
                    Memory    = _memoryMetricsCollector.GetUsage(),
                    Network   = _networkMetricsCollector.GetThroughput()
                };
                await _metricsDeliverer.DeliverAsync(counter);
            }
        }
 static void Callback(object state)
 {
     Console.WriteLine($"[{DateTimeOffset.Now}]{PerformanceMetrics.Create()}");
 }
 public Task DeliverAsync(PerformanceMetrics counter)
 {
     _logForDelivery(_logger, DateTimeOffset.Now, counter, _deliverTo, _transport, null);
     return(Task.CompletedTask);
 }
Пример #4
0
 public Task DeliverAsync(PerformanceMetrics counter)
 {
     Console.WriteLine($"[{DateTimeOffset.UtcNow}]{counter}");
     return(Task.CompletedTask);
 }
Пример #5
0
 public Task DeliverAsync(PerformanceMetrics counter)
 {
     Console.WriteLine($"[{DateTimeOffset.Now}]Deliver performance counter {counter} to { _deliverTo} via { _transport}");
     return(Task.CompletedTask);
 }
 long INetworkMetricsCollector.GetThroughput() => PerformanceMetrics.Create().Network;
 long IMemoryMetricsCollector.GetUsage() => PerformanceMetrics.Create().Memory;
 int IProcessorMetricsCollector.GetUsage() => PerformanceMetrics.Create().Processor;