internal void DumpCounters() { List <ICounter> allCounters = new List <ICounter>(); CounterStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); IntValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); StringValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); FloatValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); AverageTimeSpanStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); foreach (var stat in allCounters.Where(cs => cs.Storage != CounterStorage.DontStore).OrderBy(cs => cs.Name)) { WriteStatsLogEntry(stat.GetDisplayString()); } List <ICounter> additionalCounters = GenerateAdditionalCounters(); // NOTE: For now, we don't want to bother logging these counters -- AG 11/20/2012 foreach (var stat in additionalCounters.OrderBy(cs => cs.Name)) { WriteStatsLogEntry(stat.GetDisplayString()); } WriteStatsLogEntry(null); // Write any remaining log data // Reset current value for counter that have delta. // Do it ONLY after all counters have been logged. foreach (ICounter stat in allCounters.Where(cs => cs.Storage != CounterStorage.DontStore).Union(additionalCounters).Where(cs => cs.IsValueDelta)) { stat.ResetCurrent(); } }
internal async Task DumpCounters() { List <ICounter> allCounters = new List <ICounter>(); CounterStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); IntValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); StringValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); FloatValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); AverageTimeSpanStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); foreach (var stat in allCounters.Where(cs => cs.Storage != CounterStorage.DontStore).OrderBy(cs => cs.Name)) { WriteStatsLogEntry(stat.GetDisplayString()); } List <ICounter> additionalCounters = GenerateAdditionalCounters(); // NOTE: For now, we don't want to bother logging these counters -- AG 11/20/2012 foreach (var stat in additionalCounters.OrderBy(cs => cs.Name)) { WriteStatsLogEntry(stat.GetDisplayString()); } WriteStatsLogEntry(null); // Write any remaining log data try { if (StatsTablePublisher != null && allCounters.Count > 0) { await StatsTablePublisher.ReportStats(allCounters); } } catch (Exception exc) { var e = exc.GetBaseException(); logger.Error(ErrorCode.AzureTable_35, "Exception occurred during Stats reporter.", e); } // Reset current value for counter that have delta. // Do it ONLY after all counters have been logged. foreach (ICounter stat in allCounters.Where(cs => cs.Storage != CounterStorage.DontStore).Union(additionalCounters).Where(cs => cs.IsValueDelta)) { stat.ResetCurrent(); } }
internal void DumpCounters() { List <ICounter> allCounters = new List <ICounter>(); CounterStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); IntValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); StringValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); FloatValueStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); AverageTimeSpanStatistic.AddCounters(allCounters, cs => cs.Storage != CounterStorage.DontStore); foreach (var stat in allCounters.Where(cs => cs.Storage != CounterStorage.DontStore).OrderBy(cs => cs.Name)) { WriteStatsLogEntry(stat.GetDisplayString()); } WriteStatsLogEntry(null); // Write any remaining log data // Reset current value for counter that have delta. // Do it ONLY after all counters have been logged. foreach (ICounter stat in allCounters.Where(cs => cs.Storage != CounterStorage.DontStore).Where(cs => cs.IsValueDelta)) { stat.ResetCurrent(); } }