Java 普罗米修斯在'上的刮削错误;不可读';属性

Java 普罗米修斯在'上的刮削错误;不可读';属性,java,prometheus,prometheus-java,Java,Prometheus,Prometheus Java,我遇到以下错误,这似乎是由于“不可读”属性造成的: 2020-06-23 10:02:55,104 DEBUG -- [pool-1-thread-1] i.p.j.s.io.prometheus.jmx.JmxScraper : scrape: 'DefaultDomain.ServiceDirectory:type=ServiceLocator,module=Configuration,name=Conf'_'boot.credentials': not readable |TAGS

我遇到以下错误,这似乎是由于“不可读”属性造成的:

2020-06-23 10:02:55,104 DEBUG -- [pool-1-thread-1] i.p.j.s.io.prometheus.jmx.JmxScraper     : scrape: 'DefaultDomain.ServiceDirectory:type=ServiceLocator,module=Configuration,name=Conf'_'boot.credentials': not readable |TAGS|  |MARKER|
2020-06-23 10:02:55,107 ERROR -- [pool-1-thread-1] i.p.j.s.io.prometheus.jmx.JmxCollector   : JMX scrape failed: java.lang.ClassCastException: java.lang.String cannot be cast to javax.management.Attribute
    at io.prometheus.jmx.shaded.io.prometheus.jmx.JmxScraper.scrapeBean(JmxScraper.java:156)
    at io.prometheus.jmx.shaded.io.prometheus.jmx.JmxScraper.doScrape(JmxScraper.java:117)
    at io.prometheus.jmx.shaded.io.prometheus.jmx.JmxCollector.collect(JmxCollector.java:468)
    at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.findNextElement(CollectorRegistry.java:183)
    at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.nextElement(CollectorRegistry.java:216)
    at io.prometheus.jmx.shaded.io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.nextElement(CollectorRegistry.java:137)
    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:745)

问题是,其他JMX指标似乎受到此错误的影响。这个具有不可读值的特定JMX来自外部库


感谢您的帮助。

在配置文件中添加以下行可防止出现错误:

blacklistObjectNames: ["DefaultDomain.ServiceDirectory:*"] 
然而,它确实也可以避免对JMX进行刮取