Currently supported notifiers:
Below are examples you can copy/paste in to your "Backup" configuration file.
These blocks should be placed between
Backup::Model.new(:my_backup, 'My Backup') do and
notify_by Mail do |mail| mail.on_success = true mail.on_failure = true mail.from = 'firstname.lastname@example.org' mail.to = 'email@example.com' mail.address = 'smtp.gmail.com' mail.port = 587 mail.domain = 'your.host.name' mail.user_name = 'firstname.lastname@example.org' mail.password = 'my_password' mail.authentication = 'plain' mail.enable_starttls_auto = true end
This will make
email@example.com send an email to
firstname.lastname@example.org every time a Backup process ends with, or without any errors.
In case a Backup process succeeds without any errors, it'll notify
email@example.com with a plain email.
In case a Backup process raises an error, it'll (try to) notify
firstname.lastname@example.org with a more detailed email that includes the raised exception name, the backtrace, the Ruby version, the Backup Gem version, etc. for debugging purposes.
notify_by Twitter do |tweet| tweet.on_success = true tweet.on_failure = true tweet.consumer_key = 'my_consumer_key' tweet.consumer_secret = 'my_consumer_secret' tweet.oauth_token = 'my_oauth_token' tweet.oauth_token_secret = 'my_oauth_token_secret' end
In order to use Twitter as a notifier you will need a Twitter account. Once you create a Twitter account for the notifier, you need to register a new application for your Twitter account. After registering an application you will acquire the following credentials:
You can find these credentials on your application's pages.
notify_by Campfire do |campfire| campfire.on_success = true campfire.on_failure = true campfire.api_token = 'my_token' campfire.subdomain = 'my_subdomain' campfire.room_id = 'the_room_id' end
In order to use Campfire as a notifier you will need a Campfire account. Once you create a Campfire account for the notifier, you need to create a room and take note of its id (room_id) (https://.campfirenow.com/room/), get your api authentication token from the "My info" page, and take not of your subdomain (https://.campfirenow.com/). Long story short, this is the information you will need:
notify_by Presently do |presently| presently.on_success = true presently.on_failure = true presently.subdomain = 'my_subdomain' presently.user_name = 'my_user_name' presently.password = 'my_password' presently.group_id = 'my_group_id' # optional end
In order to use Presently as a notifier you will need a Presently account.
notify_by Prowl do |prowl| prowl.on_success = true prowl.on_failure = true prowl.application = 'my_application' # Example: Server Backup prowl.api_key = 'my_api_key' end
Prowl is an iOS push notification gateway. Backup can connect to Prowl and deliver success and/or failure notifications directly to your iOS device. All you need is a Prowl account. Go to the API keys tab after registration, generate a key and copy/paste it into your notifier configuration.
notify_by Hipchat do |hipchat| hipchat.token = 'hipchat api token' # required hipchat.from = 'DB Backup' # required hipchat.rooms_notified = ['activity'] # required and should be an array hipchat.on_success = true hipchat.on_failure = true hipchat.success_color = 'green' hipchat.failure_color = 'red' end
Hipchat is a hosted private chat service. Backup can connect to Hipchat to post notices in room via the API. To get an API token, you must be logged in as an admin. Click the Group Admin tab at the top, then click API and then create a new token for backup. A "notification" key type is sufficient.
The Hipchat notifier can notify on multiple rooms that you specify by name.
Please see the Hipchat API documents for a list of available colors.
If you are planning to set up a Mail notifier for multiple Backup processes, it'll become quite verbose and redundant, very quickly. Consider setting up some default configuration. For example, if in most cases you want to use the same "sender" to send email notifications, you could set up a default Mail configuration, like so:
Backup::Configuration::Notifier::Mail.defaults do |mail| mail.from = 'email@example.com' mail.to = 'firstname.lastname@example.org' mail.address = 'smtp.gmail.com' mail.port = 587 mail.domain = 'your.host.name' mail.user_name = 'email@example.com' mail.password = 'my_password' mail.authentication = 'plain' mail.enable_starttls_auto = true end
So now, every time you wish to setup Mail notifications for a Backup process, you only have to define the following inside the Backup::Model block
notify_by Mail do |mail| mail.on_success = true mail.on_failure = true end
and you won't have to specify all the SMTP configuration, sender, receiver, credentials, etc. It'll always use these as default unless you explicitly overwrite them within the