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

ruby-on-rails-3 – 将进程信息添加到Rails记录器

发布时间:2020-12-17 02:35:50 所属栏目:百科 来源:网络整理
导读:我目前有一个Rails应用程序,它有多个进程:Web服务进程和后台工作程序,由Redis触发. 问题有时很难检查日志文件并确定给定行为发生的位置 – 是在Web部分还是在Resque工作者上? 有没有办法包括进程名称甚至进程ID或允许我按进程区分每个日志条目的东西? 解
我目前有一个Rails应用程序,它有多个进程:Web服务进程和后台工作程序,由Redis触发.

问题有时很难检查日志文件并确定给定行为发生的位置 – 是在Web部分还是在Resque工作者上?

有没有办法包括进程名称甚至进程ID或允许我按进程区分每个日志条目的东西?

解决方法

看起来有一些选项可供选择:

> Subclass Buffered logger并使用它代替:https://gist.github.com/krutten/1091611(从http://help.papertrailapp.com/discussions/suggestions/18-include-pids-in-rails-productionlog开始)
>创建自己的中间件,使pid可用,并将其与config.log_tags:http://www.peterboling.com/2012/4/5/rails-3-2-custom-logging一起使用
>这样做:config.log_tags = [:subdomain,:uuid,:remote_ip,Proc.new {“PID – %.5d”%$$}](上一个链接说的很慢)
>或者:config.log_tags = [Proc.new {“PID:%.5d”%Process.pid}]
>改为记录请求uuid

这是一篇相关的SO文章:
? – Rails 3.2.2 log files unordered,requests intertwined

对我来说最好的选择似乎是使用:uuid而不是.它传达相同的信息,以便在您将多个进程记录到同一文件时区分请求.

(编辑:李大同)

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

    推荐文章
      热点阅读