Skip to main content

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

Project description

This package on the Python Package Index Tests 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.6.0.tar.gz (19.5 kB view details)

Uploaded Source

Built Distribution

rsync_watch-0.6.0-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for rsync_watch-0.6.0.tar.gz
Algorithm Hash digest
SHA256 a854812ab82318985333b8c7960db3f0d2854ca304d8d6b5111325a9bb63e2ae
MD5 5bdf8cc150f8d945372750eca271788b
BLAKE2b-256 a4301c72b050e0568e7bc0c3373c0e6fc90608d061db3687f7f6709740d8231e

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for rsync_watch-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ea5b5a83baf42c949804fde2d91023818da5a007358947aa23e8fc1ab40b8a98
MD5 ec8b6749d887d97a905d8389f1af05ec
BLAKE2b-256 fedcd22d6da97d3fe064fcf4646eb5131bec7715fee2df9935b0c385c9c80d8a

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