A Python script to monitor the execution of a rsync task.
Project description
rsync-watch.py
A Python script to monitor the execution of a rsync task.
Features
-
The script
rsync-watch.py
parses thersync --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]
[--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)
optional arguments:
-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.
beep:
Generated by the config_reader.
--beep-activated BEEP_ACTIVATED
Activate the beep channel to report auditive messages.
Project details
Release history Release notifications | RSS feed
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.4.3.tar.gz
(35.4 kB
view details)
File details
Details for the file rsync_watch-0.4.3.tar.gz
.
File metadata
- Download URL: rsync_watch-0.4.3.tar.gz
- Upload date:
- Size: 35.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc0c5ce843ba5fd17af51b917f2691fc9606a5ba19b5490d5693aec5d8af1801 |
|
MD5 | b3fd8386babf532da46d259915d1e4ec |
|
BLAKE2b-256 | 75f059988b280a7086e4c7265e81e18bb4660bc514b968f43868f5ca40c4f315 |