Azure functions 伊洛格<;T>;。Azure函数的LogMetric未将消息记录到Application Insight中
我在.net core 3.x上使用Azure函数v3,其中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文件日志记录配置似乎都是正确的。那么我
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不是日志级别,而是使用信息日志级别()发送数据的扩展方法。因此,鉴于当前内容,该答案不正确/不相关