Камон ошибка с конфигурацией 'require-aspectj'
Я добавляю kamon
в мое отдельное приложение akka, и я получаю эту ошибку:
com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'requires-aspectj'
ошибка в Kamon.start()
,
Это относительный контент application.conf.
{
...
modules {
kamon-akka {
auto-start = no
}
kamon-statsd {
auto-start = no
}
kamon-system-metric {
auto-start = no
requires-aspectj = no
extension-id = "kamon.system.SystemMetrics"
}
}
}
application.conf: 36: requires-aspectj has type STRING rather than OBJECT
Тем не менее, когда я включаю запрашиваемое свойство
{
modules {
requires-aspectj = no
...
}
}
Я получаю эту ошибку: application.conf: 36: requires-aspectj has type STRING rather than OBJECT
Если я удалю Kamon.start()
мое приложение запускается как обычно
Это выдержка из моего build.sbt:
lazy val root = (project in file("."))
.settings(name := "kamon-akka")
.settings(Seq(scalaVersion := "2.11.8"))
.settings(libraryDependencies ++= Seq(
akka.Http,
akka.slf4jApi,
akka.akkaSlf4j,
kamon.Core,
kamon.Akka,
kamon.LogReporter,
kamon.SystemMetrics,
aspectj.aspectjtools,
aspectj.aspectjweaver,
aspectj.aspectjrt
))
.settings(aspectjSettings: _*)
PS:
- Камон = 0,6,7
- aspectj = 1.8,9
- сб 0,13,13
- Скала 2.12.3
- Я также использую этот плагин
addSbtPlugin("com.typesafe.sbt" % "sbt-aspectj" % "0.9.4")
есть идеи?
1 ответ
Во-первых, ваш application.conf
выглядит странно в том, что он не имеет kamon
Пространство имен. Это должно выглядеть следующим образом (обратите внимание на первую строку):
kamon {
...
modules {
kamon-akka {
...
}
kamon-statsd {
...
}
kamon-system-metrics {
...
}
}
}
Во-вторых, так как вы используете sbt-aspectj
плагин, добавьте следующее к вашему build.sbt
(источник: http://kamon.io/documentation/get-started/):
import com.typesafe.sbt.SbtAspectj._
// Bring the sbt-aspectj settings into this build
aspectjSettings
// Here we are effectively adding the `-javaagent` JVM startup
// option with the location of the AspectJ Weaver provided by
// the sbt-aspectj plugin.
javaOptions in run <++= AspectjKeys.weaverOptions in Aspectj
// We need to ensure that the JVM is forked for the
// AspectJ Weaver to kick in properly and do it's magic.
fork in run := true