<commit_before>XenBackup
=========
Backup virtual machines from a XenServer. Tested with Python 2.7.

Example:

    xenbackup.py --host xenserver1 --user root --password pw --path=/var/xenbackup

# Arguments

```
  -h, --help            show this help message and exit

  --path PATH           backup directory (Required)
                        will be stored as path/<vm-name>/<vm-name>-<iso8601-timestamp>.xva

  --host HOST           xenserver host (Required)

  --user USER           xenserver user (Required)

  --password PASSWORD   <PASSWORD> password (Required)

  --retry_max RETRY_MAX max retries per VM (default 3)

  --retry_delay RETRY_DELAY (default 30 seconds)
                        number of seconds to wait after each failed try

  --rotate_snapshots ROTATE_SNAPSHOTS (default True)
                        enable rotate

  --rotate_snapshots_max ROTATE_SNAPSHOTS_MAX (default 3)
                        maximum number of snapshots stored in a directory

  --vms vm1,vm2         a comma separated list of virtual machines to backup,
                        will backup all virtual machines by default.

```

# How it works

 1. Retrives all the virtual machines running on the XenServer
 2. Creates a snapshot
 3. Downloads the snapshot
 4. Deletes the snapshot
 5. Rotates the backup snapshots

# Missing

 * External logging (Maybe Syslog)
 * VM white/blacklist

# LICENSE
The MIT License (MIT)

Copyright (c) 2014 <NAME>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is<commit_msg>Added syslog documentation<commit_after>XenBackup
=========
Backup virtual machines from a XenServer. Tested with Python 2.7.

Example:

    xenbackup.py --host xenserver1 --user root --password pw --path=/var/xenbackup

# Arguments

```
  -h, --help            show this help message and exit

  --path PATH           backup directory (Required)
                        will be stored as path/<vm-name>/<vm-name>-<iso8601-timestamp>.xva

  --host HOST           xenserver host (Required)

  --user USER           xenserver user (Required)

  --password PASSWORD   <PASSWORD> (Required)

  --retry_max RETRY_MAX max retries per VM (default 3)

  --retry_delay RETRY_DELAY (default 30 seconds)
                        number of seconds to wait after each failed try

  --rotate_snapshots ROTATE_SNAPSHOTS (default True)
                        enable rotate

  --rotate_snapshots_max ROTATE_SNAPSHOTS_MAX (default 3)
                        maximum number of snapshots stored in a directory

  --vms vm1,vm2         a comma separated list of virtual machines to backup,
                        will backup all virtual machines by default.

  --syslog_ip IP        (default 127.0.0.1)

  --syslog_port PORT    (default 514)

```

# How it works

 1. Retrives all the virtual machines running on the XenServer
 2. Creates a snapshot
 3. Downloads the snapshot
 4. Deletes the snapshot
 5. Rotates the backup snapshots

# LICENSE

The MIT License (MIT)

Copyright (c) 2014 <NAME>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
{'fraction_non_alphanumeric': 0.07030401737242128, 'fraction_numerical': 0.014386536373507057, 'mean_word_length': 2.644906033630069, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 1, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2665402', 'n_tokens_mistral': 1074, 'n_tokens_neox': 979, 'n_words': 431}