分离信息记录的grails [英] grails separating info logging

查看:99
本文介绍了分离信息记录的grails的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图分开的信息,警告和错误日志,我做了下面的配置,但在信息文件继续记录在同一文件上的其他类型的日志,我已经尝试搜索其他主题,但我没有找到解决方案,任何人都可以提供帮助?

  def logLayoutPattern = new PatternLayout(%d {yyyy-MM-dd / HH:mm:ss.SSS}%x%-5p%c {2}  - %m%n)
appenders {
appender new DailyRollingFileAppender(name:perfil,threshold:Level.INFO ,文件:/tmp/logs/file_perfil.log\",datePattern:'.yyyy-MM-dd,layout:logLayoutPattern)
appender new DailyRollingFileAppender(name:errors,threshold:Level.ERROR ,文件:/tmp/logs/file_errors.log\",datePattern:'.yyyy-MM-dd,layout:logLayoutPattern)
appender new DailyRollingFileAppender(name:warn,threshold:Level.WARN ,file:/tmp/logs/file_warn.log\",datePattern:'.yyyy-MM-dd,layout:logLayoutPattern)
}

info perfil:[grails .app.controllers.com.app.PerfilCont滚子]
警告警告:'grails.app'

错误错误:['org.codehaus.groovy.grails.web.servlet',
'org.codehaus。 groovy.grails.web.pages',
'org.codehaus.groovy.grails.web.sitemesh',
'org.codehaus.groovy.grails.web.mapping.filter',
'org.codehaus.groovy.grails.web.mapping',
'org.codehaus.groovy.grails.commons',
'org.codehaus.groovy.grails.plugins',
'org.codehaus.groovy.grails.orm.hibernate',
'org.springframework',
'org.hibernate',
'net.sf.ehcache.hibernate']
root {
错误'错误'
additivity = false
警告'warn'
additivity = false
info'perfil'
additivity = false


解决方案

您需要添加 additivity:false 在自定义appender而不是root logger上。



像这样的东西就足够了:

  info perfil:[grails.app.controllers.com.app.PerfilController ] 
additivity:false

警告warn:'grails.app'
additivity:false

错误错误:['org.codehaus.groovy。 grails.web.servlet',
'org.codehaus.groovy.grails.web.pages',
'org.codehaus.groovy.grails.web.sitemesh',
'org。 codehaus.groovy.grails.web.mapping.filter',
'org.codehaus.groovy.grails.web.mapping',
'org.codehaus.groovy.grails.commons',
'org.codehaus.groovy.grails.plugins',
'org.codehaus.groovy.grails.orm.hibernate',
'org.springframework',
'org.hibernate' ,
'net.sf.ehcache.hibernate']
additivity:false

root {
错误'错误'
警告'警告'
info'perfil'
}

所有记录rs默认从root继承,默认情况下addability为true。


I am trying to separate the info, warn and errors log, i did the below configuration, but on info file continue to log the other types of log on the same file, i already tried to search on the other topics but i did not find a solution, anyone can help ?

def logLayoutPattern = new PatternLayout("%d{yyyy-MM-dd/HH:mm:ss.SSS} %x %-5p %c{2} - %m%n")
appenders {
     appender new DailyRollingFileAppender(name: "perfil",threshold: Level.INFO,file: "/tmp/logs/file_perfil.log",datePattern: "'.'yyyy-MM-dd",layout: logLayoutPattern)
     appender new DailyRollingFileAppender(name: "errors",threshold: Level.ERROR,file: "/tmp/logs/file_errors.log",datePattern: "'.'yyyy-MM-dd",layout: logLayoutPattern)
     appender new DailyRollingFileAppender(name: "warn",threshold: Level.WARN,file: "/tmp/logs/file_warn.log",datePattern: "'.'yyyy-MM-dd",layout: logLayoutPattern)
}

info perfil: ["grails.app.controllers.com.app.PerfilController"]
warn warn: 'grails.app'

error errors: ['org.codehaus.groovy.grails.web.servlet',
       'org.codehaus.groovy.grails.web.pages',
       'org.codehaus.groovy.grails.web.sitemesh',
       'org.codehaus.groovy.grails.web.mapping.filter',
       'org.codehaus.groovy.grails.web.mapping',
       'org.codehaus.groovy.grails.commons',
       'org.codehaus.groovy.grails.plugins',
       'org.codehaus.groovy.grails.orm.hibernate',
       'org.springframework',
       'org.hibernate',
       'net.sf.ehcache.hibernate']
root {
    error 'errors'
    additivity = false
    warn 'warn'
    additivity = false
    info 'perfil'
    additivity = false
}

解决方案

You need to add additivity: false on the custom appenders instead of the root logger.

Something like this would suffice:

info perfil: ["grails.app.controllers.com.app.PerfilController"]
     additivity: false

warn warn: 'grails.app'
     additivity: false

error errors: ['org.codehaus.groovy.grails.web.servlet',
       'org.codehaus.groovy.grails.web.pages',
       'org.codehaus.groovy.grails.web.sitemesh',
       'org.codehaus.groovy.grails.web.mapping.filter',
       'org.codehaus.groovy.grails.web.mapping',
       'org.codehaus.groovy.grails.commons',
       'org.codehaus.groovy.grails.plugins',
       'org.codehaus.groovy.grails.orm.hibernate',
       'org.springframework',
       'org.hibernate',
       'net.sf.ehcache.hibernate']
     additivity: false

root {
    error 'errors'
    warn 'warn'
    info 'perfil'
}

All the loggers inherit from the root by default and additivity is true by default.

这篇关于分离信息记录的grails的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆