Hello, Zipporah.

AFAIK Zabbix doesn’t support scraping of the tabular data JMX beans.
We add this kind of beans in 2.8.

It’s a system view beans [1]

By default, system views exported in the form of JMX beans and SQL views.

You can:

a. Disable system view JMX exporter via configuration 
IgniteConfiguration#setSystemViewExporterSpi
You may want to keep SQL exporter to be able to observe system views via an SQL 
interface.

This can be done like that

IgniteConfiguration cfg = new IgniteConfiguration();

cfg.setSystemViewExporterSpi(new SqlViewExporterSpi());


b. You can filter system views bean in Zabbix exporter [2]

[1] https://apacheignite.readme.io/docs/system-views
[2] 
https://www.zabbix.com/documentation/current/manual/discovery/low_level_discovery/jmx

> 8 апр. 2020 г., в 00:52, zipporah <[email protected]> написал(а):
> 
> Hi,
> 
> I am new to Ignite and have a question regarding prometheus jmx exporter.
> 
> So I'm integrating Apache ignite with Apache Spark to accelerate the
> performance of Spark applications. As part of monitoring, I'm using
> prometheus jmx exporter to export metrics to prometheus.
> 
> My prometheus and metrics configurations are like this:
> https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/blob/master/spark-docker/conf/prometheus.yaml
> 
> This is working fine with ignite 2.7.x. Starting from ignite 2.8, in spark
> application log I'm seeing following errors:
> 
> 2020-04-06T16:26:01.595 [pool-1-thread-2hread] ERROR
> prometheus.jmx.shaded.io.prometheus.jmx.JmxCollector - JMX scrape failed:
> java.lang.IllegalArgumentException: Not an Attribute:
> javax.management.openmbean.TabularDataSupport(tabularType=javax.management.openmbean.TabularType(name=*org.apache.ignite.spi.systemview.view.ClientConnectionView*,rowType=javax.management.openmbean.CompositeType(name=org.apache.ignite.spi.systemview.view.ClientConnectionView,items=((itemName=connectionId,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)),(itemName=localAddress,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=remoteAddress,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=systemViewRowId,itemType=javax.management.openmbean.SimpleType(name=java.lang.Integer)),(itemName=type,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=user,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=version,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)))),indexNames=(systemViewRowId)),contents={})
> at javax.management.AttributeList.adding(AttributeList.java:328)
> at javax.management.AttributeList.adding(AttributeList.java:335)
> at javax.management.AttributeList.asList(AttributeList.java:165)
> 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:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> 
> 
> I have no clue why this is happening. Is there anything wrong with the mbean
> exposed by ignite?
> 
> Thanks,
> Zippo
> 
> 
> 
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Reply via email to