public void PrintStatistics(double sessionEndTimeInMs) { if (rpcSummary.Count == 0) { return; } var buffer = new StringBuilder(); foreach (var summary in rpcSummary.AsEnumerable().OrderByDescending(kv => kv.Value)) { if (buffer.Length != 0) { buffer.AppendLine(); } buffer.Append($"endpoint: {summary.Key}, connections: {summary.Value}"); } traceOutput.WriteSummary($"RPC ({pid})", buffer.ToString()); }
public void PrintStatistics(double sessionEndTimeInMs) { if (networkIoSummary.Count == 0) { return; } var buffer = new StringBuilder(); foreach (var summary in networkIoSummary.OrderByDescending(kv => kv.Value.Total)) { if (buffer.Length != 0) { buffer.AppendLine(); } buffer.Append($"{summary.Key} --> S: {summary.Value.Send:0} b / R: {summary.Value.Recv:0} b"); } traceOutput.WriteSummary($"Network ({pid})", buffer.ToString()); }
public void PrintStatistics(double sessionEndTimeInMs) { if (connectedProcesses.Count == 0) { return; } var buffer = new StringBuilder(); foreach (var process in connectedProcesses) { if (buffer.Length != 0) { buffer.AppendLine(); } buffer.Append($"endpoint: {process}"); } traceOutput.WriteSummary($"ALPC ({pid})", buffer.ToString()); }
public void PrintStatistics(double sessionEndTimeInMs) { if (childProcesses.Count == 0) { return; } var buffer = new StringBuilder(); foreach (var childProcess in childProcesses) { if (buffer.Length != 0) { buffer.AppendLine(); } buffer.Append($"{childProcess.Item2} ({childProcess.Item1})"); } traceOutput.WriteSummary($"Child processes ({pid})", buffer.ToString()); }
private void PrintExecutionStatistics(string title, Dictionary <ulong, ExecutionStats> statsPerRoutine) { var statsPerDriver = new Dictionary <string, ExecutionStats>(); foreach (var kv in statsPerRoutine) { // resolve the routing address var driverImage = loadedDrivers.FindImage(kv.Key); Debug.Assert(driverImage != null); if (driverImage != null) { ExecutionStats driverStats; if (!statsPerDriver.TryGetValue(driverImage.FileName, out driverStats)) { statsPerDriver.Add(driverImage.FileName, kv.Value); } else { driverStats.Count += kv.Value.Count; driverStats.ElapsedTimeMSec += kv.Value.ElapsedTimeMSec; } } } var buffer = new StringBuilder(); // sort the stats by timespan foreach (var kv in statsPerDriver.OrderByDescending(kv => kv.Value.ElapsedTimeMSec)) { if (buffer.Length != 0) { buffer.AppendLine(); } buffer.Append($"'{kv.Key}', total: {kv.Value.ElapsedTimeMSec:#,0.000}ms ({kv.Value.Count} event(s))"); } traceOutput.WriteSummary(title, buffer.ToString()); }
public void PrintStatistics(double sessionEndTimeInMs) { output.WriteSummary("System Configuration", String.Join(Environment.NewLine, buffer)); }