2.0.4 • Published 6 years ago

zookeeper-commands v2.0.4

Weekly downloads
3
License
MIT
Repository
github
Last release
6 years ago

zookeeper-commands

A node.js client to run ZooKeeper Commands the four letter words.

NPM NPM

NPM version NPM downloads

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