当前位置: 首页 > 知识库问答 >
问题:

JMX_exporter在Prometheus和Grafana中显示错误

赵超
2023-03-14
nohup java -javaagent:./jmx_prometheus_javaagent-0.1.0.jar=7101:config.yaml -Dorg.eclipse.jetty.server.Request.maxFormContentSize=10000000 -Xms256m -Xmx256m -Djava.io.tmpdir=epoch_temp_dir -jar jetty-runner-9.0.7.v20131107.jar --log yyyy_mm_dd-java-application-1-request.log --out yyyy_mm_dd-java-application-1-output.log --port 8091 --path /java-application-1 java-app1.war >> java-application-1.log 2>&1 &
 #cat config.yaml
---
startDelaySeconds: 0
jmxUrl: service:jmx:rmi:///jndi/rmi://127.0.0.1:7101/jmxrmi
ssl: false
lowercaseOutputName: true
lowercaseOutputLabelNames: true
rules:
- pattern: ".*"

Prometheus在状态页显示连接超时

输出日志:部署的java应用程序的

io.prometheus.jmx.shaded.io.prometheus.jmx.JmxCollector collect
SEVERE: JMX scrape failed: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.CommunicationException [Root exception is java.rmi.ConnectIOException: error du
ring JRMP connection establishment; nested exception is:
        java.net.SocketTimeoutException: Read timed out]
        at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:369)
        at javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:270)
        at io.prometheus.jmx.shaded.io.prometheus.jmx.JmxScraper.doScrape(JmxScraper.java:106)
        at io.prometheus.jmx.shaded.io.prometheus.jmx.JmxCollector.collect(JmxCollector.java:415)
        at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.findNextElement(CollectorRegistry.java:180)
        at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.nextElement(CollectorRegistry.java:213)
        at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.nextElement(CollectorRegistry.java:134)
        at io.prometheus.jmx.shaded.io.prometheus.client.exporter.common.TextFormat.write004(TextFormat.java:22)
        at io.prometheus.jmx.shaded.io.prometheus.client.exporter.HTTPServer$HTTPMetricHandler.handle(HTTPServer.java:59)
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:79)
        at sun.net.httpserver.AuthFilter.doFilter(AuthFilter.java:83)
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:82)
        at sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(ServerImpl.java:675)
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:79)
        at sun.net.httpserver.ServerImpl$Exchange.run(ServerImpl.java:647)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:748)
Caused by: javax.naming.CommunicationException [Root exception is java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is:
        java.net.SocketTimeoutException: Read timed out]
        at com.sun.jndi.rmi.registry.RegistryContext.lookup(RegistryContext.java:136)
        at com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:205)
        at javax.naming.InitialContext.lookup(InitialContext.java:417)
        at javax.management.remote.rmi.RMIConnector.findRMIServerJNDI(RMIConnector.java:1955)
        at javax.management.remote.rmi.RMIConnector.findRMIServer(RMIConnector.java:1922)
        at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:287)
        ... 17 more
Caused by: java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is:
        java.net.SocketTimeoutException: Read timed out
        at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:304)
        at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
        at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:342)
        at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
# free -h
              total        used        free      shared  buff/cache   available
Mem:           4.8G        1.9G        118M        256M        2.8G        2.3G
Swap:            0B          0B          0B
# free -h
              total        used        free      shared  buff/cache   available
Mem:           9.8G        3.7G        435M         16M        5.6G        5.7G
Swap:            0B          0B          0B

客户端服务器中的curl localhost:7101没有响应

暂时还没有答案

 类似资料:
  • 主要内容:1.Prometheus简介,2.Prometheus优势,Prometheus架构,3.安装,4.启动,5.PromSQL,6.Prometheus和grafana1.Prometheus简介 Prometheus受启发于Google的Brogmon监控系统(相似的Kubernetes是从Google的Brog系统演变而来),从2012年开始由前Google工程师在Soundcloud以开源软件的形式进行研发,并且于2015年早期对外发布早期版本。2016年5月继Kubernetes

  • 我在这个网站上用docker compose启动了Spring云数据流。 https://dataflow.spring.io/docs/installation/local/docker/ 我创建了3个应用程序,源,处理器 我跑了 当我运行docker compose-f时/docker编写。yml-f/docker创作普罗米修斯。yml,所有我的容器都按照docker compose中的指定启

  • 当我制作一个表格面板并转到“选项”选项卡时,列参数设置为自动:列及其顺序由数据查询决定。 是否有关于如何编写普罗米修斯对grafana表的查询的文档? 我的普罗米修斯数据是一个指标,有两个标签和: 我想做一张桌子,看起来像:

  • 我部署了一个AKS集群,并在监控命名空间中部署了Prometheus和Grafana。我还创建了一个入口规则,以在默认命名空间中访问这两个应用程序。为了访问这两个服务,我在默认命名空间中创建了服务作为外部名称。 我可以在默认名称空间内本地访问服务,还提供了所有必需的东西链接证书等。但我仍然无法访问它。它给了我“502坏网关错误”。 有人能帮我吗?提前谢谢你。

  • 我已经为我的spring boot应用程序配置了测微计和prometheus,我可以在endpoint/执行器/prometheus处看到以下指标(使用计时器生成): 但当我在Grafana中运行其中一个查询(针对prometheus实例配置)时,我没有看到任何结果。 这需要任何配置吗?

  • 描述 作为grafana和prometheus世界的新手,我正在努力将laravel php cli应用程序中的自定义指标添加到grafana云,最好是通过grafana代理。 情况 我在一个linux服务器上使用grafana云和他们的grafana代理,该服务器运行一个laravel php工作者,没有Web服务器。grafana代理运行node_exporter集成。我已经尝试找到一些关于如