Azure functions 伊洛格<;T>;。Azure函数的LogMetric未将消息记录到Application Insight中

Azure functions 伊洛格<;T>;。Azure函数的LogMetric未将消息记录到Application Insight中,azure-functions,azure-application-insights,ilogger,Azure Functions,Azure Application Insights,Ilogger,我在.net core 3.x上使用Azure函数v3,其中ILOGER是通过IServiceProvider-like ILOGER=\u log=serviceProvider.GetService()对相应的类T进行依赖注入而创建的 除了\u log.LogMetric()之外,每隔一段日志消息(跟踪、信息、错误、异常等)就会被推送到Application Insight。我已经检查了事务搜索的跟踪部分以及日志的跟踪和自定义度量 甚至host.json文件日志记录配置似乎都是正确的。那么我

我在.net core 3.x上使用Azure函数v3,其中
ILOGER
是通过
IServiceProvider-like ILOGER=\u log=serviceProvider.GetService()对相应的类T进行依赖注入而创建的

除了
\u log.LogMetric()
之外,每隔一段日志消息(跟踪、信息、错误、异常等)就会被推送到Application Insight。我已经检查了事务搜索的跟踪部分以及日志的跟踪和自定义度量

甚至host.json文件日志记录配置似乎都是正确的。那么我做错了什么呢?

从文档中,您将发现只有信息、警告、调试、错误和跟踪将被推送到Application Insight


这五个日志级别不包含LogMetric。

Github上有一篇关于这一点的帖子,认为这是一个bug。有一种解决方法可以注入
遥测客户端
并使用
客户端.TrackMetric()

您可以这样做:
services.AddSingleton(x=>newTelemetryClient(configuration.GetSection(“ApplicationInsights:InstrumentationKey”).Get())

此处的配置是您的
IConfiguration
IConfigurationRoot

然后在注入服务之后,只需调用方法,
client.TrackMetric(metricName、metricValue、dictionaryProperties)

有关职位:

需要注意的是,如果您正在使用遥测客户端,您将希望自己使用以下解决方法来聚合这些度量:


您希望在应用程序的哪些方面找到这些指标?(只是为了确保你看的是正确的地方)@PeterBons在事务搜索部分(主要是跟踪)。但是,也可以搜索跟踪日志和自定义度量。是否可以发布host.json内容以及调用logmetrics的函数可能的一些代码?LogMetric不是日志级别,而是使用信息日志级别()发送数据的扩展方法。因此,鉴于当前内容,该答案不正确/不相关