private void VerifyPropertiesInTelemetry() { // Mock channel to validate that our appender is trying to send logs #pragma warning disable CS0618 // Type or member is obsolete TelemetryConfiguration.Active.TelemetryChannel = this.adapterHelper.Channel; #pragma warning restore CS0618 // Type or member is obsolete // Set up error handler to intercept exception ApplicationInsightsAppender aiAppender = (ApplicationInsightsAppender)LogManager.GetRepository(callingAssembly).GetAppenders()[0]; OnlyOnceErrorHandler errorHandler = new OnlyOnceErrorHandler(); aiAppender.ErrorHandler = errorHandler; // Log something ILog logger = LogManager.GetLogger(callingAssembly, "TestAIAppender"); logger.Debug("Trace Debug"); ITelemetry[] sentItems = this.adapterHelper.Channel.SentItems; Assert.IsTrue(sentItems.Count() == 1); var telemetry = (TraceTelemetry)sentItems.First(); IDictionary <string, string> properties = telemetry.Properties; Assert.IsTrue(properties.Any()); string value; properties.TryGetValue("LoggerName", out value); Assert.AreEqual("TestAIAppender", value); Assert.IsTrue(properties.ContainsKey("ThreadName")); Assert.IsTrue(properties.ContainsKey("ClassName")); Assert.IsTrue(properties.ContainsKey("FileName")); Assert.IsTrue(properties.ContainsKey("MethodName")); Assert.IsTrue(properties.ContainsKey("LineNumber")); Assert.IsTrue(properties.ContainsKey("Domain")); }
public ApplicationInsightsAppender SetupAiAppender(string appenderName, string instrumentationKey) { var hierarchyRoot = GetHierarchyRoot(); RemoveAiAppender(appenderName); var patternLayout = new PatternLayout { ConversionPattern = "%message" }; patternLayout.ActivateOptions(); var aiAppender = new ApplicationInsightsAppender { Name = appenderName, InstrumentationKey = instrumentationKey, Layout = patternLayout }; aiAppender.ActivateOptions(); hierarchyRoot.AddAppender(aiAppender); return(aiAppender); }
private void VerifyInitializationSuccess(Action testAction, string expectedInstrumentationKey) { this.VerifyInitializationError(testAction, 0, null); ApplicationInsightsAppender aiAppender = (ApplicationInsightsAppender)log4net.LogManager.GetRepository(callingAssembly).GetAppenders()[0]; Assert.AreEqual(expectedInstrumentationKey, aiAppender.InstrumentationKey); }
/// <summary> /// Creating Application Insights Appender /// </summary> /// <param name="TelemetryInstrumentationKey"></param> /// <param name="patternLayout"></param> private static IAppender CreateAIAppender(string TelemetryInstrumentationKey, PatternLayout patternLayout) { ApplicationInsightsAppender aIAppender = new ApplicationInsightsAppender(); aIAppender.Name = "ApplicationInsightsAppender"; aIAppender.InstrumentationKey = TelemetryInstrumentationKey; patternLayout.ActivateOptions(); aIAppender.Layout = patternLayout; aIAppender.ActivateOptions(); _aIAppender = aIAppender; return(aIAppender); }
private void SendMessagesToMockChannel(string instrumentationKey) { // Set up error handler to intercept exception ApplicationInsightsAppender aiAppender = (ApplicationInsightsAppender)log4net.LogManager.GetRepository(callingAssembly).GetAppenders()[0]; log4net.Util.OnlyOnceErrorHandler errorHandler = new log4net.Util.OnlyOnceErrorHandler(); aiAppender.ErrorHandler = errorHandler; // Log something ILog logger = log4net.LogManager.GetLogger(callingAssembly, "TestAIAppender"); logger.Debug("Trace Debug"); logger.Error("Trace Error"); logger.Fatal("Trace Fatal"); logger.Info("Trace Info"); logger.Warn("Trace Warn"); AdapterHelper.ValidateChannel(this.adapterHelper, instrumentationKey, 5); }
public void ValidateLoggingIsWorking() { string instrumentationKey = "93d9c2b7-e633-4571-8520-d391511a1df5"; ApplicationInsightsAppenderTests.InitializeLog4NetAIAdapter(string.Format(InvariantCulture, @"<InstrumentationKey value=""{0}"" />", instrumentationKey)); // Set up error handler to intercept exception ApplicationInsightsAppender aiAppender = (ApplicationInsightsAppender)log4net.LogManager.GetRepository(callingAssembly).GetAppenders()[0]; log4net.Util.OnlyOnceErrorHandler errorHandler = new log4net.Util.OnlyOnceErrorHandler(); aiAppender.ErrorHandler = errorHandler; // Log something ILog logger = log4net.LogManager.GetLogger(callingAssembly, "TestAIAppender"); for (int i = 0; i < 1500; i++) { logger.Debug("Trace Debug" + i + DateTime.Now); } Assert.AreEqual(instrumentationKey, aiAppender.TelemetryClient.Context.InstrumentationKey); Assert.IsNull(errorHandler.Exception); }