I guess this was a response to another thread?

> On 26 Oct 2021, at 18:03, Prasad Kommoju <pkomm...@futurewei.com> wrote:
> 
> Here is the excerpt of the code:
>  
> It is a thinclient. Since I use this also to benchmark with millions of 
> entries, I keep committing after a batch of rows, which is why there is a 
> commit in the loop.
>  
> final String tblName = "PersonSQL";
> 
>         final String schName = "\"PersonSQL\"";
>         final String scanCacheName = "PersonSCN";
>         final String sqlCacheName = 
> "com.futurewei.sfqx.SqlFieldQueryXML.PersonSQL";
> …
>         try {
>             // SQL Version:
>             ClientCache<String, PersonSQL> personSQLCache = 
> client.cache(sqlCacheName);
> 
> …
>             PersonSQL[] samplePers = new PersonSQL[numEntries];
>             long[] qryTimes = new long[sample];
>             long[] resCount = new long[sample];
>             ClientTransaction ttxn = null;
>             Boolean noTxn = true;
>             int i, j = 0;
>             if (doPopulate) {
>                 long popStart = System.nanoTime();
>                 for (i = 0; i < numEntries; ++i) {
>                     try {
>                         if (noTxn) {
>                             ttxn = client.transactions().txStart();
>                             noTxn = false;
>                         }
>                         PersonSQL person = createPerson(rnd);
>                         personSQLCache.put(person.getSsn(), person);
> 
>                    …
>                         if ((i % sample) == 0) {
>                             samplePers[j++] = person;
>                             ttxn.commit();
>                             noTxn = true;
>                         }
>                     } catch (Exception e) {
>                         System.out.println("Failed to add entries to 
> PersonCache" + e.getMessage());
>                         ttxn.rollback();
>                         throw e;
>                     }
>                 }
>  
>  
>  
> ---------------------
> Regards,
> Prasad Kommoju
>  
> From: Stephen Darlington <stephen.darling...@gridgain.com> 
> Sent: Tuesday, October 26, 2021 1:42 AM
> To: user@ignite.apache.org
> Subject: Re: Ignite 2.8.1 - JMX scrape failed: 
> java.lang.IllegalArgumentException
>  
> Why not switch to the OpenCensus exporter for Ignite?
>  
> https://ignite.apache.org/docs/latest/monitoring-metrics/new-metrics-system#opencensus
>  
> <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fignite.apache.org%2Fdocs%2Flatest%2Fmonitoring-metrics%2Fnew-metrics-system%23opencensus&data=04%7C01%7Cpkommoju%40futurewei.com%7C25635cbc24554b6c872108d9985c8689%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637708345441910602%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=b9Ezq3Ttm%2FrCmIoplIg1t8SoJJ3gLA4yJqu7OE7czQc%3D&reserved=0>
>  
> For the JMX exporter, there appears to be a blacklistObjectNames you can use 
> to exclude certain metrics.
>  
> Regards,
> Stephen
> 
> 
> On 25 Oct 2021, at 18:44, Devin Bost <devin.b...@gmail.com 
> <mailto:devin.b...@gmail.com>> wrote:
>  
> Hi,
>  
> I noticed that we're getting a flood of these exceptions, and it looks like 
> Ignite 2.8.1 claimed to fix the issue. However, we are running 2.8.1, and 
> we're still seeing the issue.
>  
> It looks to be the same issue that was discussed here: 
> https://github.com/prometheus/jmx_exporter/issues/501 
> <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fprometheus%2Fjmx_exporter%2Fissues%2F501&data=04%7C01%7Cpkommoju%40futurewei.com%7C25635cbc24554b6c872108d9985c8689%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637708345441920560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Rl%2FyNpWpMnqrCfQZy6eXu1SxnB%2FS9kcUGndWslr5D1o%3D&reserved=0>
> and it appears to be related to this issue as well: 
> https://github.com/prometheus/jmx_exporter/issues/483 
> <https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fprometheus%2Fjmx_exporter%2Fissues%2F483&data=04%7C01%7Cpkommoju%40futurewei.com%7C25635cbc24554b6c872108d9985c8689%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C637708345441920560%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=IzOGC7Mql08DrUxFCKJZsOxGMFUvjEqDiBCTQrhdbaw%3D&reserved=0>
>  
> Here's the stack trace:
>  
> Oct 25, 2021 5:40:37 PM io.prometheus.jmx.JmxCollector collect
> SEVERE: 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.ComputeJobView,rowType=javax.management.openmbean.CompositeType(name=org.apache.ignite.spi.systemview.view.ComputeJobView,items=((itemName=affinityCacheIds,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=affinityPartitionId,itemType=javax.management.openmbean.SimpleType(name=java.lang.Integer)),(itemName=createTime,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)),(itemName=executorName,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=finishTime,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)),(itemName=id,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=isFinishing,itemType=javax.management.openmbean.SimpleType(name=java.lang.Boolean)),(itemName=isInternal,itemType=javax.management.openmbean.SimpleType(name=java.lang.Boolean)),(itemName=isStarted,itemType=javax.management.openmbean.SimpleType(name=java.lang.Boolean)),(itemName=isTimedOut,itemType=javax.management.openmbean.SimpleType(name=java.lang.Boolean)),(itemName=originNodeId,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=sessionId,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=startTime,itemType=javax.management.openmbean.SimpleType(name=java.lang.Long)),(itemName=state,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=systemViewRowId,itemType=javax.management.openmbean.SimpleType(name=java.lang.Integer)),(itemName=taskClassName,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)),(itemName=taskName,itemType=javax.management.openmbean.SimpleType(name=java.lang.String)))),indexNames=(systemViewRowId)),contents={})
> at 
> java.management/javax.management.AttributeList.adding(AttributeList.java:328)
> at 
> java.management/javax.management.AttributeList.adding(AttributeList.java:335)
> at 
> java.management/javax.management.AttributeList.asList(AttributeList.java:165)
> at io.prometheus.jmx.JmxScraper.scrapeBean(JmxScraper.java:160)
> at io.prometheus.jmx.JmxScraper.doScrape(JmxScraper.java:117)
> at io.prometheus.jmx.JmxCollector.collect(JmxCollector.java:542)
> at 
> io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.findNextElement(CollectorRegistry.java:183)
> at 
> io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.nextElement(CollectorRegistry.java:216)
> at 
> io.prometheus.client.CollectorRegistry$MetricFamilySamplesEnumeration.nextElement(CollectorRegistry.java:137)
> at 
> io.prometheus.client.exporter.common.TextFormat.write004(TextFormat.java:22)
> at 
> io.prometheus.client.exporter.HTTPServer$HTTPMetricHandler.handle(HTTPServer.java:59)
> at jdk.httpserver/com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:77)
> at jdk.httpserver/sun.net.httpserver.AuthFilter.doFilter(AuthFilter.java:82)
> at jdk.httpserver/com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:80)
> at 
> jdk.httpserver/sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(ServerImpl.java:692)
> at jdk.httpserver/com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:77)
> at 
> jdk.httpserver/sun.net.httpserver.ServerImpl$Exchange.run(ServerImpl.java:664)
> at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:829)
>  
> How do we resolve this exception? 
>  
> Devin G. Bost


Reply via email to