Skip to main content

A Python script to monitor the execution of a rsync task.

Project description

pypi.org Documentation Status

rsync-watch.py

A Python script to monitor the execution of a rsync task.

Features

  • The script rsync-watch.py parses the rsync --stats output and sends this statistics to a monitoring system like Nagios or Icinga using the NSCA protocol.

  • The script rsync-watch.py can be configured to perform various checks before starting the rsync process.

usage: rsync-watch.py [-h] [--host-name HOST_NAME]
                      [--dest-user-group USER_GROUP_NAME]
                      [--rsync-args RSYNC_ARGS]
                      [--action-check-failed {exception,skip}]
                      [--check-file FILE_PATH] [--check-ping DESTINATION]
                      [--check-ssh-login SSH_LOGIN] [-v]
                      [--email-from-addr EMAIL_FROM_ADDR]
                      [--email-to-addr EMAIL_TO_ADDR]
                      [--email-to-addr-critical EMAIL_TO_ADDR_CRITICAL]
                      [--email-smtp-login EMAIL_SMTP_LOGIN]
                      [--email-smtp-password EMAIL_SMTP_PASSWORD]
                      [--email-smtp-server EMAIL_SMTP_SERVER]
                      [--nsca-remote-host NSCA_REMOTE_HOST]
                      [--nsca-password NSCA_PASSWORD]
                      [--nsca-encryption-method NSCA_ENCRYPTION_METHOD]
                      [--nsca-port NSCA_PORT] [--icinga-url ICINGA_URL]
                      [--icinga-user ICINGA_USER]
                      [--icinga-password ICINGA_PASSWORD]
                      [--beep-activated BEEP_ACTIVATED]
                      src dest

A Python script to monitor the execution of a rsync task.

positional arguments:
  src                   The source ([[USER@]HOST:]SRC)
  dest                  The destination ([[USER@]HOST:]DEST)

options:
  -h, --help            show this help message and exit
  --host-name HOST_NAME
                        The hostname to submit over NSCA to the monitoring.
  --dest-user-group USER_GROUP_NAME
                        Both the user name and the group name of the
                        destination will be set to this name.
  --rsync-args RSYNC_ARGS
                        Rsync CLI arguments. Insert some rsync command line
                        arguments.Wrap all arguments in one string, for
                        example: --rsync-args '--exclude "this folder"'
  -v, --version         show program's version number and exit

checks:
  Perform different checks before running the rsync task.

  --action-check-failed {exception,skip}
                        Select action what to do when a check failed.
  --check-file FILE_PATH
                        Check if a file exists on the local machine.
  --check-ping DESTINATION
                        Check if a remote host is reachable by pinging.
                        DESTINATION can a IP address or a host name or a full
                        qualified host name.
  --check-ssh-login SSH_LOGIN
                        Check if a remote host is reachable over the network
                        by SSHing into it. SSH_LOGIN: “root@192.168.1.1” or
                        “root@example.com” or “example.com”.

email:
  Generated by the config_reader.

  --email-from-addr EMAIL_FROM_ADDR
                        The email address of the sender.
  --email-to-addr EMAIL_TO_ADDR
                        The email address of the recipient.
  --email-to-addr-critical EMAIL_TO_ADDR_CRITICAL
                        The email address of the recipient to send critical
                        messages to.
  --email-smtp-login EMAIL_SMTP_LOGIN
                        The SMTP login name.
  --email-smtp-password EMAIL_SMTP_PASSWORD
                        The SMTP password.
  --email-smtp-server EMAIL_SMTP_SERVER
                        The URL of the SMTP server, for example:
                        `smtp.example.com:587`.

nsca:
  Generated by the config_reader.

  --nsca-remote-host NSCA_REMOTE_HOST
                        The IP address of the NSCA remote host.
  --nsca-password NSCA_PASSWORD
                        The NSCA password.
  --nsca-encryption-method NSCA_ENCRYPTION_METHOD
                        The NSCA encryption method. The supported encryption
                        methods are: 0 1 2 3 4 8 11 14 15 16
  --nsca-port NSCA_PORT
                        The NSCA port.

icinga:
  Generated by the config_reader.

  --icinga-url ICINGA_URL
                        The HTTP URL. /v1/actions/process-check-result is
                        appended.
  --icinga-user ICINGA_USER
                        The user for the HTTP authentification.
  --icinga-password ICINGA_PASSWORD
                        The password for the HTTP authentification.

beep:
  Generated by the config_reader.

  --beep-activated BEEP_ACTIVATED
                        Activate the beep channel to report auditive messages.

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

rsync_watch-0.5.0.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

rsync_watch-0.5.0-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file rsync_watch-0.5.0.tar.gz.

File metadata

  • Download URL: rsync_watch-0.5.0.tar.gz
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0b2 CPython/3.10.4 Linux/5.15.0-41-generic

File hashes

Hashes for rsync_watch-0.5.0.tar.gz
Algorithm Hash digest
SHA256 0479b436e212f2c8ffdd1e174a530cbf2eae4e64203f6083bb6cfa6b1a724106
MD5 be1eebcc8b576e1ef6843c292d599aae
BLAKE2b-256 b32abf9590c2361ac9c4ece88c6c700c4f155392bc8fef98993d57ad363bd8dc

See more details on using hashes here.

File details

Details for the file rsync_watch-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: rsync_watch-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0b2 CPython/3.10.4 Linux/5.15.0-41-generic

File hashes

Hashes for rsync_watch-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 776e48c760f78110ac4257c249938cbd3237a82782b5208b61a3265639e53f2d
MD5 f15817f0a72c641f9d9cca5c10bdfc00
BLAKE2b-256 9a5ae798e7180bd1778b7293772a93a90f023bc8062f05795e28c5c3bdc76946

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