【问题标题】:Is this logging blocking?这是日志记录阻塞吗?
【发布时间】:2017-05-17 05:02:46
【问题描述】:

我读过 AkkaLogging 是异步的,直接使用 slf4j 是阻塞的。考虑下面的代码:

application.conf:

akka {
  loggers = ["akka.event.slf4j.Slf4jLogger"]
}

logback.xml:

<configuration>
<appender name="InfoFile" class="ch.qos.logback.core.FileAppender">
<file>Testing.log</file>
    <append>true</append>
    <encoder>
        <pattern>%msg%n</pattern>
    </encoder>
</appender>

<root level="INFO">
<appender-ref ref="InfoFile" />
</root>
</configuration>

日志语句:

  log.info("Sample logging")

这个日志记录代码还会阻塞吗?如果是,是不是意味着在akka中没有办法实现非阻塞文件日志呢?

【问题讨论】:

标签: scala logging akka logback slf4j


【解决方案1】:

Akka 日志记录是异步的。 但从this document 看来,“在底层基础架构写入日志语句时,日志记录操作将阻塞”。 但是,您可以在 logback.xml 中使用非阻塞附加程序 AsyncAppender 来避免这种情况。

【讨论】:

    猜你喜欢
    • 2011-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-05
    • 2019-09-25
    • 1970-01-01
    相关资源
    最近更新 更多