import grails.util.BuildSettings import grails.util.Environment import org.springframework.boot.logging.logback.ColorConverter import org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter import java.nio.charset.Charset conversionRule 'clr', ColorConverter conversionRule 'wex', WhitespaceThrowableProxyConverter // See http://logback.qos.ch/manual/groovy.html for details on configuration appender('STDOUT', ConsoleAppender) { encoder(PatternLayoutEncoder) { charset = Charset.forName('UTF-8') pattern = '%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} ' + // Date '%clr(%5p) ' + // Log level '%clr(---){faint} %clr([%15.15t]){faint} ' + // Thread '%clr(%-40.40logger{39}){cyan} %clr(:){faint} ' + // Logger '%m%n%wex' // Message } } def targetDir = BuildSettings.TARGET_DIR if (Environment.isDevelopmentMode() && targetDir != null) { appender("FULL_STACKTRACE", FileAppender) { file = "${targetDir}/stacktrace.log" append = true encoder(PatternLayoutEncoder) { pattern = "%level %logger - %msg%n" } } logger("StackTrace", ERROR, ['FULL_STACKTRACE'], false) } root(ERROR, ['STDOUT'])