Hi Everyone
I'm running into an issue post exporter deployment; When GET call is fired towards the embedded agent socket/port, the call is stuck and from the cassandra logs it can be seen that it tries to call a getBroadcastAddress() method from cassandra, which isnt found:
WARN [prometheus-netty-pool-0] 2024-03-05 17:50:59,016 DefaultChannelPipeline.java:1152 - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
java.lang.NoSuchMethodError: 'java.net.InetAddress org.apache.cassandra.utils.FBUtilities.getBroadcastAddress()' at com.zegelin.cassandra.exporter.InternalMetadataFactory.localBroadcastAddress(InternalMetadataFactory.java:87)
at com.zegelin.cassandra.exporter.Harvester.globalLabels(Harvester.java:283)
at com.zegelin.cassandra.exporter.netty.HttpHandler.sendMetrics(HttpHandler.java:289)
at com.zegelin.cassandra.exporter.netty.HttpHandler.channelRead0(HttpHandler.java:91)
at com.zegelin.cassandra.exporter.netty.HttpHandler.channelRead0(HttpHandler.java:36)
This most probably suggests incompatibility between the embedded agent and cassandra.
The standalone agent 0.9.12 works fine, though performance wise its ~50X slower.
Has anyone come across a similar issue or got the embedded jar to work?
What other alternatives are there for Cassandra v4 metric exposure with similar performance/overhead as the embedded one:
Thanks/Anton