Example #1
0
 public void AddLogSubject(string subjName, int interval, ServiceReporter.GatheringDelegate <int> onGathering)
 {
     if (this.AddSubject(subjName, null, interval))
     {
         this.AddGathering(subjName, onGathering);
     }
 }
Example #2
0
 public void AddProfileScopeSubject(string subjName, int interval, ServiceReporter.GatheringDelegate <double> onGathering)
 {
     string[] cols = new string[]
     {
         "Min",
         "Max",
         "Avg",
         "Total",
         "Count"
     };
     if (this.AddSubject(subjName, cols, interval))
     {
         this.AddGathering <double>(subjName, onGathering);
     }
 }
Example #3
0
 public void AddGathering <T>(string subjName, ServiceReporter.GatheringDelegate <T> onGathering)
 {
     foreach (ServiceReporter.SubjectEntry subjectEntry in this.Subjects)
     {
         if (subjectEntry.SubjName == subjName)
         {
             subjectEntry.OnGathering += delegate(ServiceReporter.SubjectStat stat)
             {
                 Dictionary <string, T> dictionary = new Dictionary <string, T>();
                 onGathering(dictionary);
                 stat.AddStats <T>(dictionary);
             };
         }
     }
 }
Example #4
0
 public void AddPerfSubject(string subjName, int interval, ServiceReporter.GatheringDelegate <int> onGathering)
 {
     string[] cols = new string[]
     {
         "GatheringElapsed",
         "ReportingElapsed",
         "CPU",
         "CPU.Kernel%",
         "CPU.User%",
         "Memory.WorkingSet",
         "Memory.Private",
         "Memory.Virtual",
         "Memory.Paged",
         "Memory.GC.Total",
         "Thread",
         "Thread.Running"
     };
     if (this.AddSubject(subjName, cols, interval))
     {
         this.AddGathering("Perf", onGathering);
     }
 }
Example #5
0
 public void AddGathering(string subjName, ServiceReporter.GatheringDelegate <int> onGathering)
 {
     this.AddGathering <int>(subjName, onGathering);
 }