docker-grafana-graphite 中的 Kamon JVM 和 OS 指标

Kamon JVM and OS Metrics in docker-grafana-graphite

我正在尝试使用 kamon 在 docker-grafana-graphite 中监控我的 scala akka 应用程序。 我可以在 Kamon 仪表板中看到演员统计信息,但在系统仪表板中看不到任何数据 (JVM & OS)

这是我的 build.sbt 文件:

    import com.typesafe.sbt.SbtAspectj._

    name := """kinneret"""

    scalaVersion := "2.11.6"

    resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"

    val akkaVersion = "2.3.9"
    val kamonVersion = "0.3.4"

    libraryDependencies ++= Seq(
      "com.typesafe.akka" %% "akka-slf4j" % akkaVersion,
      "com.typesafe.akka" %% "akka-actor" % akkaVersion,
      "io.kamon" %% "kamon-core" % kamonVersion,
      "io.kamon" %% "kamon-statsd" % kamonVersion,
      "io.kamon" %% "kamon-play" % kamonVersion,
      "io.kamon" %% "kamon-log-reporter" % kamonVersion,
      "io.kamon" %% "kamon-system-metrics" % kamonVersion,
      "org.aspectj" % "aspectjweaver" % "1.8.1"
    )

aspectjSettings

javaOptions <++= AspectjKeys.weaverOptions in Aspectj

fork in run := true

这是我的配置文件:

akka {
  loglevel = INFO

  extensions = ["kamon.metric.Metrics", "kamon.statsd.StatsD",  "kamon.system.SystemMetrics", "kamon.logreporter.LogReporter"]
}

# Kamon Metrics
# ~~~~~~~~~~~~~~

kamon {
   metrics {
    filters = [
      {
        actor {
          includes = [ "*"]
          excludes = []
        }
      },
      {
        trace {
          includes = [ "*" ]
          excludes = []
        }
      }
    ]
  }

  # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  statsd {
    # Hostname and port in which your StatsD is running. Remember that StatsD packets are sent using UDP and
    # setting unreachable hosts and/or not open ports wont be warned by the Kamon, your data wont go anywhere.
    hostname = "192.168.59.103"
    port = 8125

    # Interval between metrics data flushes to StatsD. It's value must be equal or greater than the
    # kamon.metrics.tick-interval setting.
    flush-interval = 1 second

    # Max packet size for UDP metrics data sent to StatsD.
    max-packet-size = 1024 bytes

    # Subscription patterns used to select which metrics will be pushed to StatsD. Note that first, metrics
    # collection for your desired entities must be activated under the kamon.metrics.filters settings.
    includes {
      actor       = [ "*" ]
      trace       = [ "*" ]
      dispatcher  = [ "*" ]
    }

    simple-metric-key-generator {
      # Application prefix for all metrics pushed to StatsD. The default namespacing scheme for metrics follows
      # this pattern:
      #    application.host.entity.entity-name.metric-name
      application = "kinneret"
    }
  }
}

我正在使用 Mac(Yosemite),我正在 运行 docker 使用 boot2docker。 boot2docker ip是192.168.59.103.

我需要添加什么才能在 docker 仪表板中查看 OS 和 JVM 统计信息?

谢谢。

将你的配置设置与我的进行比较,我认为你缺少以下配置 属性:

kamon {
    ...
    statsd {
        ...
        report-system-metrics = true
        ...
    }
}