mirror of
https://github.com/offen/docker-volume-backup.git
synced 2024-11-25 06:30:29 +01:00
Frederik Ring
5c04e11f10
* Scaffold Azure storage backend that does nothing yet * Implement copy for Azure Blob Storage * Set up automated testing for Azure Storage * Implement pruning for Azure blob storage * Add documentation for Azure Blob Storage * Add support for remote path * Add azure to notifications doc * Tidy go.mod file * Allow use of managed identity credential * Use volume in tests * Auto append trailing slash to endpoint if needed, clarify docs, tidy mod file
41 lines
2.7 KiB
Markdown
41 lines
2.7 KiB
Markdown
# Notification templates reference
|
|
|
|
In order to customize title and body of notifications you'll have to write a [go template](https://pkg.go.dev/text/template) and mount it inside the `/etc/dockervolumebackup/notifications.d/` directory.
|
|
|
|
Configuration, data about the backup run and helper functions will be passed to this template, this page documents them fully.
|
|
|
|
## Data
|
|
Here is a list of all data passed to the template:
|
|
|
|
* `Config`: this object holds the configuration that has been passed to the script. The field names are the name of the recognized environment variables converted in PascalCase. (e.g. `BACKUP_STOP_CONTAINER_LABEL` becomes `BackupStopContainerLabel`)
|
|
* `Error`: the error that made the backup fail. Only available in the `title_failure` and `body_failure` templates
|
|
* `Stats`: objects that holds stats regarding script execution. In case of an unsuccessful run, some information may not be available.
|
|
* `StartTime`: time when the script started execution
|
|
* `EndTime`: time when the backup has completed successfully (after pruning)
|
|
* `TookTime`: amount of time it took for the backup to run. (equal to `EndTime - StartTime`)
|
|
* `LockedTime`: amount of time it took for the backup to acquire the exclusive lock
|
|
* `LogOutput`: full log of the application
|
|
* `Containers`: object containing stats about the docker containers
|
|
* `All`: total number of containers
|
|
* `ToStop`: number of containers matched by the stop rule
|
|
* `Stopped`: number of containers successfully stopped
|
|
* `StopErrors`: number of containers that were unable to be stopped (equal to `ToStop - Stopped`)
|
|
* `BackupFile`: object containing information about the backup file
|
|
* `Name`: name of the backup file (e.g. `backup-2022-02-11T01-00-00.tar.gz`)
|
|
* `FullPath`: full path of the backup file (e.g. `/archive/backup-2022-02-11T01-00-00.tar.gz`)
|
|
* `Size`: size in bytes of the backup file
|
|
* `Storages`: object that holds stats about each storage
|
|
* `Local`, `S3`, `WebDAV`, `Azure` or `SSH`:
|
|
* `Total`: total number of backup files
|
|
* `Pruned`: number of backup files that were deleted due to pruning rule
|
|
* `PruneErrors`: number of backup files that were unable to be pruned
|
|
|
|
## Functions
|
|
|
|
Some formatting and helper functions are also available:
|
|
|
|
* `formatTime`: formats a time object using [RFC3339](https://datatracker.ietf.org/doc/html/rfc3339) format (e.g. `2022-02-11T01:00:00Z`)
|
|
* `formatBytesBin`: formats an amount of bytes using powers of 1024 (e.g. `7055258` bytes will be `6.7 MiB`)
|
|
* `formatBytesDec`: formats an amount of bytes using powers of 1000 (e.g. `7055258` bytes will be `7.1 MB`)
|
|
* `env`: returns the value of the environment variable of the given key if set
|