INNER CODE UNIT · C#

MiniProfilerDiagnosticListener

TurnerSoftware/MongoFramework · src/MongoFramework.Profiling.MiniProfiler/MiniProfilerDiagnosticListener.cs:14

	public class MiniProfilerDiagnosticListener : IDiagnosticListener
	{
		private static MethodInfo OnNextWriteCommandMethod { get; } = typeof(MiniProfilerDiagnosticListener)
			.GetMethods(BindingFlags.Instance | BindingFlags.NonPublic)
			.Where(m => m.IsGenericMethod && m.Name == nameof(OnNextWriteCommand)).FirstOrDefault();
		private static MethodInfo OnNextIndexCommandMethod { get; } = typeof(MiniProfilerDiagnosticListener)
			.GetMethods(BindingFlags.Instance | BindingFlags.NonPublic)
			.Where(m => m.IsGenericMethod && m.Name == nameof(OnNextIndexCommand)).FirstOrDefault();

		private ConcurrentDictionary<Guid, CustomTiming> Commands { get; } = new ConcurrentDictionary<Guid, CustomTiming>();

		public void OnCompleted() { /* OnCompleted is never called in MongoFramework as commands have a state */ }

		public void OnError(Exception error) => Trace.WriteLine(error);

		public void OnNext(DiagnosticCommand value)
		{
			if (StackExchange.Profiling.MiniProfiler.Current == null)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…