BigPanda Agent
Connect on-premise tools to the BigPanda console using the BigPanda agent.
The BigPanda agent is a low-footprint daemon installed on the master host of your monitoring tool. It consumes alerts from the tool in real-time and then transmits them to BigPanda via TLS-encrypted HTTP calls.
Key Features
- Sends monitoring data from on-prem solutions to the BigPanda Console
- Works with multiple integrations
- Built-in alert throttling
- Configurable event logging
How It Works
The daemon is installed on the main server where the monitoring data can be accessed. The agent can then be configured to capture the necessary data from its respective location and push it to BigPanda for normalization into a BigPanda Alert. Native configuration commands exist for some popular monitoring systems like Nagios and Zabbix.
You can install the BigPanda agent on any of the following OS versions:
- RHEL—6, and 7
- CentOS—6, and 7
- Debian—7.3
- Ubuntu—12.04 (Precise), 12.10 (Quantal), 13.04 (Raring), 13.10 (Saucy), 14.04 (Trusty), 15.04 (Vivid), and 16.04 (Xenial)
Python Requirement
The agent requires a python version of 2.7.16
Throttling
To help balance alert load on the BigPanda servers, the agent has a built-in throttling mechanism.
Configured globally, throttling is performed on a per-Agent plugin level. This means that if your BigPanda Agent has plugins configured for both Nagios and Raw Alerts, each plugin will be separately throttled.
Property | Type | Description / Default |
---|---|---|
| integer | (Default: 2000) This is the maximum number of alerts to send out per plugin per |
| integer | (in seconds -- Default: 60) This interval resets the E.G. If 3000 alerts are passed in the first 10 seconds, there will be a pause for the remaining 50 seconds for that plugin. |
To override these settings, add these two properties to the backend
property object in /etc/bigpanda/bigpanda.conf
. Be sure to restart the agent.
{
"root": {
"agent_id": "0000000-4444-333-222-11111111",
"version": "5.11.0",
"plugins": [
],
"data_encoding": "utf-8",
"backend": {
"verify_certificate": true,
"address": "https://api.bigpanda.io",
"timeout": 30,
"api_token": "12345678901234567890",
"throttle_count": 4000,
"throttle_interval": 80
}
}
}
Logging
The BigPanda Agent is designed to log events into a file for visibility. This logging has default configurations that can be updated to the desired specifications.
The agent provides the option to
- Configure logging options through a single file
- Change the level of logging the agent performs
- Change the destination of the logs
To learn more about configuring log files in the BigPanda Agent, see the Agent Log Configuration guide.
The BigPanda Agent Raw Alerts Plugin
The Raw Alerts plugin works similarly to the REST API integration. Alert JSON files are generated by a source and queued up in a directory to be consumed by the plugin.
Using the Plugin
This plugin is used in conjunction with specific source systems (like our SNMPD agent). It can also be initialized and used with any other source.
- Go to the BigPanda console in the Integrations tab.
- Select the REST API Integration. Name the Integration and generate an
App Key
. - Run the following command in the command line:
$ sudo bigpanda-config --add rawalertstransfer --app-key <GENERATED APP KEY>
Testing the Plugin
To test the new plugin, you can add a JSON file to the following directory. /var/lib/bigpanda/queue/
Follow the guidelines to a valid alert payload when writing to the directory. Payload property options can be found in the Alerts API.
Multiple App Key Support
By default, the plugin will use the app_key
provided during plugin initialization.
It is possible to override this app_key
to use a different integration's key by including the app_key
in the JSON file, as presented in the example below.
{
"app_key": "48275f111111111111cafdca981",
"status": "critical",
"host": "host_test",
"category": "testing",
"description": "This is an example"
}
Updated 12 months ago