我試圖通過運行example code來開始使用Apache風暴。我正在使用Maven倉庫中的風暴0.10.1-beta1。在Apache Storm中禁用LocalCluster日誌記錄
不幸的是,當我運行這些時,控制檯充滿了信息級日誌,淹沒了我添加的任何System.out.print()
調用。運行LocalCluster時是否可以更改日誌級別?我試過列出的解決方案here,而且這些解決方案似乎都沒有工作。
從鏈接中,將Config.TOPOLOGY_DEBUG
屬性更改爲false不會刪除信息級別日誌,並且使用鏈接中的代碼,我甚至不能使用logger.setLevel((Level) Level.FATAL)
,因爲我得到「方法setLevel(Level)未定義對於Logger類型「,儘管它清楚地列在了log4j api中。
編輯1: 我也嘗試過解決方案here,我把叫logback.xml
的XML轉換./src與以下配置:
<configuration monitorInterval="60">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%-4r [%t] %-5p %c{1.} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Logger name="org.apache.zookeeper" level="WARN"/>
<Root level="WARN">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</configuration>
仍然沒有運氣,雖然。是否有任何額外的配置需要告訴風暴使用自定義日誌設置?
更新:事實證明,風暴0.10.x切換到使用log4j2而不是logback,所以添加log4j2.xml與上述配置終於工作!
看在這裏:https://stackoverflow.com/questions/30923617/how-to-implement-log-changes-in-a-storm-project-locally-using-eclipse/ –
只是試過,沒有運氣(見編輯)。 – gears88