2014-04-14 16 views
6

Bir Scala/Play 2.2.0 uygulamasında Logback 1.0.13 kullanıyorum. İstisna traceback hatları özelleştirilmiş ayırıcı sahip şekilde yapılandırmaktır bir yol varsa Bakıyorumlogback: özel durum yığınlarının biçimlendirmesini denetleme

<appender name="FILE" class="ch.qos.logback.core.FileAppender"> 
    <file>${application.home}/logs/application.log</file> 
    <encoder> 
    <pattern>%date [%level][%logger{1}][%thread{1}] %message%xException%n</pattern> 
    </encoder> 
    </appender> 

: gibi Mevcut yapılandırma görünüyor. Bunun yerine

play.api.Configuration$$anon$1: Configuration error[Cannot connect to database [default]] 
at play.api.Configuration$.play$api$Configuration$$configError(Configuration.scala:92) ~[play_2.10-2.2.0.jar:2.2.0] 
at play.api.Configuration.reportError(Configuration.scala:570) ~[play_2.10-2.2.0.jar:2.2.0] 
at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:252) ~[play-jdbc_2.10-2.2.0.jar:2.2.0] 

arasında böyle her satırın önüne bazı karakter koymak istiyorum:

 <pattern>%date [%level][%logger{1}][%thread{1}] 
     %message%replace(%xException){"\n", "\\n"}%nopex%n</pattern> 

% değiştirin: Bu işler böyle bir şey anladım

play.api.Configuration$$anon$1: Configuration error[Cannot connect to database [default]] 
>>> at play.api.Configuration$.play$api$Configuration$$configError(Configuration.scala:92) ~[play_2.10-2.2.0.jar:2.2.0] 
>>> at play.api.Configuration.reportError(Configuration.scala:570) ~[play_2.10-2.2.0.jar:2.2.0] 
>>> at play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:252) ~[play-jdbc_2.10-2.2.0.jar:2.2.0] 
+0

Logback'in bu tür bir şekilde doğal olarak bir şey olduğunu düşünmüyorum. Muhtemelen özel bir logback eklentisi yazabilir ve aynı şeyi deneyebilirsiniz. – Aritra

cevap

9

mekanizma bir stacktrace metni üzerinde çalışır. Ham stacktrace'in tekrar gösterilmesini önlemek için% nopex'e de ihtiyacınız var; Aksi takdirde Logback "yararlı", izlemeyi ihmal ettiğinizi fark eder ve sizin için içerir.

+0

Bu platformu nasıl bağımsız hale getirmenin bir yolu var mı? (Windows'da "\ r \ n" satır ayırıcı var) Logback'in% n dönüşüm kelimesi var, ancak bunu değiştirme yönteminde nasıl kullanacağım konusunda hiçbir fikrim yok. –