You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "jahar (JIRA)" <ji...@apache.org> on 2018/06/28 06:39:00 UTC
[jira] [Created] (ZOOKEEPER-3070) Not Able to Change Zookeeper
Logging via JMX Call
jahar created ZOOKEEPER-3070:
--------------------------------
Summary: Not Able to Change Zookeeper Logging via JMX Call
Key: ZOOKEEPER-3070
URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3070
Project: ZooKeeper
Issue Type: Improvement
Components: jmx
Affects Versions: 3.4.5
Environment: Using Java 8 for writing standalone code to update the MBeans in zookeeper which is running in Windows machine for POC purpose.
Zookeeper Version is : 3.4.5
Reporter: jahar
Attachments: jconsole.JPG, zkpg.JPG
Hi,
I wanted to change the logging level of zookeeper dynamically via a JMX call programmatically. Apache Zookeeper official page specifies that it is possible to change the Mbeans via JMX calls and I have verified this through JConsole also.
!zkpg.JPG!
But the problem is that I am not able to update the Mbeans related to log4j through my code. I do see an API which can be used to access the Mbeans related to Object "org.apache.ZooKeeperService:name0=StandaloneServer_port-1" below is the screengrab of Jconsole and my code:
!jconsole.JPG!
Here goes my Code:
{quote}public static void main(String[] args) throws Exception
{
JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:2167/jmxrmi");
JMXConnector jmxConnector = JMXConnectorFactory.connect(url);
MBeanServerConnection mbeanServerConnection = jmxConnector.getMBeanServerConnection();
ObjectName mbeanName = new ObjectName("org.apache.ZooKeeperService:name0=StandaloneServer_port-1");
ZooKeeperServerMXBean newProxyInstance = MBeanServerInvocationHandler.newProxyInstance(mbeanServerConnection,
mbeanName, ZooKeeperServerMXBean.class, true);
System.out.println(newProxyInstance.getClientPort());
}
{quote}
I dont see any API which can be used to access and update the log4J Mbeans e.g. "root". What I want to achieve is to update the logging of zookeeper without taking a restart.
Please advice if some API is exposed to achieve this.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)