public void EF_Diagnostics_Success_Test()
        {
            var processorObserver = new TracingDiagnosticProcessorObserver(new[]
            {
                new EntityFrameworkCoreDiagnosticProcessor()
            });

            DiagnosticListener.AllListeners.Subscribe(processorObserver);

            using (var tracerContextListener = new FakeIgnoreTracerContextListener())
            {
                try
                {
                    using (var dbContext = new FakeDbContext(_options))
                    {
                        dbContext.Users.Add(new FakeUser("Zhang", "San"));
                        dbContext.SaveChanges();
                    }
                }
                catch
                {
                    // ignored
                }
                Assert.Equal(1, tracerContextListener.Counter);
            }
        }
Пример #2
0
        public async Task HttpClient_Request_Fail_Test()
        {
            AgentConfig.ApplicationCode   = "HttpClientDiagnosticTests";
            CollectorConfig.DirectServers = "HttpClientDiagnosticTests.xx:50000";

            var httpClientDiagnosticProcessor = new HttpClientDiagnosticProcessor();

            var observer = new TracingDiagnosticProcessorObserver(new ITracingDiagnosticProcessor[]
                                                                  { httpClientDiagnosticProcessor });

            DiagnosticListener.AllListeners.Subscribe(observer);

            using (var tracerContextListener = new FakeIgnoreTracerContextListener())
            {
                try
                {
                    var httpClient = new System.Net.Http.HttpClient();
                    await httpClient.GetAsync("http://HttpClientDiagnosticTests.xx");
                }
                catch (Exception e)
                {
                }

                Assert.Equal(1, tracerContextListener.Counter);
            }
        }
Пример #3
0
 public InstrumentStartup(TracingDiagnosticProcessorObserver observer, IEnumerable <IExecutionService> services, ILoggerFactory loggerFactory, IRuntimeEnvironment runtimeEnvironment)
 {
     _observer           = observer;
     _services           = services;
     _logger             = loggerFactory.CreateLogger(typeof(InstrumentStartup));
     _runtimeEnvironment = runtimeEnvironment;
 }
Пример #4
0
 public SkrTraceAgentStartup(TracingDiagnosticProcessorObserver observer,
                             IEnumerable <IExecutionService> services,
                             ILogger <SkrTraceAgentStartup> logger,
                             IRuntimeEnvironment runtimeEnvironment, IOptions <SkrTraceOptions> skrTraceOptions)
 {
     _observer          = observer;
     _services          = services;
     _logger            = logger;
     RuntimeEnvironment = runtimeEnvironment;
     _skrTraceOptions   = skrTraceOptions.Value;
 }
Пример #5
0
        public void Start()
        {
            LoadConfigurationSetting();
            LogManager.SetLoggerFactory(new DebugLoggerFactoryAdapter());
            List <ITracingDiagnosticProcessor> ls = new List <ITracingDiagnosticProcessor>();

            ls.Add(new CapDiagnosticProcessor());


            _observer = new TracingDiagnosticProcessorObserver(ls);
            AsyncContext.Run(async() => await StartAsync());
        }
Пример #6
0
        public void Property_Binder_Invoke_Test()
        {
            var listener      = new FakeDiagnosticListener();
            var fakeProcessor = new FakeTracingDiagnosticProcessor();
            var observer      = new TracingDiagnosticProcessorObserver(new ITracingDiagnosticProcessor[] { fakeProcessor }, new NullLoggerFactory());

            DiagnosticListener.AllListeners.Subscribe(observer);

            var timeStamp = DateTime.Now;

            listener.Write(FakeDiagnosticListener.Executing,
                           new
            {
                Name      = FakeDiagnosticListener.Executing,
                Timestamp = timeStamp
            });

            Assert.Equal(timeStamp, fakeProcessor.Timestamp);
        }
        public void Object_Binder_Invoke_Test()
        {
            var listener      = new FakeDiagnosticListener();
            var fakeProcessor = new FakeTracingDiagnosticProcessor();
            var observer      = new TracingDiagnosticProcessorObserver(new ITracingDiagnosticProcessor[] { fakeProcessor });

            DiagnosticListener.AllListeners.Subscribe(observer);

            var timeStamp = DateTime.Now;

            listener.Write(FakeDiagnosticListener.Executed,
                           new FakeDiagnosticListenerData
            {
                Name      = FakeDiagnosticListener.Executed,
                Timestamp = timeStamp
            });

            Assert.Equal(timeStamp, fakeProcessor.Timestamp);
        }
Пример #8
0
        public SkyWalkingHostedService(IOptions <SkyWalkingOptions> options, IHostingEnvironment hostingEnvironment,
                                       TracingDiagnosticProcessorObserver diagnosticObserver, ILoggerFactory loggerFactory)
        {
            if (string.IsNullOrEmpty(options.Value.DirectServers))
            {
                throw new ArgumentException("DirectServers cannot be empty or null.");
            }

            if (string.IsNullOrEmpty(options.Value.ApplicationCode))
            {
                options.Value.ApplicationCode = hostingEnvironment.ApplicationName;
            }

            LogManager.SetLoggerFactory(loggerFactory);
            AgentConfig.ApplicationCode   = options.Value.ApplicationCode;
            CollectorConfig.DirectServers = options.Value.DirectServers;
            _logger             = LogManager.GetLogger <SkyWalkingHostedService>();
            _diagnosticObserver = diagnosticObserver;
        }
Пример #9
0
 public SkyWalkingAgentStartup(TracingDiagnosticProcessorObserver observer, IEnumerable <IExecutionService> services, ILoggerFactory loggerFactory)
 {
     _observer = observer;
     _services = services;
     _logger   = loggerFactory.CreateLogger(typeof(SkyWalkingAgentStartup));
 }
Пример #10
0
 public InstrumentationHostedService(TracingDiagnosticProcessorObserver observer)
 {
     _observer = observer;
 }