예제 #1
0
        /// <summary>
        /// Initializes the Json.NET Glimpse extension.
        /// </summary>
        public static void Initialize()
        {
            // because there is no static way to access runtime policy strategy
            // RuntimePolicyStrategy will be set from JsonInspector
            Func <RuntimePolicy> runtimePolicyStrategy = RuntimePolicyStrategy ?? (() => RuntimePolicy.On);

#pragma warning disable 612,618
            Initialize(runtimePolicyStrategy, GlimpseConfiguration.GetConfiguredTimerStrategy(), GlimpseConfiguration.GetConfiguredMessageBroker());
#pragma warning restore 612,618
        }
예제 #2
0
        protected override void OnInit(EventArgs e)
        {
            if (GlimpseConfiguration.GetConfiguredTimerStrategy()() != null)
            {
#if NET45Plus
                DataBoundControl.CallingDataMethods += DataBoundControl_CallingDataMethods;
#endif
                DataBoundControl.DataBinding += DataBoundControl_DataBinding;
            }
            base.OnInit(e);
        }
예제 #3
0
        public static IDisposable Capture(string eventName, string appName = "enGage")
        {
#pragma warning disable 618
            var timer = GlimpseConfiguration.GetConfiguredTimerStrategy()();
            if (timer == null)
            {
                return(null);
            }
            var broker = GlimpseConfiguration.GetConfiguredMessageBroker();
            if (broker == null)
            {
                return(null);
            }
#pragma warning restore 618
            return(new TimelineCapture(timer, broker, eventName, appName));
        }
예제 #4
0
        internal static OngoingCapture Capture(string eventName, string eventSubText, TimelineCategoryItem category, ITimelineMessage message)
        {
            if (string.IsNullOrEmpty(eventName))
            {
                throw new ArgumentNullException("eventName");
            }

#pragma warning disable 618
            var executionTimer = GlimpseConfiguration.GetConfiguredTimerStrategy()();
            var messageBroker  = GlimpseConfiguration.GetConfiguredMessageBroker();
#pragma warning restore 618

            if (executionTimer == null || messageBroker == null)
            {
                return(OngoingCapture.Empty());
            }

            return(new OngoingCapture(executionTimer, messageBroker, eventName, eventSubText, category, message));
        }
예제 #5
0
        internal static void CaptureMoment(string eventName, string eventSubText, TimelineCategoryItem category, ITimelineMessage message)
        {
            if (string.IsNullOrEmpty(eventName))
            {
                throw new ArgumentNullException("eventName");
            }

#pragma warning disable 618
            var executionTimer = GlimpseConfiguration.GetConfiguredTimerStrategy()();
            var messageBroker  = GlimpseConfiguration.GetConfiguredMessageBroker();
#pragma warning restore 618

            if (executionTimer == null || messageBroker == null)
            {
                return;
            }

            message
            .AsTimelineMessage(eventName, category, eventSubText)
            .AsTimedMessage(executionTimer.Point());

            messageBroker.Publish(message);
        }
예제 #6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GlimpseTelemetryChannel" /> class.
 /// </summary>
 public GlimpseTelemetryChannel()
 {
     this.MessageBroker = GlimpseConfiguration.GetConfiguredMessageBroker();
     this.TimerStrategy = GlimpseConfiguration.GetConfiguredTimerStrategy();
 }
예제 #7
0
 /// <summary>
 /// This constructor is needed for users who configure web.config with <add name="myListener" type="Glimpse.AspNet.TraceListener" initializeData="XYZ"/>
 /// </summary>
 /// <param name="initializeData">Initialize data string</param>
 public TraceListener(string initializeData)
 {
     MessageBroker = GlimpseConfiguration.GetConfiguredMessageBroker();
     TimerStrategy = GlimpseConfiguration.GetConfiguredTimerStrategy();
 }
예제 #8
0
 // ReSharper disable UnusedMember.Global
 /// <summary>
 /// These constructors used by .NET when TraceListener is set via web.config
 /// </summary>
 public TraceListener()
 {
     MessageBroker = GlimpseConfiguration.GetConfiguredMessageBroker();
     TimerStrategy = GlimpseConfiguration.GetConfiguredTimerStrategy();
 }
예제 #9
0
 /// <summary>
 /// This constructor is needed for users who configure web.config with <add name="myListener" type="Glimpse.AspNet.TraceListener" initializeData="XYZ"/>
 /// </summary>
 /// <param name="initializeData">Initialize data string</param>
 public TraceListener(string initializeData)
     : this(GlimpseConfiguration.GetConfiguredMessageBroker(), GlimpseConfiguration.GetConfiguredTimerStrategy())
 {
 }
예제 #10
0
 // ReSharper disable UnusedMember.Global
 /// <summary>
 /// These constructors used by .NET when TraceListener is set via web.config
 /// </summary>
 public TraceListener()
     : this(GlimpseConfiguration.GetConfiguredMessageBroker(), GlimpseConfiguration.GetConfiguredTimerStrategy())
 {
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="TimedMessagePublisher"/> class.
 /// </summary>
 public TimedMessagePublisher()
     : this(GlimpseConfiguration.GetConfiguredMessageBroker(), GlimpseConfiguration.GetConfiguredTimerStrategy()())
 {
 }