NOTE
This project is no longer maintained (at least for a while).
If you want to be the maintainer, contact me at me@volkan.io
_/
_/_/_/ _/_/ _/_/_/ _/_/_/ _/_/
_/_/ _/_/_/_/ _/ _/ _/_/ _/_/_/_/ _/
_/_/ _/ _/ _/ _/_/ _/ _/
_/_/_/ _/_/_/ _/ _/ _/_/_/ _/_/_/ _/
sensei is a minimal Node.JS wrapper around the sensu-api.
It’s easy to install sensei via npm:
npm install sensei;
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.
If you find something missing, please file an issue.
If you want to contribute, see CONTRIBUTING.md.
You should be able to use sensei in any platform that runs Node.JS.
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.
And also you might want to see CONTRIBUTING.md.
- Project Owner: Volkan Özçelik
MIT-Licensed.
See LICENSE.md.