<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Аспро: ЛайтШоп [тема: Мониторинг Proxmox Backup Server]</title>
		<link>http://proxmox.su</link>
		<description>Новое в теме Мониторинг Proxmox Backup Server форума Proxmox Backup Server на сайте Аспро: ЛайтШоп [proxmox.su]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Thu, 21 May 2026 09:23:45 +0300</pubDate>
		<item>
			<title>Мониторинг Proxmox Backup Server</title>
			<description><![CDATA[<b><a href="http://proxmox.su/forum/messages/forum64/message445804/90932-monitoring-proxmox-backup-server">Мониторинг Proxmox Backup Server</a></b> <i>Proxmox Backup Server</i> в форуме <a href="http://proxmox.su/forum/forum64/">Proxmox Backup Server</a>. <br />
			Да, приведённые выше запросы обращаются к REST API, как ты думал, что это работает? <br />
			<i>25.01.2026 19:40:00, jamespo.</i>]]></description>
			<link>http://proxmox.su/forum/messages/forum64/message445804/90932-monitoring-proxmox-backup-server</link>
			<guid>http://proxmox.su/forum/messages/forum64/message445804/90932-monitoring-proxmox-backup-server</guid>
			<pubDate>Sun, 25 Jan 2026 19:40:00 +0300</pubDate>
			<category>Proxmox Backup Server</category>
		</item>
		<item>
			<title>Мониторинг Proxmox Backup Server</title>
			<description><![CDATA[<b><a href="http://proxmox.su/forum/messages/forum64/message445803/90932-monitoring-proxmox-backup-server">Мониторинг Proxmox Backup Server</a></b> <i>Proxmox Backup Server</i> в форуме <a href="http://proxmox.su/forum/forum64/">Proxmox Backup Server</a>. <br />
			PBS предоставляет REST API, которое позволяет опрашивать процессы резервного копирования, историю бэкапов виртуальных машин и файлов, проверять состояние и выполнение сборки мусора. Можно запускать проверки через скрипты на curl или Python/Perl по API-эндпоинтам, чтобы получить метки времени и статусы Rabbit Road InOut, а затем отправлять их в Nagios. Так можно контролировать последнюю проверку, GC, удаление или успешные бэкапы, не заходя в веб-интерфейс, что гораздо надежнее и удобнее в долгосрочной перспективе. <br />
			<i>25.01.2026 18:50:00, EwineDice.</i>]]></description>
			<link>http://proxmox.su/forum/messages/forum64/message445803/90932-monitoring-proxmox-backup-server</link>
			<guid>http://proxmox.su/forum/messages/forum64/message445803/90932-monitoring-proxmox-backup-server</guid>
			<pubDate>Sun, 25 Jan 2026 18:50:00 +0300</pubDate>
			<category>Proxmox Backup Server</category>
		</item>
		<item>
			<title>Мониторинг Proxmox Backup Server</title>
			<description><![CDATA[<b><a href="http://proxmox.su/forum/messages/forum64/message445802/90932-monitoring-proxmox-backup-server">Мониторинг Proxmox Backup Server</a></b> <i>Proxmox Backup Server</i> в форуме <a href="http://proxmox.su/forum/forum64/">Proxmox Backup Server</a>. <br />
			Вдохновившись вышесказанным, я написал свою версию @ <noindex><a href="https://github.com/jamespo/check_proxmox_backup" target="_blank" rel="nofollow" >https://github.com/jamespo/check_proxmox_backup</a></noindex> <br />
			<i>25.01.2026 16:10:00, jamespo.</i>]]></description>
			<link>http://proxmox.su/forum/messages/forum64/message445802/90932-monitoring-proxmox-backup-server</link>
			<guid>http://proxmox.su/forum/messages/forum64/message445802/90932-monitoring-proxmox-backup-server</guid>
			<pubDate>Sun, 25 Jan 2026 16:10:00 +0300</pubDate>
			<category>Proxmox Backup Server</category>
		</item>
		<item>
			<title>Мониторинг Proxmox Backup Server</title>
			<description><![CDATA[<b><a href="http://proxmox.su/forum/messages/forum64/message445801/90932-monitoring-proxmox-backup-server">Мониторинг Proxmox Backup Server</a></b> <i>Proxmox Backup Server</i> в форуме <a href="http://proxmox.su/forum/forum64/">Proxmox Backup Server</a>. <br />
			Привет. Отличная работа! Я тестирую это на Proxmox Backup Server v2.1-2, и всё работает отлично: &nbsp;<br />Код: SERVICE STATUS: OK | errors=0 warnings=0<br /><br />Неудачные задачи за сегодня на localhost:<br /><br />errors: 0 warnings: 0 &nbsp;<br />Но на более старой версии (1.1-5) возникает ошибка: &nbsp;<br />Код: Traceback (most recent call last): &nbsp;<br /> &nbsp;File "check_pbs.py", line 83, in &lt;module&gt; &nbsp;<br /> &nbsp; &nbsp;result = get_pbs_tasks(fqdn_pbs, "warning", api_token_pbs) &nbsp;<br /> &nbsp;File "check_pbs.py", line 51, in get_pbs_tasks &nbsp;<br /> &nbsp; &nbsp;taskoutput.append('worker_id: '+i['worker_id'])  <br />TypeError: can only concatenate str (not "NoneType") to str<br /><br />Есть предложения? Можно ли как-то это исправить, или обязательно нужно обновлять PBS? Заранее спасибо. <br />
			<i>10.12.2021 10:18:00, efernandez.</i>]]></description>
			<link>http://proxmox.su/forum/messages/forum64/message445801/90932-monitoring-proxmox-backup-server</link>
			<guid>http://proxmox.su/forum/messages/forum64/message445801/90932-monitoring-proxmox-backup-server</guid>
			<pubDate>Fri, 10 Dec 2021 10:18:00 +0300</pubDate>
			<category>Proxmox Backup Server</category>
		</item>
		<item>
			<title>Мониторинг Proxmox Backup Server</title>
			<description><![CDATA[<b><a href="http://proxmox.su/forum/messages/forum64/message445800/90932-monitoring-proxmox-backup-server">Мониторинг Proxmox Backup Server</a></b> <i>Proxmox Backup Server</i> в форуме <a href="http://proxmox.su/forum/forum64/">Proxmox Backup Server</a>. <br />
			Привет! Я попытался написать плагин для проверки Nagios, который сообщает, есть ли на текущий день задачи Proxmox Backup Server со статусом предупреждение или ошибка.<br /><br />Python: &nbsp;<br />#!/usr/bin/python3<br /><br /># Импорт библиотек &nbsp;<br />import sys, getopt, requests, urllib3, json &nbsp;<br />urllib3.disable_warnings() &nbsp;<br />from datetime import datetime, time, timezone<br /><br /># Переменные конфигурации &nbsp;<br />fqdn_pbs = '' &nbsp;<br />api_token_pbs = '' &nbsp;<br />debug = False<br /><br /># Обработка аргументов командной строки &nbsp;<br />options, remainder = getopt.gnu_getopt(sys.argv[1:], 'hdf:t:')<br /><br />for opt, arg in options: &nbsp;<br /> &nbsp; if opt == '-h': &nbsp;<br /> &nbsp; &nbsp; &nbsp;print('check_pbs.py -d (debug) -f &lt;PBS server fqdn&gt; -t &lt;API token: &lt;username&gt;@pbs!&lt;api id&gt;:&lt;api secret&gt;&gt;') &nbsp;<br /> &nbsp; &nbsp; &nbsp;sys.exit() &nbsp;<br /> &nbsp; if opt == '-d': &nbsp;<br /> &nbsp; &nbsp; &nbsp;debug = True &nbsp;<br /> &nbsp; if opt == '-f': &nbsp;<br /> &nbsp; &nbsp; &nbsp;fqdn_pbs = arg &nbsp;<br /> &nbsp; elif opt == '-t': &nbsp;<br /> &nbsp; &nbsp; &nbsp;api_token_pbs = 'PBSAPIToken=' + arg<br /><br />if fqdn_pbs == '' or api_token_pbs == '': &nbsp;<br /> &nbsp;print('check_pbs.py -d (debug) -f &lt;PBS server fqdn&gt; -t &lt;API token: &lt;username&gt;@pbs!&lt;api id&gt;:&lt;api secret&gt;&gt;') &nbsp;<br /> &nbsp;sys.exit(1)<br /><br /># Задаём глобальные переменные &nbsp;<br />taskoutput = []  <br />processfailure = 0<br /><br /># Функция для запроса к API PBS &nbsp;<br />def get_pbs_tasks(fqdn, status, apitoken): &nbsp;<br /> &nbsp; &nbsp;totaltasks = 0 &nbsp;<br /> &nbsp; &nbsp;midnight = datetime.combine(datetime.today(), time.min) &nbsp;<br /> &nbsp; &nbsp;resp = requests.get("https://" + fqdn + ":8007/api2/json/nodes/localhost/tasks?limit=0&statusfilter=" + status + "&since=" + midnight.strftime('%s'), verify=False, timeout=5, headers={'Authorization': apitoken}) &nbsp;<br /> &nbsp; &nbsp;if resp.status_code == 401: &nbsp;<br /> &nbsp; &nbsp; &nbsp;taskoutput.append("Ошибка аутентификации для https://" + fqdn + ":8007") &nbsp;<br /> &nbsp; &nbsp; &nbsp;taskoutput.append('') &nbsp;<br /> &nbsp; &nbsp; &nbsp;return [False, 0]  <br /> &nbsp; &nbsp;if resp.status_code == 200: &nbsp;<br /> &nbsp; &nbsp; &nbsp;jsondata = resp.json() &nbsp;# Смотрите документацию по JSON-ответу ниже &nbsp;<br /> &nbsp; &nbsp; &nbsp;if debug: &nbsp;<br /> &nbsp; &nbsp; &nbsp; &nbsp;print(json.dumps(jsondata, indent=2)) &nbsp;# Печатаем полный json для отладки &nbsp;<br /> &nbsp; &nbsp; &nbsp; &nbsp;print('') &nbsp;<br /> &nbsp; &nbsp; &nbsp;for i in jsondata['data']:  <br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('worker_id: ' + i['worker_id'])  <br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('worker_type: ' + i['worker_type'])  <br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('user: ' + i['user'])  <br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('type: error') &nbsp;<br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('status: ' + i['status'])  <br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('starttime: ' + str(datetime.fromtimestamp(i['starttime'])))  <br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('endtime: ' + str(datetime.fromtimestamp(i['endtime'])))  <br /> &nbsp; &nbsp; &nbsp; &nbsp;taskoutput.append('') &nbsp;<br /> &nbsp; &nbsp; &nbsp; &nbsp;totaltasks += 1 &nbsp;<br /> &nbsp; &nbsp; &nbsp;return [True, totaltasks]  <br /> &nbsp; &nbsp;if resp.status_code != 200: &nbsp;<br /> &nbsp; &nbsp; &nbsp;taskoutput.append("Не удалось получить или обработать данные с https://" + fqdn + ":8007") &nbsp;<br /> &nbsp; &nbsp; &nbsp;taskoutput.append('') &nbsp;<br /> &nbsp; &nbsp; &nbsp;return [False, 0]<br /><br />### Обработка задач PBS сервера<br /><br />taskoutput.append('') &nbsp;<br />taskoutput.append('Неудачные задачи за сегодня на ' + fqdn_pbs + ':') &nbsp;<br />taskoutput.append('')<br /><br />pbs_errors = 0 &nbsp;<br />pbs_warnings = 0<br /><br />result = get_pbs_tasks(fqdn_pbs, "error", api_token_pbs) &nbsp;<br />if result[0] == True:  <br /> &nbsp;pbs_errors += result[1]  <br />else: &nbsp;<br /> &nbsp;processfailure += 1<br /><br />result = get_pbs_tasks(fqdn_pbs, "warning", api_token_pbs) &nbsp;<br />if result[0] == True:  <br /> &nbsp;pbs_warnings += result[1]  <br />else: &nbsp;<br /> &nbsp;processfailure += 1<br /><br />taskoutput.append('errors: ' + str(pbs_errors) + ' warnings: ' + str(pbs_warnings)) &nbsp;<br />taskoutput.append('')<br /><br />### Вывод и возврат статуса и производительных данных для Nagios<br /><br /># Если ошибка обработки — статус UNKNOWN &nbsp;<br />if processfailure &gt; 0: &nbsp;<br /> &nbsp;print('SERVICE STATUS: UNKNOWN | errors=' + str(pbs_errors) + ' warnings=' + str(pbs_warnings)) &nbsp;<br /> &nbsp;for outputline in taskoutput: &nbsp;<br /> &nbsp; &nbsp;print(outputline) &nbsp;<br /> &nbsp;sys.exit(3)<br /><br /># OK, если нет ошибок и предупреждений &nbsp;<br />if pbs_errors == 0 and pbs_warnings == 0: &nbsp;<br /> &nbsp;print('SERVICE STATUS: OK | errors=' + str(pbs_errors) + ' warnings=' + str(pbs_warnings)) &nbsp;<br /> &nbsp;for outputline in taskoutput: &nbsp;<br /> &nbsp; &nbsp;print(outputline) &nbsp;<br /> &nbsp;sys.exit(0)<br /><br /># Предупреждение, если ошибок нет, но есть предупреждения &nbsp;<br />if pbs_errors == 0 and pbs_warnings &gt; 0: &nbsp;<br /> &nbsp;print('SERVICE STATUS: WARNING | errors=' + str(pbs_errors) + ' warnings=' + str(pbs_warnings)) &nbsp;<br /> &nbsp;for outputline in taskoutput: &nbsp;<br /> &nbsp; &nbsp;print(outputline) &nbsp;<br /> &nbsp;sys.exit(1)<br /><br /># Ошибка, если есть одна или более ошибок &nbsp;<br />if pbs_errors &gt; 0: &nbsp;<br /> &nbsp;print('SERVICE STATUS: ERROR | errors=' + str(pbs_errors) + ' warnings=' + str(pbs_warnings)) &nbsp;<br /> &nbsp;for outputline in taskoutput: &nbsp;<br /> &nbsp; &nbsp;print(outputline) &nbsp;<br /> &nbsp;sys.exit(2)<br /><br />Используйте на здоровье. <br />
			<i>26.05.2021 22:23:00, Xtenx.</i>]]></description>
			<link>http://proxmox.su/forum/messages/forum64/message445800/90932-monitoring-proxmox-backup-server</link>
			<guid>http://proxmox.su/forum/messages/forum64/message445800/90932-monitoring-proxmox-backup-server</guid>
			<pubDate>Wed, 26 May 2021 22:23:00 +0300</pubDate>
			<category>Proxmox Backup Server</category>
		</item>
		<item>
			<title>Мониторинг Proxmox Backup Server</title>
			<description><![CDATA[<b><a href="http://proxmox.su/forum/messages/forum64/message445799/90932-monitoring-proxmox-backup-server">Мониторинг Proxmox Backup Server</a></b> <i>Proxmox Backup Server</i> в форуме <a href="http://proxmox.su/forum/forum64/">Proxmox Backup Server</a>. <br />
			Привет, я подумываю реализовать несколько проверок Nagios для Proxmox Backup Server. Хотелось бы проверить, что последняя верификация хранилища прошла успешно и не старше X дней. Также хочу проверить, что последняя сборка мусора (Garbage Collection) и очистка (Purge) прошли успешно. Ещё, возможно, проверить, что последний файл бэкапа сервера X не старше Y, а последний бэкап виртуальной машины — не старше XX. Как лучше всего получить доступ к этим данным без парсинга GUI? <br />
			<i>07.10.2020 16:12:00, adoII.</i>]]></description>
			<link>http://proxmox.su/forum/messages/forum64/message445799/90932-monitoring-proxmox-backup-server</link>
			<guid>http://proxmox.su/forum/messages/forum64/message445799/90932-monitoring-proxmox-backup-server</guid>
			<pubDate>Wed, 07 Oct 2020 16:12:00 +0300</pubDate>
			<category>Proxmox Backup Server</category>
		</item>
	</channel>
</rss>
