2.0.11 • Published 9 years ago

boss-local v2.0.11

Weekly downloads
51
License
-
Repository
github
Last release
9 years ago

boss-local

Discuss Build Status Dependency Status Coverage Status

A interface to an instance of boss running on the same host.

Usage

Local boss instance (e.g. on the same server). If the daemon cannot be reached it will be started.

N.b. the daemon will drop to the user account specified in the config file so please ensure you have sufficient privileges to do this.

var connect = require('boss-local').connect,
  config = {
    boss: {
      rundir: '/var/run/boss',
      logdir: '/var/log/boss',
      timeout: 10000
    },
    debug: {
      daemon: false,
      cluster: false
    }
  }

connect(config, function(error, boss) {
  // we are now connected to local boss instance

  boss.listProcesses(function(error, processes) {
    // do something

    // close connection
    boss.disconnect()
  })
})

N.b. If you fail to close the connection to the daemon, your program will probably not exit.

Is Boss running?

Sometimes you don't want to start the daemon, you'd just like to know if boss is running on the current host or not.

var running = require('boss-local').running
  config = {
      boss: {
        rundir: '/var/run/boss',
        logdir: '/var/log/boss',
        timeout: 10000
      },
      debug: {
        daemon: false,
        cluster: false
      }
    }

running(config, function(isRunning) {
  if(isRunning) {
    console.info('boss is running')
  } else {
    console.info('boss is not running')
  }
}

Logging

By default boss will log messages to the console. If you wish to pass these somewhere else (or ignore them entirely, pass an additional object in to the connect function with four properties - info, warn, error, debug.

var connect = require('boss-local').connect,
  config = {
    boss: {
    rundir: '/var/run/boss',
    logdir: '/var/log/boss',
    timeout: 10000
  },
  debug: {
    daemon: false,
    cluster: false
  },
  logger = {
    info: function() {},
    warn: function() {},
    error: function() {},
    debug: function() {}
  }

connect(config, logger, function(error, boss) {
  // we are now connected to the boss instance
  ...
})

If you are making lots of connections, for convenience you may wish to bind these arguments to the function:

var connect = require('boss-local').connect,
  connect = connect.bind(null, {
    boss: {
      rundir: '/var/run/boss',
      logdir: '/var/log/boss',
      timeout: 10000
    },
    debug: {
      daemon: false,
      cluster: false
    }
  }, {
     info: function() {},
     warn: function() {},
     error: function() {},
     debug: function() {}
    }
  )

connect(function(error, boss) {
  // we are now connected to the boss instance
  ...
})

Documentation

  1. Methods
  2. Events
2.0.11

9 years ago

2.0.10

9 years ago

2.0.9

9 years ago

2.0.8

9 years ago

2.0.7

9 years ago

2.0.6

9 years ago

2.0.5

9 years ago

2.0.4

9 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.3

9 years ago

1.0.2

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago