title: Logging eleventyNavigation: key: 🪵 Logging
By default, borgmatic runs proceed silently except in the case of warnings or errors. But if you'd like to to get additional information about the progress of the backup as it proceeds, use the verbosity option:
borgmatic --verbosity 1
Or, for even more progress and debug spew:
borgmatic --verbosity 2
The full set of verbosity levels are:
-2: disable output entirely New in borgmatic 1.7.14-1: only show errors0: default output1: some additional output (informational level)2: lots of additional output (debug level)New in version 2.0.0Set the
verbosity in your borgmatic configuration via the verbosity option.
Additionally, for the create action in particular, you can include the
--list flag to list the files that borgmatic is archiving—those files
that are new or changed since the last backup.
By default, borgmatic only logs its output to the console. You can enable
simultaneous syslog logging and customize its log level with the
--syslog-verbosity flag, which is independent from the console logging
--verbosity flag described above. For instance, to enable syslog logging,
run:
borgmatic --syslog-verbosity 1
To increase syslog logging further to include debugging information, run:
borgmatic --syslog-verbosity 2
See above for further details about the verbosity levels.
New in version 2.0.0Set the
syslog verbosity in your borgmatic configuration via the syslog_verbosity
option.
Where these logs show up depends on your particular system. If you're using
systemd, try running journalctl -xe. Otherwise, try viewing
/var/log/syslog or similar.
Prior to version 1.8.3borgmatic logged to syslog by default whenever run at a non-interactive console.
If you are using rsyslog or systemd's journal, be aware that by default they both throttle the rate at which logging occurs. So you may need to change either the global rate limit or the per-service rate limit if you're finding that borgmatic logs are missing.
Note that the sample borgmatic systemd service file already has this rate limit disabled for systemd's journal.
If you don't want to use syslog, and you'd rather borgmatic log to a plain
file, use the --log-file flag:
borgmatic --log-file /path/to/file.log
Note that if you use the --log-file flag, you are responsible for rotating
the log file so it doesn't grow too large, for example with
logrotate.
You can use the --log-file-verbosity flag to customize the log file's log level:
borgmatic --log-file /path/to/file.log --log-file-verbosity 2
New in version 2.0.0Set the log
file verbosity in your borgmatic configuration via the log_file_verbosity
option.
New in version 1.7.11 Use the
--log-file-format flag to override the default log message format. This
format string can contain a series of named placeholders wrapped in curly
brackets. For instance, the default log format is: [{asctime}] {levelname}:
{message}. This means each log message is recorded as the log time (in square
brackets), a logging level name, a colon, and the actual log message.
So if you only want each log message to get logged without a timestamp or a logging level name:
borgmatic --log-file /path/to/file.log --log-file-format "{message}"
Here is a list of available placeholders:
{asctime}: time the log message was created{levelname}: level of the log message (INFO, DEBUG, etc.){lineno}: line number in the source file where the log message originated{message}: actual log message{pathname}: path of the source file where the log message originatedSee the Python logging documentation for additional placeholders.
Note that this --log-file-format flag only applies to the specified
--log-file and not to syslog or other logging.
New in version 2.0.0Set the
defaults for these flags in your borgmatic configuration via the log_file and
log_file_format options.