Skip to main content

Xymon Python Library

This library allows basic communication with a Xymon server directly from a Python script. It works with Python 2.6, 2.7, and 3. It can be used on a system with no Xymon client installed.

Some basic examples are shown here. See help(Xymon) for details.

Installation

$ pip install Xymon

Getting Started

Get an instance of the Xymon class to talk to the server.

>>> from xymon import Xymon
>>> server = Xymon('xymon.domain.tld', 1984)

The server name and port number are optional. The server name will default to the $XYMSRV environment variable if your script is being run by a Xymon client, or localhost if the variable isn’t set. The port defaults to 1984.

Reporting

Report a status to the server:

>>> server.report('webserver01', 'https', 'yellow', 'slow HTTP response')

Querying

Getting status data:

>>> server.appfeed(host='ldap.*', test='ldaps')
{'ldap01':
    {'ldaps':
        {'status': 'green',
         'changed': 1396294952,
         'time': 1396462829,
         'url': 'https://xymon.domain.tld/xymon-cgi/svcstatus.sh?HOST=ldap01&SERVICE=ldaps',
         'summary': 'green Wed Apr  2 14:19:56 2014 ldaps ok '}
    },
'ldap02':
    {'ldaps':
        {'status': 'green',
         'changed': 1396294952,
         'time': 1396462829,
         'url': 'https://xymon.domain.tld/xymon-cgi/svcstatus.sh?HOST=ldap02&SERVICE=ldaps',
         'summary': 'green Wed Apr  2 14:19:56 2014 ldaps ok '}
    }
}

This communicates with the server using its appfeed.cgi interface. If called with no arguments, appfeed() will return data for all tests on all hosts. Results can be limited by host, test, page, and color.

Note that host can be a pattern as described in Xymon’s documentation.

To just get the status of a single service on a single host as a string, use status():

>>> server.status('ldap01', 'ldaps')
'green'

If you want data for more than one host/test, it’s probably more efficient to get all the data using appfeed() and pull out what you want.

Metadata

Release files for Xymon 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Xymon 2.0.0
File Size Uploaded
Xymon-2.0.0.tar.gz 4.9 kB Details

Release files / Xymon-2.0.0.tar.gz

Download URL Xymon-2.0.0.tar.gz
Size 4.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d1af55240f3f2f2c7ca3c79b21b467e8795ea9b715ca84dc4cb6375136b382fe
BLAKE2b-256 checksum
How to use checksums
ab044d6712dff912d3b32c1f939c7499a47743e2502835401d68f7db4b6d461c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/3.7

Release history Release notifications | RSS feed

This release

2.0.0 This release

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page