senkomsim0
v0.0.6
Published
A Minimal Node.JS Wrapper Around senkomsim0-api
Downloads
4
Maintainers
Readme
NOTE
This project is no longer maintained (at least for a while).
About
sensei is a minimal Node.JS wrapper around the sensu-api.
Installation
It’s easy to install sensei via npm:
npm install sensei;
Usage
var sensei = require('sensei');
var sensu = sensei.create({
// your sensu-api url
url: 'http://152.12.124.37:4567'
username: 'your sensu-api username',
password: 'your sensu-api password'
});
sensu.getEvents({
client: 'name-of-sensu-client',
check: 'name-of-sensu-check'
}).then(function(data) {
// Called when the API call successfully finishes.
// `data` has all the information you need.
console.log(data)
}, function(error) {
// Called when an error occurs during the API call; check the `error` object.
});
// Since all sensei methods return a promise you can do all kinds of fancy
// things that involves promises:
var Q = require('q');
Q.all([
sensu.getHealth({
consumers: 2,
messages: 4
}),
sensu.getInfo()
]).spread(function(isHealthy, sensuInfo) {
console.log(isHealthy);
console.log(sensuInfo);
}).then(function() {
return sensu.getStashes().then(function(stashes) {
console.log(stashes);
})
}, function(err) {
console.log('oops');
console.log(err);
}).fin(function() {
console.log('all done!');
});
sensei.create(options)
is a factory method that creates a sensei instance.
options
should be in the {url: url, username: username, password: password}
format.
The created object has the following methods:
getInfo()
(returns aPromise
)getChecks(name)
(name
is optional; returns aPromise
)getClients(options)
(returns aPromise
)getEvents(options)
(returns aPromise
)getHealth(options)
(returns aPromise
)getStashes(options)
(returns aPromise
)
The options
argument that’s passed to the methods expect attribute names, values, and data types that have been described in the sensu API.
Wanna Help?
If you find something missing, please file an issue.
If you want to contribute, see CONTRIBUTING.md.
Supported Environments
You should be able to use sensei in any platform that runs Node.JS.
Backwards Compatibility
The code is in its early alpha; and we MAY introduce breaking changes that might be backwards incompatible.
After we hit version 1.0.0, we’ll follow Semantic Versioning Standards, and only introduce breaking changes when we update the MAJOR version number.
Hint:
You can always install an older version from npm.
I’ve Found A Bug / I have an Idea!
And also you might want to see CONTRIBUTING.md.
Contact Information
License
MIT-Licensed.
See LICENSE.md.