Я пытаюсь записать некоторые сообщения, такие как сообщения об ошибках, в app-insights, используя ILogger
.
Я уже реализовал ILogger
, и он отлично работает для входа в консоль, но ничего не регистрирует в app-insights.
Документы , похоже, не устарели, поскольку в интерфейсе ILoggingBuilder
нет метода с именем AddApplicationInsights
.
Поэтому вместо этого я использовал метод AddAzureWebAppDiagnostics
.
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureLogging((hostingContext, logging) =>
{
// Add Azure Logging
logging.AddAzureWebAppDiagnostics();
logging.AddConsole();
})
.UseApplicationInsights()
.UseStartup<Startup>()
.Build();
public class Startup
{
private readonly ILoggerFactory _loggerFactory;
public Startup(IConfiguration config, ILoggerFactory loggerFactory)
{
Configuration = config;
_loggerFactory = loggerFactory;
}
public void ConfigureServices(IServiceCollection services)
{
ILogger logger = _loggerFactory.CreateLogger<BasicBot>();
logger.LogInformation("THAT IS A TEST MESSAGE");
}
}
Он нормально регистрируется в консоли, НО я ничего не вижу в app-insights!
Подсказка: я использую dotnet core 2.1 и отлаживаю разработку в Visual Studio.
Подсказка: app-insights отлично работает и регистрирует запросы, используя ITelemetry
. Но мне также нужно ILogger
, чтобы регистрировать различные сообщения из разных мест в коде!