akka システムのロギングを構成するために、以下の手順を試しました。
1.application.conf と logback.xml ファイルの両方を作成し、src/main/resources ディレクトリに配置します。
2.application.conf ファイルは次のようになります:-
akka {
loggers = ["akka.event.slf4j.Slf4jLogger"]
logging-filter="akka.event.slf4j.Slf4jLoggingFilter"
log-config-on-start = on
loglevel = "DEBUG"
}
3.logback.xml ファイルは次のようになります:-
<?xml version="1.0" encoding="UTF-8"?>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<target>System.out</target>
<encoder>
<pattern>%X{akkaTimestamp} %-5level[%thread] %logger{0} - %msg%n</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>/Users/deepak/work/logs/akka.log</file>
<append>true</append>
<encoder>
<pattern>%date{yyyy-MM-dd} %X{akkaTimestamp} %-5level[%thread] %logger{1} - %msg%n</pattern>
</encoder>
</appender>
<logger name="akka" level="DEBUG" />
<root level="DEBUG">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</root>
4.sbt ビルドの依存関係:-
libraryDependencies += "com.typesafe.akka" % "akka-slf4j_2.11" % "2.4.14"
libraryDependencies += "ch.qos.logback" % "logback-classic" % "1.1.3" % Test
5.Akka Version="2.4.14"
6.jar ファイルをビルドした後、application.conf ファイルと logback.xml ファイルがその中に存在することを確認しました。したがって、クラスパスの問題ではないと思います。
7. 私のアクターは ActorLogging トレイトと混合します。しかし、jarファイルを実行すると、ログを見ることができません
import akka.actor.{Actor, ActorLogging}
class Reader extends Actor with ActorLogging{
override def receive = {
case _ =>log.info("Reader")
}
}
ここで助けてください。私は問題を理解することができません