Bacula
以可解析的格式獲取 Bacula 狀態
是否有可能以某種可解析的格式獲得 Bacula Director 的狀態?看起來人類可讀的表示(使用 bacula-console 時可以看到)是在 TCP 控制連接期間在控制器端形成的。
我剛剛編寫了一個 bash 腳本來輪詢 bacula 客戶端狀態,並將磁帶寫入速度(以 GB/hr 為單位)連同日期戳一起寫入日誌文件:
就是這樣。
while `/bin/true`; do echo -n `date +%s` >> /var/log/backupspeed.log; echo -n " " >> /var/log/backupspeed.log; BPS=$(echo "status client"|bconsole|awk '/Bytes\/sec/ {print $3}'|cut -d'=' -f2|sed 's/,//g'); echo "scale=10;($BPS/(1024^3))*(60^2)"|bc >> /var/log/backupspeed.log; sleep 10; echo `date +%s`; done
這正是我拼湊起來的,以解決我自己的癢,但它非常通用。你幾乎可以在 bconsole 上噴東西,然後解析輸出。