public void ValidateTelemetryItem(string type) { var logRecords = new List <LogRecord>(); using var loggerFactory = LoggerFactory.Create(builder => { builder.AddOpenTelemetry(options => { options.ParseStateValues = true; options.AddInMemoryExporter(logRecords); }); builder.AddFilter(typeof(LogsHelperTests).FullName, LogLevel.Trace); }); var logger = loggerFactory.CreateLogger <LogsHelperTests>(); if (type == "MessageData") { logger.LogInformation("This is a test log"); } else { logger.LogWarning(new Exception("Test Exception"), "Test Exception"); } var telemetryItem = LogsHelper.OtelToAzureMonitorLogs(new Batch <LogRecord>(logRecords.ToArray(), logRecords.Count), "roleName", "roleInstance", "Ikey"); Assert.Equal(type, telemetryItem[0].Data.BaseType); Assert.Equal("Ikey", telemetryItem[0].InstrumentationKey); Assert.Equal("roleName", telemetryItem[0].Tags[ContextTagKeys.AiCloudRole.ToString()]); Assert.Equal("roleInstance", telemetryItem[0].Tags[ContextTagKeys.AiCloudRoleInstance.ToString()]); }