首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应用程序洞察中的范围日志记录

应用程序洞察中的范围日志记录
EN

Stack Overflow用户
提问于 2019-07-29 09:20:03
回答 1查看 2K关注 0票数 3

我们有一个.net核心web,我们使用了Microsoft.Extensions.Logging命名空间中可用的内置记录器。

我们已经将这个记录器与Application集成在一起。

我能看到所有的日志都被正确地记录了。但是,我无法看到范围内的日志记录信息。

下面是我的代码:

代码语言:javascript
复制
var taskId = Guid.NewGuid();
            using (logger.BeginScope("Assigning Task {taskId}.",taskId))
            {
               logger.LogInformation("{taskId} is assigned",taskId);
            }

我可以看到这个输出,其中的作用域日志信息是以“{原始格式}”来完成的。但是,结构化日志并不适用于该字段:

我有以下问题:

  1. 应用程序洞察中范围日志是如何工作的?
  2. 这是查看范围信息的唯一途径吗?
  3. 有没有办法查看一个范围内的所有日志?
  4. 为什么结构化日志不适用于{原始格式}?
EN

回答 1

Stack Overflow用户

发布于 2021-12-06 10:15:59

作用域日志现在在Application中工作(我使用的是2.19.0版本)。与其将格式字符串+ params传递给BeginScope(),不如传递一个名称-值对字典。

代码语言:javascript
复制
using (logger.BeginScope(new Dictionary<string, object> 
         { { "TaskId" = taskId }, { "Action", "AssigningTask" } }))
{
    .. 
    logger.LogInformation("{taskId} is assigned", taskId);
    ...
}

当然,在这里将taskId放在内部日志消息中有点多余。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57250730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档