BigPanda Agent

Configure the BigPanda agent to send monitoring alerts from a non-standard tool.

The BigPanda agent is a low-footprint utility 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.

The utility 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, Zenoss, and Zabbix.

You can install the BigPanda agent on any of the following OS versions:

OSVersion(s)
RHEL7, 8, and 9
CentOS7, Stream 8, and Stream 9
Debian9 (Stretch), 10 (Buster), and 11 (Bullseye)
Ubuntu16.04 (Xenial), 18.04 (Bionic), 20.04 (Focal), and 22.04 (Jammy)

🚧

Python Requirement

To use the Open Integration Manager for Agent-based integrations, Python version >= 3.8.0 and an Agent version >= 10.2 are required.

Key Features

Integrations that Require the BigPanda Agent

The following integrations leverage the BigPanda Agent:

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.

PropertyTypeDescription / Default
throttle_countinteger(Default: 2000) This is the maximum number of alerts to send out per plugin per throttle_interval
throttle_intervalinteger(in seconds -- Default: 60) This interval resets the throttle_count once its value elapses.

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 Configure the BigPanda Agent Log documentation.

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.

Use 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.

  1. Go to the BigPanda console in the Integrations tab.
  2. Select the REST API Integration. Name the Integration and generate an App Key.
  3. Run the following command in the command line:
    $ sudo bigpanda-config --add rawalertstransfer --app-key <GENERATED APP KEY>

Test 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 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"
}

Next Steps

Find steps for Installing the BigPanda Agent

Learn how to Configure the BigPanda Agent Log

Learn how to Integrate with BigPanda