Zabbix is an open source monitoring software that can monitor pretty much everything like networks, servers, applications, etc. You may learn more about Zabbix at www.zabbix.com.
Zabbix-promise is a JavaScript package for Node.js runtime environment to interact with Zabbix APIs. The package is written to support JavaScript Promise and Async/await interfaces. Zabbix-promise implements Zabbix sender protocol in pure JavaScript code, and there are no other package dependencies, just the Node.js runtime.
The latest version of zabbix-promise supports all currently maintained Node versions, see Node Release Schedule and all currently supported Zabbix releases, see Zabbix Life Cycle & Release Policy.
Table of Contents
$ npm install zabbix-promise --save
const Zabbix = require('zabbix-promise')
const zabbix = new Zabbix({
url: 'http://127.0.0.1:8080/api_jsonrpc.php',
user: 'Admin',
password: 'zabbix'
})
const main = async () => {
try {
await zabbix.login()
const host = await zabbix.request('host.get', {
selectInterfaces: 'extend',
limit: 1
})
console.log(JSON.stringify(host, null, 2))
zabbix.logout()
} catch (error) {
console.error(error)
}
}
main()
Please check the examples below to get started.
Zabbix-promsie uses debuglog
, so just run with environmental variable NODE_DEBUG
set to zp*
.
$ NODE_DEBUG=zp* node getHost.js
👋Thanks for thinking about contributing to zabbix-promise! There are a few ways you may contribute to the project.
- Use the package in your projects and report any bugs you may find by filing issues.
- Submit examples to cover the Zabbix APIs that are not in examples already by sending pull request.
- Submit test cases to cover all or most of the Zabbix APIs by sending pull request.
Copyright (c) 2016-2019 Sumit Goel.