Prometheus 阿克卡溪流酒店;卡蒙·普罗米修斯没有返回任何指标,但加载了一个空白页面

Prometheus 阿克卡溪流酒店;卡蒙·普罗米修斯没有返回任何指标,但加载了一个空白页面,prometheus,akka-stream,kamon,akka-monitoring,Prometheus,Akka Stream,Kamon,Akka Monitoring,我试图将kamon prometheus与akka stream项目集成在一起,但它加载了一个空页面。在控制台中,我可以看到这样一条消息,即度量信息在上可用。 当我尝试akka quickstart项目时,效果很好 akka streams是否支持kamon?kamon大量使用aspecj来收集一些指标。请确保java代理aspectj weaver已添加到JVM的启动中。请参阅本文档中的不同选项 您还需要将依赖项添加到build.sbt libraryDependencies+=“io.kam

我试图将kamon prometheus与akka stream项目集成在一起,但它加载了一个空页面。在控制台中,我可以看到这样一条消息,即度量信息在上可用。 当我尝试akka quickstart项目时,效果很好


akka streams是否支持kamon?

kamon大量使用aspecj来收集一些指标。请确保java代理aspectj weaver已添加到JVM的启动中。请参阅本文档中的不同选项

您还需要将依赖项添加到
build.sbt

libraryDependencies+=“io.kamon”%%“kamon核心”%%“1.1.0”
libraryDependencies+=“io.kamon”%%“kamon prometheus”%%“1.0.0”
通过在
application.conf
文件中更改此设置键,禁用
kamon prometheus
中的内置服务器

kamon.prometheus.start-embedded-http-server=no
PrometheusReporter
添加到
Kamon

导入kamon.kamon
进口kamon.prometheus.prometheus Reporter
private val reporter=新的PrometheusReporter()
private val registry=Kamon.addReporter(reporter)
通过定义路由并从
reporter.scrapeData()
获取数据,使用
akka http
提供度量结果

val metrics=path(“metrics”){
编码响应{
val prometheusContentType:ContentType.NonBinary={
ContentType.parse(“text/plain;version=0.0.4;charset=utf-8”).right.get.asInstanceOf[ContentType.NonBinary]
}
Kamon.gauge(“metrics_called”).increment()
完整的(
HttpResponse(
状态=状态代码。正常,
entity=HttpEntity(prometheusContentType,reporter.scrapeData())
)
)
}
}
或者使用代码为任何传入的http请求提供度量

akka.http.scaladsl
.Http(actorSystem)
.bindandlesync(
_ => {
Kamon.gauge(“metrics_called”).increment()
HttpResponse(
状态=状态代码。正常,
entity=HttpEntity(prometheusContentType,reporter.scrapeData())
)
},
"0.0.0.0",
9015
)

如果您收到空白页面,请确保
Kamon
收集系统中的一些指标。例如,您可以通过在http路由中添加
Kamon.gauge(“metrics_called”).increment()
来测试这一点。

我试图从Intellij运行Main,这就是我没有获得指标的原因。根据@Ivan Stanislavciuc的建议,我尝试了
sbt运行
,但它成功了。

仍然加载了一个空页面。我通过添加Kamon.counter(“app.orders.sent”).increment()尝试了这一点,我在Kamon prometheus embedded server中看到了这一点。我已经在plugins.sbt中添加了以下几行。解析器+=解析器.bintrayRepo(“kamon io”,“sbt插件”)添加SBTPlugin(“io.kamon”%”sbt aspectj runner“%”1.1.0),这是一个非常有用的观点。我一直在运行main。在运行sbt时,我认为它会工作。现在我在控制台中看到一些错误。不。我正在使用这些库
“io.kamon”%%“kamon core”%%“1.0.0”
“io.kamon”%%“kamon logback”%%“1.0.0”“io.kamon”%%“kamon-akka-2.5”%%“1.0.1”“io.kamon”%%“kamon prometheus”%%“1.0.0”如果能在投票站投票给我的答案,我会很高兴least@IvanStanislavciuc由于声誉不足15,我不允许向上投票:(.对不起,我试过了,它说“谢谢你的反馈!记录了声誉低于15的人的投票,但不会更改公开显示的帖子分数。”