2011-06-25 12 views
5

我試圖在使用SBT的Lift中使用基本日誌記錄和調試工作。我使用Eclipse作爲編輯器,但使用SBT進行所有編譯。任何人都可以建議如何打印調試聲明/記錄到SBT控制檯?使用SBT調試和記錄升降機

回答

5

如果您想要使用Logback進行日誌記錄,您需要創建一個名爲src/main/resources/props/default.logback.xml的基本xml文件(文件名可以不同以反映開發和生產環境,但我們會保持簡單)。

在這個文件中,這將登錄到控制檯的基本配置是這樣的:

<configuration> 
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> 
    <encoder> 
     <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> 
    </encoder> 
    </appender> 

    <root level="debug"> 
    <appender-ref ref="STDOUT" /> 
    </root> 
</configuration> 

(更多的例子可以在Logback manual找到。)

接下來,你需要添加依賴關係

"ch.qos.logback" % "logback-classic" % "0.9.26" 

到您的sbt配置。

最後,如果你想從一個類來登錄,拌入特質Logger,你會得到所有的debuginfowarn ......在範圍的方法。

class SomeClass extends SomeOtherClass with Logger { 
    debug("Class initialised.") 
} 

或者,在Loggable或者混合不污染您的命名空間,並只提供了一個logger代理方法。

class SomeClass extends SomeOtherClass with Loggable { 
    logger.debug("Class initialised.") 
} 

欲瞭解更多信息,請看Lift wiki

+0

非常感謝你! – Santiago

1

在sbt中有一個控制檯快速命令,用於在命令行中加載網站環境。這不是一個實時調試工具,它具有斷點,一步一步的執行,但是你可以在命令行上調用方法來查看實際結果,有時這真的很有幫助。