禁用Akka ActorSystem的默认日志记录

时间:2014-08-16 06:22:03

标签: scala logging akka

我需要一个不记录任何内容的ActorSystem。用喷雾尝试HTTP事情,我非常愚蠢,以至于我无法帮助复制和粘贴他们的示例代码here。正如您所看到的那样,他们正在使用ActorSystem,其默认配置会使用一大堆INFO来混淆stdout。那么你如何制作一个符合我需要的ActorSystem呢?如果可以在没有任何外部XML或配置文件的情况下完成,我会喜欢这种方式。谢谢! :)

1 个答案:

答案 0 :(得分:7)

import spray.http._
import spray.client.pipelining._
import akka.actor.ActorSystem
import com.typesafe.config._

val config = ConfigFactory.load()
     .withValue("akka.loglevel", ConfigValueFactory.fromAnyRef("OFF"))
     .withValue("akka.stdout-loglevel", ConfigValueFactory.fromAnyRef("OFF"))
implicit val system = ActorSystem("AlwaysNameYourSystem", config)
import system.dispatcher // execution context for futures
// ... here goes the rest of example code

这里做了什么

  • 手动创建Typesafe Config
  • 的实例
  • 将日志级别值设置为最高级别。
  • 使用明确的配置(docs here)构建ActorSystem

此时您不应该在系统启动和任何喷涂通知期间看到任何消息