加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

将线程ID添加到ruby日志中

发布时间:2020-12-17 03:17:26 所属栏目:百科 来源:网络整理
导读:我按以下方式创建记录器: Logging.color_scheme( 'bright',:levels = { :info = :green,:warn = :yellow,:error = :red,:fatal = [:white,:on_red] },:date = :blue,:logger = :cyan,:message = :magenta)@logger = Logging.logger['main_logger']@logger.a
我按以下方式创建记录器:

Logging.color_scheme( 'bright',:levels => {
        :info  => :green,:warn  => :yellow,:error => :red,:fatal => [:white,:on_red]
    },:date => :blue,:logger => :cyan,:message => :magenta
)
@logger = Logging.logger['main_logger']
@logger.add_appenders(
    Logging.appenders.stdout,Logging.appenders.file('file',:filename => LOG_FILE_PATH,:layout => Logging.layouts.pattern(:pattern => '[%d] %-5l %c: %mn')
    )
)

我想将线程id添加到每条日志消息(Thread.current.object_id),有没有办法可以做到这一点?

解决方法

您必须使用映射的诊断上下文’mdc'(参见 https://github.com/TwP/logging/blob/master/examples/mdc.rb)

这是我做的:

Logging.appenders.stdout(
      'stdout',:layout => Logging.layouts.pattern(
          :pattern => '%d %-5l [%X{tid}]: %mn',:date_pattern => "%d/%m/%Y %H:%M:%S",:color_scheme => 'bright'
      ),)

并在您的主题中,指示潮汐字段的值,如下所示:

Logging.mdc['tid'] = Thread.current.object_id

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读