Bacula. Информативные отчеты.

/ Просмотров: 954
Метки: ,
Bacula. Информативные отчеты.

На первых порах, когда Bacula вводится в эксплуатацию, полезно будет иметь более содержательное уведомление, нежели то, что состоит из стандартных макросов (%c %d %e %h %i %j %l %n %r %s %t %v %r и т.д.).

Было бы полезно в сообщение включить информацию о выполненной задаче, которая может быть получена при выполнении консольной команды "messages".

1. Добавляем в JobDefs комманду, которая будет выполнятся после каждого задания:

JobDefs {
  ...
  RunAfterJob  = "/usr/local/share/bacula/savemessage.sh"
}

Сам скрипт /usr/local/share/bacula/savemessage.sh выглядит так:

#!/bin/sh
echo messages | /usr/local/sbin/bconsole > /var/db/bacula/msg.txt

После выполнения каждого задания, наш скрипт будет запускать консоль бакулы, отправлять команду "messages", и сохранять консольный вывод в файл /var/db/bacula/msg.txt. Теперь этот файл необходимо прикрепить к сообщению. В моем случае для отправки используется "sendEmail". Секция "Messages" будет выглядеть примерно так

Messages {
  ...
  mailcommand = "sendEmail -f reports@mail.ru -m \"
   Client name : %c
   Director name : %d
   Job Exit code : %e
   Job Id : %i
   Unique Job name : %j
   Job level : %l
   Job name : %n
   Job type : %t \" -u \"[srv-bacula-01] %n - %e\" -t %r -s smtp.mail.ru -xu reports@mail.ru -xp password -a \"/var/db/bacula/msg.txt\""
  ...
}