Skip to main content

Python library to write Nagios plugins.

Project description

PyNagios is a simple Python library meant to make writing Nagios plugins much easier. Nagios plugins have quite a few guidelines to adhere to, and PyNagios provides helpers to make this easy.

Install

To install, simply use pip or easy_install:

pip install pynagios

Documentation

Documentation for the latest version can always be found at http://kiip.github.com/pynagios/latest.

Features

The core features supported by PyNagios:

  • Parsing command line arguments such that the standard expected arguments (such as -H, -w, -c) are accepted.

  • Returning proper POSIX exit code based on status.

  • Parsing Nagios range formats (such as “@10:20”, “~:50”, “10”, etc.)

  • Outputting status and message.

  • Outputting performance data.

Example

What all these features result in is a concise, simple, and guidelines-compliant Python-based Nagios plugin:

from pynagios import Plugin

class UserCheck(Plugin):
    """
    Nagios plugin to check how many users are logged into this
    machine.
    """

    def check(self):
        # Get the number of logged in users, for now we hardcode
        users = 27

        # Build a response and exit. This `response_for_value` automatically
        # creates a response with the proper status given the value and the
        # warning/critical ranges passed in via the command line.
        response = self.response_for_value(users, "%d users" % users)
        response.set_perf_data("users", users)
        response.set_perf_data("another metric", 27, "MB")
        return response

if __name__ == 'main':
    # Build the plugin instance and run it. This will also parse
    # command line arguments by default.
    UserCheck().check().exit()

While the above example subclasses Plugin, you’re of course welcome to simply call Plugin`s methods directly and build a ``Response` yourself.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pynagios-0.1.1.tar.gz (8.9 kB view details)

Uploaded Source

File details

Details for the file pynagios-0.1.1.tar.gz.

File metadata

  • Download URL: pynagios-0.1.1.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pynagios-0.1.1.tar.gz
Algorithm Hash digest
SHA256 3d4919c833436ca753807b46993769083ff144305cfe8646e2469ea0def49367
MD5 ca1724333b3cd63259934b4271f3e6b6
BLAKE2b-256 1f4c9495088c3a82866682a455bc6636b7a3935a2df221b529251f79db0e1695

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page