[
https://issues.apache.org/jira/browse/ZOOKEEPER-3784?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Karthik Prasad updated ZOOKEEPER-3784:
--------------------------------------
Description:
Enabled Prometheus Metrics Server on zookeeper that is running on
OpenJDK-11.0.5 with minimal modules enabled. Server crashed with below error.
{code:java}
2020-04-04 05:17:32,310 [myid:1] - INFO [main:AbstractConnector@330] - Started
ServerConnector@7c711375{HTTP/1.1,[http/1.1]} {0.0.0.0:7000} 2020-04-04
05:17:32,310 [myid:1] - INFO [main:AbstractConnector@330] - Started
ServerConnector@7c711375{HTTP/1.1,[http/1.1]} {0.0.0.0:7000} 2020-04-04
05:17:32,311 [myid:1] - INFO [main:Server@399] - Started @897ms2020-04-04
05:17:32,321 [myid:1] - INFO [main:ServerMetrics@62] - ServerMetrics
initialized with provider
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider@5efa40fe2020-04-04
05:17:32,334 [myid:1] - INFO [main:AbstractConnector@380] - Stopped
ServerConnector@7c711375{HTTP/1.1,[http/1.1]} {0.0.0.0:7000} 2020-04-04
05:17:32,335 [myid:1] - INFO [main:ContextHandler@1016] - Stopped
o.e.j.s.ServletContextHandler@4c163e3{/,null,UNAVAILABLE}Exception in thread
"main" java.lang.NoClassDefFoundError: sun/misc/Unsafe at
io.prometheus.client.Striped64.getUnsafe(Striped64.java:316) at
io.prometheus.client.Striped64.<clinit>(Striped64.java:296) at
io.prometheus.client.Summary$Child.<init>(Summary.java:260) at
io.prometheus.client.Summary$Child.<init>(Summary.java:198) at
io.prometheus.client.Summary.newChild(Summary.java:159) at
io.prometheus.client.Summary.newChild(Summary.java:81) at
io.prometheus.client.SimpleCollector.labels(SimpleCollector.java:76) at
io.prometheus.client.SimpleCollector.initializeNoLabelsChild(SimpleCollector.java:107)
at io.prometheus.client.Summary.<init>(Summary.java:92) at
io.prometheus.client.Summary$Builder.create(Summary.java:136) at
io.prometheus.client.Summary$Builder.create(Summary.java:95) at
io.prometheus.client.SimpleCollector$Builder.register(SimpleCollector.java:245)
at
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$PrometheusSummary.<init>(PrometheusMetricsProvider.java:348)
at
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$Context.lambda$getSummary$2(PrometheusMetricsProvider.java:235)
at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown
Source) at
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$Context.getSummary(PrometheusMetricsProvider.java:231)
at org.apache.zookeeper.server.ServerMetrics.<init>(ServerMetrics.java:70) at
org.apache.zookeeper.server.ServerMetrics.metricsProviderInitialized(ServerMetrics.java:63)
at
org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:161)
at
org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:136)
at
org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:90)Caused
by: java.lang.ClassNotFoundException: sun.misc.Unsafe at
java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source) at
java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown
Source) at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ... 21
more
{code}
When I enabled jdk.unsupported module, zookeeper server started and able to
access prometheus metrics. However jdk.unsupported is deprecated.
was:
Enabled Prometheus Metrics Server on zookeeper that is running on
OpenJDK-11.0.5 with minimal modules enabled. Server crashed with below error.
{code:java}
// code placeholder
{code}
2020-04-04 05:17:32,310 [myid:1] - INFO [main:AbstractConnector@330] - Started
ServerConnector@7c711375\{HTTP/1.1,[http/1.1]}{0.0.0.0:7000}2020-04-04
05:17:32,310 [myid:1] - INFO [main:AbstractConnector@330] - Started
ServerConnector@7c711375\{HTTP/1.1,[http/1.1]}{0.0.0.0:7000}2020-04-04
05:17:32,311 [myid:1] - INFO [main:Server@399] - Started @897ms2020-04-04
05:17:32,321 [myid:1] - INFO [main:ServerMetrics@62] - ServerMetrics
initialized with provider
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider@5efa40fe2020-04-04
05:17:32,334 [myid:1] - INFO [main:AbstractConnector@380] - Stopped
ServerConnector@7c711375\{HTTP/1.1,[http/1.1]}{0.0.0.0:7000}2020-04-04
05:17:32,335 [myid:1] - INFO [main:ContextHandler@1016] - Stopped
o.e.j.s.ServletContextHandler@4c163e3\{/,null,UNAVAILABLE}Exception in thread
"main" java.lang.NoClassDefFoundError: sun/misc/Unsafe at
io.prometheus.client.Striped64.getUnsafe(Striped64.java:316) at
io.prometheus.client.Striped64.<clinit>(Striped64.java:296) at
io.prometheus.client.Summary$Child.<init>(Summary.java:260) at
io.prometheus.client.Summary$Child.<init>(Summary.java:198) at
io.prometheus.client.Summary.newChild(Summary.java:159) at
io.prometheus.client.Summary.newChild(Summary.java:81) at
io.prometheus.client.SimpleCollector.labels(SimpleCollector.java:76) at
io.prometheus.client.SimpleCollector.initializeNoLabelsChild(SimpleCollector.java:107)
at io.prometheus.client.Summary.<init>(Summary.java:92) at
io.prometheus.client.Summary$Builder.create(Summary.java:136) at
io.prometheus.client.Summary$Builder.create(Summary.java:95) at
io.prometheus.client.SimpleCollector$Builder.register(SimpleCollector.java:245)
at
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$PrometheusSummary.<init>(PrometheusMetricsProvider.java:348)
at
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$Context.lambda$getSummary$2(PrometheusMetricsProvider.java:235)
at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown
Source) at
org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$Context.getSummary(PrometheusMetricsProvider.java:231)
at org.apache.zookeeper.server.ServerMetrics.<init>(ServerMetrics.java:70) at
org.apache.zookeeper.server.ServerMetrics.metricsProviderInitialized(ServerMetrics.java:63)
at
org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:161)
at
org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:136)
at
org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:90)Caused
by: java.lang.ClassNotFoundException: sun.misc.Unsafe at
java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source) at
java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown
Source) at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ... 21 more
When I enabled jdk.unsupported module, zookeeper server started and able to
access prometheus metrics. However jdk.unsupported is deprecated.
> PrometheusProvider uses deprecated sun.misc.Unsafe
> --------------------------------------------------
>
> Key: ZOOKEEPER-3784
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3784
> Project: ZooKeeper
> Issue Type: Bug
> Components: metric system
> Affects Versions: 3.6.0
> Reporter: Karthik Prasad
> Priority: Minor
> Attachments: zoo.log
>
>
> Enabled Prometheus Metrics Server on zookeeper that is running on
> OpenJDK-11.0.5 with minimal modules enabled. Server crashed with below error.
>
>
> {code:java}
> 2020-04-04 05:17:32,310 [myid:1] - INFO [main:AbstractConnector@330] -
> Started ServerConnector@7c711375{HTTP/1.1,[http/1.1]} {0.0.0.0:7000}
> 2020-04-04 05:17:32,310 [myid:1] - INFO [main:AbstractConnector@330] -
> Started ServerConnector@7c711375{HTTP/1.1,[http/1.1]} {0.0.0.0:7000}
> 2020-04-04 05:17:32,311 [myid:1] - INFO [main:Server@399] - Started
> @897ms2020-04-04 05:17:32,321 [myid:1] - INFO [main:ServerMetrics@62] -
> ServerMetrics initialized with provider
> org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider@5efa40fe2020-04-04
> 05:17:32,334 [myid:1] - INFO [main:AbstractConnector@380] - Stopped
> ServerConnector@7c711375{HTTP/1.1,[http/1.1]} {0.0.0.0:7000} 2020-04-04
> 05:17:32,335 [myid:1] - INFO [main:ContextHandler@1016] - Stopped
> o.e.j.s.ServletContextHandler@4c163e3{/,null,UNAVAILABLE}Exception in thread
> "main" java.lang.NoClassDefFoundError: sun/misc/Unsafe at
> io.prometheus.client.Striped64.getUnsafe(Striped64.java:316) at
> io.prometheus.client.Striped64.<clinit>(Striped64.java:296) at
> io.prometheus.client.Summary$Child.<init>(Summary.java:260) at
> io.prometheus.client.Summary$Child.<init>(Summary.java:198) at
> io.prometheus.client.Summary.newChild(Summary.java:159) at
> io.prometheus.client.Summary.newChild(Summary.java:81) at
> io.prometheus.client.SimpleCollector.labels(SimpleCollector.java:76) at
> io.prometheus.client.SimpleCollector.initializeNoLabelsChild(SimpleCollector.java:107)
> at io.prometheus.client.Summary.<init>(Summary.java:92) at
> io.prometheus.client.Summary$Builder.create(Summary.java:136) at
> io.prometheus.client.Summary$Builder.create(Summary.java:95) at
> io.prometheus.client.SimpleCollector$Builder.register(SimpleCollector.java:245)
> at
> org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$PrometheusSummary.<init>(PrometheusMetricsProvider.java:348)
> at
> org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$Context.lambda$getSummary$2(PrometheusMetricsProvider.java:235)
> at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown
> Source) at
> org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider$Context.getSummary(PrometheusMetricsProvider.java:231)
> at org.apache.zookeeper.server.ServerMetrics.<init>(ServerMetrics.java:70)
> at
> org.apache.zookeeper.server.ServerMetrics.metricsProviderInitialized(ServerMetrics.java:63)
> at
> org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:161)
> at
> org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:136)
> at
> org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:90)Caused
> by: java.lang.ClassNotFoundException: sun.misc.Unsafe at
> java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source) at
> java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown
> Source) at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ... 21
> more
> {code}
>
> When I enabled jdk.unsupported module, zookeeper server started and able to
> access prometheus metrics. However jdk.unsupported is deprecated.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)