我一直在試圖登錄我scalaTest內事到:記錄
class ChangeSetActorTest extends PersistenceSpec(ActorSystem("Persistent-test-System")) with
PersistenceCleanup {
val log = Logging(system, this)
基本上讓我們只說ChansetActorTest從TestKit繼承(系統)
不幸的是
Logging(system, this)
不適用於此
我收到以下錯誤:
[error] /Users/maatary/Dev/IdeaProjects/PoolpartyConnector/src/test/scala/org/iadb/poolpartyconnector/changepropagation/ChangeSetActorTest.scala:22: Cannot find LogSource for org.iadb.poolpartyconnector.changepropagation.ChangeSetActorTest please see ScalaDoc for LogSource for how to obtain or construct one. [error] val log = Logging(system, this)
我在阿卡日誌文件beleive這是以下各點: 和在所有其他情況下發生編譯錯誤,除非和隱式LOGSOURCE [T]的範圍是有問題的類型。
換句話說,沒有LOGSOURCE [TestKit]
我想解決這個問題最簡單的解決方案,以最小的額外配置。到目前爲止,我所做的是下面的,一切按預期工作:
class ChangeSetActorTest extends PersistenceSpec(ActorSystem("Persistent-test-System")) with
PersistenceCleanup {
val log = system.log
從那裏,我只是去和不喜歡的東西
val received = chgtFetcher.receiveWhile((requestInterval + ProcessingLag).*(3)) {
case msg:FetchNewChangeSet => log.info(s"received: ${msg}") ; chgtFetcher.reply(NoAvailableChangeSet); msg
}
我的問題,這是推薦appraoch。到目前爲止,來自我的演員和來自測試者的消息的順序排序良好。
請雲你讓我知道推薦appraoch登錄統一appraoch:
1 - 同時從測試類(如上述)和演員?
2 - 如果使用外部類需要登錄的系統,並且需要一個統一日誌記錄(異步)。
非常感謝
-M-