是否有任何库允许我从shell脚本调用JMX MBean方法.我们通过JMX公开了一些操作/管理命令,我们可以让我们的管理员使用JConsole或VisualVM,但有些任务最好留给自动化.在那个自动化中,我们希望能够在运行的服务器上调用JMX MBean方法,最好是从shell脚本调用.
我通过添加在Kafka经纪人上启用了JMX
KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=<server_IP>
-Djava.net.preferIPv4Stack=true"
Run Code Online (Sandbox Code Playgroud)
但是,当我使用'kafka.tools.JmxTool'来获取指标时,它会输出不是预期行为的Unix时间戳.
./bin/kafka-run-class.sh kafka.tools.JmxTool \
--object-name 'kafka.server:type=BrokerTopicMetrics,name=AllTopicsMessagesInPerSec' \
--jmx-url "service:jmx:rmi:///jndi/rmi://<server_IP>:9111/jmxrmi"
Run Code Online (Sandbox Code Playgroud)
上面的命令打印出Unix时间戳.我该如何解决这个问题,并打印出指标?