C# 无法从Azure IoT边缘模块登录到应用程序洞察
我有一个带有一个IoEdgeModule(C#)的AzureIoEdgeApp示例。在其中,我有一个文件(program.cs),我正在将一些日志信息写入ApplicationInsights。但它从不写。我还有一个launchSettings.json,其中有一个环境变量APPINSIGHTS\u INSTRUMENTATIONKEY 我在一个NetCore示例控制台应用程序(2.2和3.1)中也有相同的代码,它运行得很好 我错过了什么C# 无法从Azure IoT边缘模块登录到应用程序洞察,c#,azure-application-insights,azure-iot-edge,C#,Azure Application Insights,Azure Iot Edge,我有一个带有一个IoEdgeModule(C#)的AzureIoEdgeApp示例。在其中,我有一个文件(program.cs),我正在将一些日志信息写入ApplicationInsights。但它从不写。我还有一个launchSettings.json,其中有一个环境变量APPINSIGHTS\u INSTRUMENTATIONKEY 我在一个NetCore示例控制台应用程序(2.2和3.1)中也有相同的代码,它运行得很好 我错过了什么 static void Main(string[] ar
static void Main(string[] args)
{
var serviceCollection = new ServiceCollection();
ConfigureServices(serviceCollection);
var serviceProvider = serviceCollection.BuildServiceProvider();
var logger = serviceProvider.GetService<ILogger<Program>>();
for (var i=1; i<=2; i++)
{
logger.LogInformation("Testing an information message");
logger.LogError("Testing an error message");
}
Console.ReadKey();
}
private static void ConfigureServices(IServiceCollection services)
{
Log.Logger = new LoggerConfiguration() // Serilog
.Enrich.FromLogContext()
.WriteTo.Console()
.WriteTo.ApplicationInsights(TelemetryConfiguration.Active, TelemetryConverter.Traces)
.CreateLogger();
services.AddLogging(configure => configure.AddSerilog(Log.Logger)).AddScoped<TelemetryClient>();
}
static void Main(字符串[]args)
{
var servicecolection=新servicecolection();
配置服务(serviceCollection);
var serviceProvider=servicecolection.BuildServiceProvider();
var logger=serviceProvider.GetService();
对于(var i=1;我配置.AddSerilog(Log.Logger)).AddScoped();
}
我添加了以下软件包
Microsoft.ApplicationInsights-2.12.0
Microsoft.Extensions.DependencyInjection-3.1.0
Serilog-2.0
Serilog.Extensions.Logging-3.0.1
Serilog.Sinks.ApplicationInsights-3.0.4应将application insights密钥添加到deployment.json文件中,而不是像普通的net core控制台应用程序那样添加到launchSettings.json中