ruby on rails 日志: log4r
来源:互联网 发布:死宅真恶心 知乎 编辑:程序博客网 时间:2024/06/08 20:01
日志是我们调试的最重要的手段,没有之一。
我们可以通过debug, 断点来人肉找到问题,但是如果没有把信息保存到文件中,就无法 事后找到线索。
最好的日志应该是 每日分卷, 有时间戳,可以控制输入级别。
在ruby中,虽然有自带的logger, 但是跟log4j还是有很大距离的。也很麻烦。 所以,就出现了log4r ( log for ruby ).
使用步骤 1.新建一个log4r的配置文件: config/log4r.yml
log4r_config: # define all loggers ... loggers: - name : production level : WARN trace : 'false' outputters : - datefile - name : development level : DEBUG trace : 'true' outputters : - datefile # define all outputters (incl. formatters) outputters: - type: DateFileOutputter name: datefile dirname: "log" filename: "my_app.log" # notice the file extension is needed! formatter: date_pattern: '%H:%M:%S' pattern : '%d %l: %m ' type : PatternFormatter
2.修改config/application.rb
require 'rails/all'# add these line for log4rrequire 'log4r'require 'log4r/yamlconfigurator'require 'log4r/outputter/datefileoutputter'include Log4rBundler.require(:default, Rails.env) if defined?(Bundler)module Zurich class Application < Rails::Application #... # assign log4r's logger as rails' logger. log4r_config= YAML.load_file(File.join(File.dirname(__FILE__),"log4r.yml")) YamlConfigurator.decode_yaml( log4r_config['log4r_config'] ) config.logger = Log4r::Logger[Rails.env] endend
3.修改Gemfile, 增加log4r的配置. 注意版本不能低于 1.1.9.否则不支持每日分卷
gem 'log4r', '1.1.9'
4.如果你用的是Rails4, 那么需要增加下面这个文件
# config/initializers/log4r_patch_for_rails4.rbclass Log4r::Logger def formatter() endend
现在就可以了。 进入到你的 Rails.root, 重启rails, 就会发现log目录开始分卷了。
May 9 17:05 rails_2011-05-09.logMay 10 13:42 rails_2011-05-10.log
日志的内容看起来如下:
$ tail log/rails_2011-05-10.logStarted GET "/????_settings/19/edit" for 127.0.0.1 at ...13:42:11 INFO: Processing by ????SettingsController ...13:42:11 INFO: Parameters: {"id"=>"19"}13:42:12 DEBUG: ????Setting Load (0.0ms) SELECT "d ...13:42:12 INFO: Completed 200 OK in 750ms
0 0
- ruby on rails 日志: log4r
- ruby on rails rotate log file(日志文件)
- Ruby & Rails on Rails 進階書單
- ruby and ruby on rails
- install Ruby on Rails
- Ruby on Rails 实践
- Ruby on Rails!
- Ruby on Rails
- 关于Ruby on Rails
- 初探Ruby on rails
- Ruby on Rails
- 了解Ruby on Rails
- Ruby on Rails 是什么?
- 什么是Ruby on Rails
- Ruby on Rails 实践
- Ruby on Rails
- 实践ruby on rails
- Ruby On Rails小结
- CentOS Linux 7 安装 VirtualBox
- (转)Android App监听软键盘按键的三种方式
- 编程基本功训练:流程图和UML图的画法及练习
- H5页面中的视频轮播(类似于banner轮播图效果)
- DEDE织梦仿站实例系列教程(花钱培训自学最终整理完整版)_仿拳击网
- ruby on rails 日志: log4r
- basic_string内存泄露问题之分析解决
- 百度推广质量度详解
- 判断js对象是否为空
- 数塔问题
- ruby on rails 如何使用gem "twitter-bootstrap-rails"
- BlueROV-9: Driving Control
- How To Achieve Ultimate Blog Success In One Easy Step
- maven配置