2017-09-19 6 views
0

私はKamonライブラリを使って計測を行う方法を学んでいます。カモンカウンターはどこですか?

これはこれは、(プロジェクトフォルダに)私のplugins.sbtである私のbuild.sbt

libraryDependencies ++= Seq(
    "io.kamon" %% "kamon-core" % "0.6.7" 
) 

ある

addSbtPlugin("io.kamon" % "sbt-aspectj-runner" % "1.0.1") 

これは、今、私が実行したときに私のコード

import kamon.Kamon 

object KamonTest extends App { 
    Kamon.start() 
    val counter = Kamon.metrics.counter("foo") 
    1 to 100000 foreach { x => 
     Thread.sleep(10) 
     counter.increment() 
    } 
    readLine() 
    print("press any key to exit") 
    readLine() 
    Kamon.shutdown() 
} 

ですこのアプリを起動し、jmcを実行してから、MBEANブラウザに入ります。私は、だから私は、私は私のコードで定義されたカウンター「foo」を見つけることができないこの

enter image description here

を参照してください。

答えて

0

私はJMXコンソールに公開するために家紋

のギッターチャネルの助けによって、問題を解決することができた、私たちはbuild.sbtにより以下の二つの依存関係を必要とする

"io.kamon" %% "kamon-scala" % "0.6.7", 
"io.kamon" %% "kamon-jmx" % "0.6.7" 

また、application.confに次のエントリが必要です。

kamon.jmx { 
    subscriptions { 
    histogram  = [ "**" ] 
    min-max-counter = [ "**" ] 
    gauge   = [ "**" ] 
    counter   = [ "**" ] 
    trace   = [ "**" ] 
    trace-segment = [ "**" ] 
    system-metric = [ "**" ] 
    http-server  = [ "**" ] 
    kamon-mxbeans = [ "**" ] 
    } 
} 

kamon.modules { 
    kamon-mxbeans { 
    auto-start = yes 
    requires-aspectj = no 
    extension-class = "kamon.jmx.extension.JMXMetricImporter" 
    } 
} 

kamon.kamon-mxbeans { 
    mbeans = [ 
    { "name": "example-mbean", "jmxQuery": "example:type=myBean,name=*", 
     "attributes": [ 
     { "name": "foo", "type": "counter" } 
     ] 
    } 
    ], 
    identify-delay-interval-ms = 1000, 
    identify-interval-ms = 1000, 
    value-check-interval-ms = 1000 
}