Запрос общего количества страниц через SNMP HP Laserjet

Запрос общего количества страниц через SNMP HP Laserjet

Меня попросили получить общее количество страниц для более чем 100 принтеров, которые у нас есть на работе. Все они HP Laser или Business Jet, и подавляющее большинство из них подключены через какую-либо сетевую карту/коммутатор HP JetDirect. После многих часов ввода IP-адресов и копирования и вставки соответствующих цифр в Excel меня теперь просят делать это еженедельно. Это навело меня на мысль, что должен быть более простой способ, как ИТ-специалист я наверняка могу придумать какой-нибудь способ сэкономить время, чтобы решить эту проблему.

Достаточно сказать, что я не чувствую себя профессионалом после целого дня попыток заставить SNMP работать у меня!

Насколько я понимаю, первым делом нужно включить SNMP на принтере. Готово. Далее мне понадобится что-то для запроса бита SNMP. Я решил использовать открытый исходный код и бесплатно, и кто-то здесь порекомендовал net-snmp как достойный инструмент (я бы хотел просто добавить принтеры как узлы в SolarWinds, но у нас, по-видимому, немного туго с лицензиями). Далее мне нужно имя MIB. Я считаю, что для этого в HP-LASERJET-COMMON-MIB есть правильная информация. Загрузил это и добавил в net-snmp. Теперь мне нужен OID, который, как я полагаю, после долгих поисков — это printer-media-simplex-count (у нас нет дуплексных принтеров, которые нас интересуют по крайней мере). Выполнение следующей команды дает следующий деморализующий вывод:

snmpget -v 2c -c public 10.168.5.1 HP-LASERJET-COMMON-MIB:.1.3.6.1.2.1.1.16.1.1.1

(OID был получен в результате выполнения:

snmptranslate -IR -On printed-media-simplex-count  
Unlinked OID in HP-LASERJET-COMMON-MIB: hp ::= { enterprises 11 }  
Undefined identifier: enterprises near line 3 of C:/usr/share/snmp/mibs/HP-LASER  
JET-COMMON-MIB..txt  
.1.3.6.1.2.1.1.16.1.1.1  )  


Unlinked OID in HP-LASERJET-COMMON-MIB: hp ::= { enterprises 11 }  
Undefined identifier: enterprises near line 3 of C:/usr/share/snmp/mibs/HP-LASER  
JET-COMMON-MIB..txt  
HP-LASERJET-COMMON-MIB:.1.3.6.1.2.1.1.16.1.1.1:  

Я что, совсем не туда лаю? Моей целью было написать скрипт для вывода в файл всех IP-адресов принтеров, а затем засунуть его в Excel, чтобы мои господа и хозяева могли переварить его на досуге. У меня такое чувство, что я использую либо неправильный MIB, либо неправильный OID из указанного MIB (или и то, и другое). Есть ли у кого-нибудь какие-нибудь указания по этому поводу? Или мне следует сдаться и вернуться к навигации по каждой веб-странице принтеров по отдельности (надеюсь, что нет).

решение1

Ну, это довольно странно — я думал, что эта информация предоставляется через SNMP. Однако быстрый snmpwalk одного из наших P4515 показал только количество страниц, напечатанных с установленным в данный момент термоэлементом. Чтобы просмотреть всю информацию, предоставленную через snmp, я сделал следующее:

snmpwalk -Cc -v 1 -c public ipaddress

Если OID для напечатанных страниц на установленном в данный момент термоблоке имеет какое-либо значение, то он выглядит следующим образом:

2.43.10.2.1.4.1.1

решение2

Стандартное «общее количество страниц» составляет 1.3.6.1.2.1.43.10.2.1.4.1.1

Различные модели используют разные OID для таких сведений, как количество отправленных по факсу/скопированных/напечатанных/двусторонней печати/цветной/черно-белой печати/...

решение3

Боюсь, я не смогу помочь с MIB, но вы могли бы использовать PowerShell, чтобы облегчить себе задачу по извлечению значений с веб-страницы на принтере. Должно быть, можно изменить пример ниже, чтобы сделать то, что вам нужно:

http://blogs.technet.com/b/otto/archive/2007/08/23/quick-and-dirty-web-site-monitoring-with-powershell.aspx

В Perl/Python также имеются модули веб-скрапинга, если это возможно.

Связанный контент