RocketMQ可视化控制台(Rocketmq-console)本地无法连接阿里云RocketMQ服务

[2020-10-21 15:40:30.295]  INFO closeChannel: close the connection to remote address[118.190.213.148:80] result: true
[2020-10-21 15:40:30.296] ERROR Unexpected error occurred in scheduled task
java.lang.RuntimeException: org.apache.rocketmq.client.exception.MQClientException: CODE: 1  DESC: java.lang.NullPointerException, com.alibaba.ons.open.auth.resource.AccessResource.parseAccessResource(AccessResource.java:147)
For more information, please visit the url, http://rocketmq.apache.org/docs/faq/
    at com.google.common.base.Throwables.propagate(Throwables.java:160)
    at org.apache.rocketmq.console.task.DashboardCollectTask.collectTopic(DashboardCollectTask.java:157)
    at org.apache.rocketmq.console.task.DashboardCollectTask$$FastClassBySpringCGLIB$$c818b8cd.invoke(<generated>)
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:769)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
    at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:88)
    at org.apache.rocketmq.console.aspect.admin.MQAdminAspect.aroundMQAdminMethod(MQAdminAspect.java:63)
    at sun.reflect.GeneratedMethodAccessor77.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:644)
    at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:633)
    at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
    at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:93)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689)
    at org.apache.rocketmq.console.task.DashboardCollectTask$$EnhancerBySpringCGLIB$$68868ba1.collectTopic(<generated>)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:84)
    at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
    at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266)
    at java.util.concurrent.FutureTask.run(FutureTask.java)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
    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)

以上是通过本地启动Rocketmq-console服务,远程连接阿里云RocketMQ服务的报错信息。

关键错误信息:

INFO closeChannel: close the connection to remote address[118.190.213.148:80] result: true
ERROR Unexpected error occurred in scheduled task
java.lang.RuntimeException: org.apache.rocketmq.client.exception.MQClientException: CODE: 1  DESC: java.lang.NullPointerException, com.alibaba.ons.open.auth.resource.AccessResource.parseAccessResource(AccessResource.java:147)
For more information, please visit the url, http://rocketmq.apache.org/docs/faq

搞这个也是因为阿里云的RocketMQ监控平台没有开源的Rocket可视化控制台看起来美观舒服,查找问题方便

|> 开源可视化控制平台项目地址:https://github.com/apache/rocketmq-exporter

在github项目的一个issues找到原因

该Rocket可视化控制台仅仅只适用于开源的rocketMQ版本!阿里云RocketMQ目前貌似只可以查看自己的监控平台。。。

|> 原issues地址https://github.com/apache/rocketmq-exporter/issues/27

扩展:

消息队列RocketMQ版与自建开源RocketMQ成本对比:https://help.aliyun.com/document_detail/152087.html

原文地址:https://www.cnblogs.com/qukun/p/13852975.html