Luk*_*ett 2 azure azure-application-insights azure-log-analytics
当 anILogger被初始化时,我们给它一个名称,通常是类型名称。当通过它写入日志时,该值会清楚地打印到控制台。此外,配置中的严重性过滤通过此名称进行。
但是,我似乎在 Application Insights/Log Analytics 中看不到该名称。它记录了大量我不关心的内容,但似乎错过了这个主要字段。
谢谢
Ivan 要求提供代码和屏幕截图,所以这是我们多年来用来制作命名记录器的标准代码。
var logger = loggerFactory.CreateLogger("EventHub");
logger.LogInformation($"Publishing event '{eventName}' from '{sourceId}'.");
Run Code Online (Sandbox Code Playgroud)
以下是门户中日志(分析)中可用的所有字段。这些都不是记录器名称。在我看来,记录器的名称将位于前五个最有用的字段中。
再次感谢。
表中的列(在您的情况下,它是跟踪表)是固定的。
当您使用这行代码时loggerFactory.CreateLogger("EventHub");,“ EventHub ”实际上成为customDimensions列的属性。所以你可以使用EventHub的这个属性来过滤你的日志数据。
这是我对您的代码的测试:
var logger = loggerFactory.CreateLogger("EventHub");
logger.LogInformation($"Publishing event '{eventName}' from '{sourceId}'.");
Run Code Online (Sandbox Code Playgroud)
然后在azure门户->你的应用程序洞察->日志(Analytics)中,查询日志,你可以看到 eventHub是customDimensions的一个属性:
如何通过eventHub的属性过滤日志:
使用此查询:
traces
| where customDimensions.CategoryName == "eventHub"
Run Code Online (Sandbox Code Playgroud)
然后获取所有匹配的记录:
| 归档时间: |
|
| 查看次数: |
7796 次 |
| 最近记录: |