Я хотел бы включить ведение журнала в App Insights из WebApi (с пользовательским регистратором). Все работает хорошо, но мне нужно предоставить instrumentation key
в appsetting.json
с принудительной конвенцией:
"Values": {
"AppInsightsKey": "I want to put key here"
},
"ApplicationInsights": {
"InstrumentationKey": "Now I must put key here"
}
Однако я не могу переопределить эту вторую настройку непосредственно из настроек Azure:
Есть ли способ правильно настроить его?
Фактически в моем Startup.cs
я настраиваю logger:
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddApplicationInsights(app.ApplicationServices, LogLevel.Trace);
}
Моя обертка для журнала:
using Microsoft.Extensions.Logging;
...
public class MyCustomLogger : IMyCustomLogger
{
private readonly ILogger _logger;
public MyCustomLogger(ILogger<MyCustomLogger> logger)
{
_logger = logger;
}
public void LogInformation(string message, params object[] args)
{
_logger.LogInformation(message, args);
}
}
PS. Если я могу переопределить ApplicationInsights.InstrumentationKey
Azure, это тоже будет правильным решением.
c#,azure,asp.net-core-webapi,azure-application-insights,asp.net-core-2.1,