Я настраиваю сервер Opsview (nagios) для мониторинга. Пока все идет довольно гладко. Самым непосредственным использованием системы будет мониторинг (или, точнее, предупреждение меня) уровня тонера в принтере. В настоящий момент «предупреждение» приходит, когда кто-то не может печатать, потому что закончился тонер.
Конечно, я могу использовать веб-интерфейс, но я ищу что-то более автоматизированное.
У меня Opsview работает со всеми моими принтерами Dell. Eсть стандартный OID принтера для уровня расходных материалов, который отлично работает на большинстве моих принтеров. 1.3.6.1.2.1.43.11.1.1.9.1.1
.
На Dell этот OID возвращает число, которое представляет количество оставшихся единиц, будь то страницы, граммы, оттиски и т. Д., Но фактическое число, которое отсчитывается по мере использования принтера.
На моих старших принтерах Brother ( 9460
и 9440
), что OID возвращает одно целое число -3
.
Описание OID выглядит следующим образом:
Текущий уровень, если это предложение - контейнер; оставшееся пространство, если этот источник питания является розеткой. Если этот контейнер / приемник с расходными материалами может надежно определить это значение, значение определяется принтером и доступно только для чтения; в противном случае значение может быть записано (удаленной панелью управления или управляющим приложением). Значение (-1) означает другое и, в частности, указывает на то, что субблок не накладывает ограничений на этот параметр. Значение (-2) означает неизвестно. Значение (-3) означает, что принтер знает, что есть запас / оставшееся пространство соответственно.
Ясно, что -3
это не неожиданно. Насколько я понимаю, существует низкий порог, выше которого принтер возвращает -2
. Это потенциально могло бы сработать, но ничего не предлагало бы для построения графиков и т. Д. Братья просто не используют версию с «оставшимся пространством». Однако им известна одна и та же информация. Если я попадаю в веб-интерфейс, появляется своего рода диаграмма, показывающая оставшийся тонер.
Toner Cyan (C)**
■■■■■■■■■□
Toner Magenta (M)**
■■■■■■■■■□
Toner Yellow (Y)**
■■■■■■■■■□
Toner Black (K)**
■■■■■■□□□□
Это информация, которую я хочу получить через snmp.
Есть ли альтернативный стандартный OID или какое-то другое место, где мне стоит поискать?
РЕДАКТИРОВАТЬ
После обращения в Brother по электронной почте был получен ответ:
Джош,
Информация о тонере у вас верна, и Brother не предлагает OID для контроля уровня тонера. Возможно, это то, что может быть добавлено в будущем поколении, но в настоящее время нет поддержки уровней тонера.
С уважением,
Том Сиклз
Менеджер по продукту
Brother International
В MIB все еще есть полезная информация. Например, я могу вернуть то, что отображается на экране самого принтера, и предупредить себя, когда он скажет «заканчивается тонер» или что-то в этом роде. Но, видимо, на данный момент уровни тонера недостижимы.
РЕДАКТИРОВАТЬ 2
Хорошо, так как я не собирался возвращать уровни тонера, самое простое, что я нашел, - это проверка snmp, которая просто выдаёт предупреждение, когда что-нибудь является необычным, и тогда я могу просто зайти в веб-интерфейс и посмотреть, что это такое.
Как и в случае с этими принтерами Brother, ЖК-экран имеет оранжевую подсветку, когда отображается сообщение о состоянии, отличное от «все в порядке». Итак, я нашел OID, который возвращает 1
когда он зеленый, и 2
когда его оранжевый. И Nagios предупредит о оранжевом.
fwiw, если кому-то интересно, вот OID:
SNMPv2-SMI::enterprises.2435.2.3.9.4.2.1.5.4.5.6.0
Настоящая проблема здесь в том, встроила ли компания Brother в принтер поддержку, чтобы сообщать фактические уровни тонера через SNMP. Просмотр MIB конкретных поставщиков - хороший способ получить представление о том, какая информация поддерживается.
Поиск MIB брата - http://www.oidview.com/mibs/2435/BROTHER-MIB.html - мы можем видеть, что они, кажется, только сообщают о низком уровне тонера, что объясняет, почему при использовании стандартного MIB принтера вы ограничены этим статусом «-3» / «У меня не низкий уровень».
Однако возможно, что информация на этом сайте неточная; действительно, я бы порекомендовал вам попытаться получить MIB Brother непосредственно у них - http://welcome.solutions.brother.com/BSC/public_s/id/managedprint/en/mib.html?reg=us&c=us_ot&lang=en&redirect=on
Это не гарантирует, что это сработает, но работает с несколькими принтерами - если это так, то можно сэкономить много проб и ошибок.
Установите полный пакет программного обеспечения / драйверов, который устанавливает на панель задач утилиту, сообщающую о состоянии принтера.
Установите wirehark и начните смотреть, что происходит с вашим ником.
Нас интересует только трафик SMNP к / от IP-адреса вашего принтера.
Посмотрите, какой OID использует программное обеспечение, а затем попробуйте установить его в nagios.
Я просмотрел стандартный принтер MIB и нашел таблицу предупреждений на 1.3.6.1.2.1.43.18
(RFC1759 имеет константы).
Если вы посмотрите на константы для 1.3.6.1.2.1.43.18.1.1.7
в RFC (стр. 90) вы найдете следующее:
markerTonerAlmostEmpty(1104),
markerInkAlmostEmpty(1105),
markerPrintRibbonAlmostEmpty(1106),
Это не уровень тонера и не говорит вам, какой картридж в многоцветном принтере.
1.3.6.1.2.1.43.18.1.1.8
имеет текст предупреждения, в котором говорится что-то вроде Toner Low (Y)
, который может быть проанализирован скриптом.
Я искал ту же информацию. Имею 2 брата принтера HL2270DW. Я думаю, что нашел то, что нужно. На веб-странице 2270, находящейся в процессе настройки, есть гистограмма, отображающая процент оставшегося тонера. Я нашел 2 OID, которые возвращают количество страниц и процент оставшегося тонера. Я не нашел способа определить, какая картриджа с тонером установлена, стандартная или высокая. OID:
$TonerLevel = '.1.3.6.1.2.1.43.10.2.1.5.1.1';
$PageCnt = '.1.3.6.1.2.1.43.10.2.1.4.1.1';