bungeecord-prometheus-exporter
bungeecord-prometheus-exporter copied to clipboard
NoClassDefFoundError: RedisBungeeAPI
I am using the latest BungeeCord and bungeecord-prometheus-exporter version and I do have all redis bungee related settings disabled.
"redis_player_connects": "false",
"redis_player_disconnects": "false",
"redis_online_players": "false",
"redis_bungee_online_proxies": "false"
14:12:36 [INFO] [BungeeCordPrometheusExporter] redis_player_connects is disabled in the config
14:12:36 [INFO] [BungeeCordPrometheusExporter] redis_player_disconnects is disabled in the config
14:12:36 [INFO] [BungeeCordPrometheusExporter] redis_online_player is enabled in the config
14:12:36 [INFO] [BungeeCordPrometheusExporter] redis_bungee_online_proxies is disabled in the config
But I get the following error every 5 seconds:
14:17:00 [WARNING] /metrics
java.lang.NoClassDefFoundError: com/imaginarycode/minecraft/redisbungee/RedisBungeeAPI
at org.akadia.prometheus.bungeecord.metrics.RedisBungeeOnlinePlayer.doCollect(RedisBungeeOnlinePlayer.java:16)
at org.akadia.prometheus.interfaces.Metric.collect(Metric.java:22)
at org.akadia.prometheus.MetricRegistry$$Lambda$809/0x000000005407f658.accept(Unknown Source)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at org.akadia.prometheus.MetricRegistry.collectMetrics(MetricRegistry.java:26)
at org.akadia.prometheus.MetricsServer$1.handle(MetricsServer.java:43)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:822)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at org.eclipse.jetty.server.Server.handle(Server.java:563)
at org.eclipse.jetty.server.HttpChannel.lambda$handle$0(HttpChannel.java:505)
at org.eclipse.jetty.server.HttpChannel$$Lambda$808/0x000000005407ead0.dispatch(Unknown Source)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:762)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:497)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:282)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:416)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:385)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:272)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.produce(AdaptiveExecutionStrategy.java:194)
at org.eclipse.jetty.io.ManagedSelector$$Lambda$795/0x00000000b1088368.run(Unknown Source)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:934)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1078)
at java.base/java.lang.Thread.run(Thread.java:853)
A downgrade to version bungeecord-prometheus-exporter-3.1.5 fixed the error.
What was the version that was showing the error? What server do you use?
As I said, I am using the latest version of bungee prometheus exporter. And BungeeCord server
can't reproduce, what is your system language?
German
When upgrading from an old config, you are not migrated to a new config.
As observed:
"redis_online_players": "false",
14:12:36 [INFO] [BungeeCordPrometheusExporter] redis_online_player is enabled in the config
Not sure which update but one changed the value from redis_online_players
to redis_online_player
Once you change the config value from redis_online_players
to redis_online_player
it will then work correctly
Not a bug but would be nice if spigot/plugins had a solution to migrate from old configs (although you'd probably need a config version variable or something like that
Also much love to the dev for keeping this project going <3