コード例 #1
0
 private static void DoMathHomework(TimeSpan forHowLong)
 {
     //Track work as span
     SimpleTracer.TrackWork("Do Math Homework", () =>
     {
         Thread.Sleep(forHowLong);
     });
 }
コード例 #2
0
 private static void CallMyBestFriend(TimeSpan forHowLong)
 {
     //Track work as span
     SimpleTracer.TrackWork("Call My Bestie", () =>
     {
         throw new Exception("Get back to work!!!");
     });
 }
コード例 #3
0
 private static void DoComputerScienceHomework(TimeSpan forHowLong)
 {
     //Track work as span
     SimpleTracer.TrackWork("Do Computer Science Homework", () =>
     {
         SimpleTracer.CurrentSpan(s => s.WithAttribute("Method", "DoComputerScienceHomework"));
         Thread.Sleep(forHowLong);
     });
 }
コード例 #4
0
 /// <summary>
 /// This method will be tracked as a span.  Since this is a topmost span, when this work is complete, the SpanBatch
 /// consisting of this span and all of its children will be sentt to New Relic.
 /// </summary>
 private static void DoHomework()
 {
     //Track work as span
     SimpleTracer.TrackWork("Do Homework", () =>
     {
         DoMathHomework(TimeSpan.FromSeconds(2));
         TakeABreak(TimeSpan.FromSeconds(1));
         DoScienceHomework();
     });
 }
コード例 #5
0
        private static void DoScienceHomework()
        {
            //Track work as span
            SimpleTracer.TrackWork("Do Science Homework", () =>
            {
                DoComputerScienceHomework(TimeSpan.FromSeconds(1));
                TakeABreak(TimeSpan.FromSeconds(2));

                try
                {
                    CallMyBestFriend(TimeSpan.FromSeconds(20));
                }
                catch (Exception ex)
                {
                    Console.Error.WriteLine($"Captured Expected Exception - {ex.Message}");
                }

                DoBiologyHomework(TimeSpan.FromSeconds(1));
            });
        }