2.0.4 • Published 6 years ago
zookeeper-commands v2.0.4
zookeeper-commands
A node.js client to run ZooKeeper Commands the four letter words.
Installation
npm install zookeeper-commands
Then:
var zookeeperCommands = require('zookeeper-commands');
var Options = zookeeperCommands.Options;
var Zookeeper = zookeeperCommands.Zookeeper;
Usage
With promise
var options = new Options(
/* host */ 'localhost',
/* port */ 2181,
/* timeout_ms */ 1000
);
var zookeeper = new Zookeeper(options);
zookeeper.command('ruok').then(function (data) {
console.log('data = ', data);
});
//data = { command: 'ruok', raw: 'imok', ok: true }
With callback:
zookeeper.command( 'ruok', function (err, data) {
console.log('data = ', data);
});
Typescript:
import { Zookeeper, Options } from 'zookeeper-commands';
const options = new Options(
/* host */ 'localhost',
/* port */ 2181,
/* timeout_ms */ 1000
);
const zookeeper = new Zookeeper(options);
zookeeper.command('ruok').then(function (data) {
console.log('data = ', data);
});
stat
zookeeper.command('stat').then(function (data) {
console.log('data = ', data);
});
//data = { command: 'stat',
// raw: 'Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT\nClients:\n /203.219.47.249:46775[0](queued=0,recved=1,
//sent=0)\n /203.219.47.249:15285[1](queued=0,recved=5969,sent=5969)\n\nLatency min/avg/max: 0/0/20\nReceived: 6040\nSent: 6039\n
//Connections: 2\nOutstanding: 0\nZxid: 0x100000001\nMode: follower\nNode count: 4\n',
//lines:
//[ 'Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT',
// 'Clients:',
// ' /203.219.47.249:46775[0](queued=0,recved=1,sent=0)',
// ' /203.219.47.249:15285[1](queued=0,recved=5969,sent=5969)',
// '',
// 'Latency min/avg/max: 0/0/20',
// 'Received: 6040',
// 'Sent: 6039',
// 'Connections: 2',
// 'Outstanding: 0',
// 'Zxid: 0x100000001',
// 'Mode: follower',
// 'Node count: 4',
// '' ],
//json:
//{ clients:
// [ { ip: '203.219.47.249',
// port: '46775[0]',
// queued: '0',
// received: '1',
// sent: '0' },
// { ip: '203.219.47.249',
// port: '15285[1]',
// queued: '0',
// received: '5969',
// sent: '5969' } ],
// latency: { minimum: '0', average: '0', maximum: '20' },
// zookeeperVersion: '3.4.6-1569965',
// buildDate: '02/20/2014 09:09 GMT',
// reveiced: '6040',
// sent: '6039',
// connections: '2',
// outstanding: '0',
// zxid: '0x100000001',
// mode: 'follower',
// nodeCount: '4' } }
conf
zookeeper.command('conf').then(function (data) {
console.log('data = ', data);
});
//data = {
// command: 'conf',
// raw: 'clientPort=2181\ndataDir=/tmp/zookeeper/data/version-2\ndataLogDir=/tmp/zookeeper/log/version-2\ntickTime=2000\nmaxClientCnxns=60\nminSessionTimeout=4000\nmaxSessionTimeout=40000\nserverId=1\ninitLimit=10\nsyncLimit=5\nelectionAlg=3\nelectionPort=2223\nquorumPort=2222\npeerType=0\n',
// lines:
// ['clientPort=2181',
// 'dataDir=/tmp/zookeeper/data/version-2',
// 'dataLogDir=/tmp/zookeeper/log/version-2',
// 'tickTime=2000',
// 'maxClientCnxns=60',
// 'minSessionTimeout=4000',
// 'maxSessionTimeout=40000',
// 'serverId=1',
// 'initLimit=10',
// 'syncLimit=5',
// 'electionAlg=3',
// 'electionPort=2223',
// 'quorumPort=2222',
// 'peerType=0',
// ''],
// json:
// {
// clientPort: '2181',
// dataDir: '/tmp/zookeeper/data/version-2',
// dataLogDir: '/tmp/zookeeper/log/version-2',
// tickTime: '2000',
// maxClientCnxns: '60',
// minSessionTimeout: '4000',
// maxSessionTimeout: '40000',
// serverId: '1',
// initLimit: '10',
// syncLimit: '5',
// electionAlg: '3',
// electionPort: '2223',
// quorumPort: '2222',
// peerType: '0'
// }
//}
cons
zookeeper.command('cons').then(function (data) {
console.log('data = ', data);
});
//data = {
// command: 'cons',
// raw: ' /203.219.47.249:55318[0](queued=0,recved=1,sent=0)\n\n',
// lines: [' /203.219.47.249:55318[0](queued=0,recved=1,sent=0)', '', ''],
// json:
// {
// clients:
// [{
// ip: '203.219.47.249',
// port: '55318[0]',
// queued: '0',
// received: '1',
// sent: '0'
// }],
// latency: {}
// }
//}
crst
zookeeper.command('crst').then(function (data) {
console.log('data = ', data);
});
//data = { command: 'crst', raw: 'Connection stats reset.\n' }
dump
zookeeper.command('dump').then(function (data) {
console.log('data = ', data);
});
//data = {
// command: 'dump',
// raw: 'SessionTracker dump:\nSession Sets (4):\n0 expire at Sat Oct 24 05:56:22 UTC 2015:\n0 expire at Sat Oct 24 05:56:24 UTC 2015:\n0 expire at Sat Oct 24 05:56:28 UTC 2015:\n2 expire at Sat Oct 24 05:56:30 UTC 2015:\n\t0x150982bb5b90001\n\t0x150982bb5b90000\nephemeral nodes dump:\nSessions with Ephemerals (2):\n0x150982bb5b90001:\n\t/node3\n0x150982bb5b90000:\n\t/node1\n\t/node2\n',
// lines:
// ['SessionTracker dump:',
// 'Session Sets (4):',
// '0 expire at Sat Oct 24 05:56:22 UTC 2015:',
// '0 expire at Sat Oct 24 05:56:24 UTC 2015:',
// '0 expire at Sat Oct 24 05:56:28 UTC 2015:',
// '2 expire at Sat Oct 24 05:56:30 UTC 2015:',
// '\t0x150982bb5b90001',
// '\t0x150982bb5b90000',
// 'ephemeral nodes dump:',
// 'Sessions with Ephemerals (2):',
// '0x150982bb5b90001:',
// '\t/node3',
// '0x150982bb5b90000:',
// '\t/node1',
// '\t/node2',
// '']
//}
envi
zookeeper.command('envi').then(function (data) {
console.log('data = ', data);
});
//data = {
// command: 'envi',
// raw: 'Environment:\nzookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 GMT\nhost.name=0c18fd6765c0\njava.version=1.7.0_79\njava.vendor=Oracle Corporation\njava.home=/usr/lib/jvm/java-7-openjdk-amd64/jre\njava.class.path=/opt/zookeeper/bin/../build/classes:/opt/zookeeper/bin/../build/lib/*.jar:/opt/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/opt/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/opt/zookeeper/bin/../lib/netty-3.7.0.Final.jar:/opt/zookeeper/bin/../lib/log4j-1.2.16.jar:/opt/zookeeper/bin/../lib/jline-0.9.94.jar:/opt/zookeeper/bin/../zookeeper-3.4.6.jar:/opt/zookeeper/bin/../src/java/lib/*.jar:/opt/zookeeper/bin/../conf:\njava.library.path=/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib\njava.io.tmpdir=/tmp\njava.compiler=<NA>\nos.name=Linux\nos.arch=amd64\nos.version=3.13.0-53-generic\nuser.name=root\nuser.home=/root\nuser.dir=/\n',
// lines:
// ['Environment:',
// 'zookeeper.version=3.4.6-1569965, built on 02/20/2014 09:09 GMT',
// 'host.name=0c18fd6765c0',
// 'java.version=1.7.0_79',
// 'java.vendor=Oracle Corporation',
// 'java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre',
// 'java.class.path=/opt/zookeeper/bin/../build/classes:/opt/zookeeper/bin/../build/lib/*.jar:/opt/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/opt/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/opt/zookeeper/bin/../lib/netty-3.7.0.Final.jar:/opt/zookeeper/bin/../lib/log4j-1.2.16.jar:/opt/zookeeper/bin/../lib/jline-0.9.94.jar:/opt/zookeeper/bin/../zookeeper-3.4.6.jar:/opt/zookeeper/bin/../src/java/lib/*.jar:/opt/zookeeper/bin/../conf:',
// 'java.library.path=/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib',
// 'java.io.tmpdir=/tmp',
// 'java.compiler=<NA>',
// 'os.name=Linux',
// 'os.arch=amd64',
// 'os.version=3.13.0-53-generic',
// 'user.name=root',
// 'user.home=/root',
// 'user.dir=/',
// ''],
// json:
// {
// 'Environment:': undefined,
// 'zookeeper.version': '3.4.6-1569965, built on 02/20/2014 09:09 GMT',
// 'host.name': '0c18fd6765c0',
// 'java.version': '1.7.0_79',
// 'java.vendor': 'Oracle Corporation',
// 'java.home': '/usr/lib/jvm/java-7-openjdk-amd64/jre',
// 'java.class.path': '/opt/zookeeper/bin/../build/classes:/opt/zookeeper/bin/../build/lib/*.jar:/opt/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/opt/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/opt/zookeeper/bin/../lib/netty-3.7.0.Final.jar:/opt/zookeeper/bin/../lib/log4j-1.2.16.jar:/opt/zookeeper/bin/../lib/jline-0.9.94.jar:/opt/zookeeper/bin/../zookeeper-3.4.6.jar:/opt/zookeeper/bin/../src/java/lib/*.jar:/opt/zookeeper/bin/../conf:',
// 'java.library.path': '/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib',
// 'java.io.tmpdir': '/tmp',
// 'java.compiler': '<NA>',
// 'os.name': 'Linux',
// 'os.arch': 'amd64',
// 'os.version': '3.13.0-53-generic',
// 'user.name': 'root',
// 'user.home': '/root',
// 'user.dir': '/'
// }
//}
srst
zookeeper.command('srst').then(function (data) {
console.log('data = ', data);
});
//data = { command: 'srst', raw: 'Server stats reset.\n' }
srvr
zookeeper.command('srvr').then(function (data) {
console.log('data = ', data);
});
//data = {
// command: 'srvr',
// raw: 'Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT\nLatency min/avg/max: 0/0/0\nReceived: 4\nSent: 4\nConnections: 1\nOutstanding: 0\nZxid: 0x10000000b\nMode: leader\nNode count: 7\n',
// lines:
// ['Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT',
// 'Latency min/avg/max: 0/0/0',
// 'Received: 4',
// 'Sent: 4',
// 'Connections: 1',
// 'Outstanding: 0',
// 'Zxid: 0x10000000b',
// 'Mode: leader',
// 'Node count: 7',
// ''],
// json:
// {
// zookeeperVersion: '3.4.6-1569965, built on 02/20/2014 09',
// latencyMinAvgMax: '0/0/0',
// received: '4',
// sent: '4',
// connections: '1',
// outstanding: '0',
// zxid: '0x10000000b',
// mode: 'leader',
// nodeCount: '7'
// }
//}
wchs
zookeeper.command('wchs').then(function (data) {
console.log('data = ', data);
});
//data = {
// command: 'wchs',
// raw: '0 connections watching 0 paths\nTotal watches:0\n',
// lines: ['0 connections watching 0 paths', 'Total watches:0', ''],
// json: { totalWatches: '0' }
//}
wchc
zookeeper.command('wchc').then(function (data) {
console.log('data = ', data);
});
//data = { command: 'wchc', raw: '\n' }
wchp
zookeeper.command('wchp').then(function (data) {
console.log('data = ', data);
});
//data = { command: 'wchp', raw: '\n' }
mntr
zookeeper.command('mntr').then(function (data) {
console.log('data = ', data);
});
//data = { command: 'mntr',
// raw: 'zk_version\t3.4.6-1569965, built on 02/20/2014 09:09 GMT\nzk_avg_latency\t0\nzk_max_latency\t0\nzk_min_latency\t0\nzk_packets_received\t13\nzk_packets_sent\t13\nzk_num_alive_connections\t1\nzk_outstanding_requests\t0\nzk_server_state\tleader\nzk_znode_count\t7\nzk_watch_count\t0\nzk_ephemerals_count\t3\nzk_approximate_data_size\t60\nzk_open_file_descriptor_count\t35\nzk_max_file_descriptor_count\t1048576\nzk_followers\t2\nzk_synced_followers\t2\nzk_pending_syncs\t0\n',
//lines:
//[ 'zk_version\t3.4.6-1569965, built on 02/20/2014 09:09 GMT',
// 'zk_avg_latency\t0',
// 'zk_max_latency\t0',
// 'zk_min_latency\t0',
// 'zk_packets_received\t13',
// 'zk_packets_sent\t13',
// 'zk_num_alive_connections\t1',
// 'zk_outstanding_requests\t0',
// 'zk_server_state\tleader',
// 'zk_znode_count\t7',
// 'zk_watch_count\t0',
// 'zk_ephemerals_count\t3',
// 'zk_approximate_data_size\t60',
// 'zk_open_file_descriptor_count\t35',
// 'zk_max_file_descriptor_count\t1048576',
// 'zk_followers\t2',
// 'zk_synced_followers\t2',
// 'zk_pending_syncs\t0',
// '' ],
//json:
//{ zkVersion: '3.4.6-1569965, built on 02/20/2014 09:09 GMT',
// zkAvgLatency: '0',
// zkMaxLatency: '0',
// zkMinLatency: '0',
// zkPacketsReceived: '13',
// zkPacketsSent: '13',
// zkNumAliveConnections: '1',
// zkOutstandingRequests: '0',
// zkServerState: 'leader',
// zkZnodeCount: '7',
// zkWatchCount: '0',
// zkEphemeralsCount: '3',
// zkApproximateDataSize: '60',
// zkOpenFileDescriptorCount: '35',
// zkMaxFileDescriptorCount: '1048576',
// zkFollowers: '2',
// zkSyncedFollowers: '2',
// zkPendingSyncs: '0' } }
Usage Client
see ClientREADME.md
License
MIT
2.0.4
6 years ago
2.0.3
9 years ago
2.0.2
9 years ago
2.0.1
9 years ago
2.0.0
9 years ago
1.0.8
9 years ago
1.0.7
10 years ago
1.0.6
10 years ago
1.0.5
10 years ago
1.0.4
10 years ago
1.0.3
10 years ago
1.0.2
10 years ago
1.0.1
10 years ago
1.0.0
10 years ago
0.0.6
10 years ago
0.0.5
10 years ago
0.0.4
10 years ago
0.0.3
10 years ago
0.0.2
10 years ago
0.0.1
10 years ago