Страница 1 из 1

snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 13 мар 2018 14:54
Роман Кулакович
Добрый день

Хочу собирать информацию по отказам техники Kyocera. У принтеров есть oid 1.3.6.1.2.1.43.18.1.1.7.1, который возвращает текущий статус устройства (работает, нет бумаги, замятие и т.д.).

Когда все хорошо, принтер ответит:

Код: Выделить всё

iso.3.6.1.2.1.43.18.1.1.7.1.2 = INTEGER: 503
Но помимо этого oid, имеется ещё около сотни, сообщающих о разных статусах устройства: замятие, открыта крышка, перегрев, количество бумаги в лотке и т.д.
Отсюда следует моя проблема, что как только произойдет замятие, только тогда принтером будет создан соответствующий oid который и сообщит о ошибке.

Как бы корректно добавить соответствующие oid-ы, что бы и icinga не ругалась, что нет данных, но и оперативно можно было бы узнавать о проблеме :)

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 13 мар 2018 16:12
Алексей Максимов
Доброго времени года, Роман.

Плагин snmp_vars_discovery это не совсем то, что Вам нужно. Этот плагин предполагает лишь заполнение некоторых кастомных свойств в наборе свойств хоста в Icinga Director. Основная идея его использования - сбор дополнительной инвентаризационной информации. У Вас же, если я верно понимаю, задача стоит в мониторинге состояния каких-то конкретных OID. Для этого лучше использовать стандартный плагин check_snmp, пример настройки которого описывался в заметке ...Настройка мониторинга сетевых устройств в Icinga Director ... Опрос по протоколу SNMP

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 14 мар 2018 00:45
Роман Кулакович
Мне кажется сам плагин особой роли не играет. Просто так получилось, что изначально проверялся только уровень тонера. Переделать не проблема.
Вопрос в другом, пока принтер не скажет что в нём застряла бумага, соответствующего проблеме oid не будет существовать и Icinga (как наверное и любая другая система мониторинга) сообщит, что где-то ошибка, такого oid нет.
Я, догадываюсь, как спрятать отсутствующие значения в Grafana, но как сделать, что бы эти метрики не выпадали в ошибку Icinga?

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 14 мар 2018 09:53
Алексей Максимов
Было бы наверно проще, если разобрать какой-то конкретный пример. Мне тут сказали, что у нас есть несколько девайсов Kyocera. Поэтому давайте разберём работу на примере какого нибудь отдельно взятого OID, за которым Вы хотите наблюдать.

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 15 мар 2018 03:51
Роман Кулакович
Для oid 1.3.6.1.2.1.43.18.1.1.7.1 существует почти сотня значений. Что бы специально принтер не ломать, можно любой выбрать. Тут наверное не принципиально.
Нормальная работа устройства определяется кодом 503, замятие 8, открытая крышка для замены бункера 3.

Вот все коды:

Код: Выделить всё

other(1)
unknown(2)
coverOpened(3)
coverClosed(4)
interlockOpened(5)
interlockClosed(6)
configurationChanged(7)
jammed(8)
subunitMissing(9)
subunitLifeAlmostOver(10)
subunitLifeOver(11)
subunitLifeAlmostEmpty(12)
subunitEmpty(13)
subunitAlmostFull(14)
subunitFull(15)
subunitNearLimit(16)
subunitAtLimit(17)
subunitOpened(18)
subunitClosed(19)
subunitTurnedOn(20)
subunitTurnedOff(21)
subunitOffline(22)
subunitPoverSaver(23)
subunitWarningUp(24)
subunitAdded(25)
subunitRemoved(26)
subunitResourceAdded(27)
subunitResourceRemoved(28)
subunitRecoverableFailure(29)
subunitUnrecoverableFailure(30)
subunitRecoverableStorageError(31)
subunitUnrecoverableStorageError(32)
subunitMotorFailure(33)
subunitMemoryExhausted(34)
subunitunderTemperature(35)
subunitOverTemperature(36)
subunitTimingFailure(37)
subunitThermistorfailure(38)
doorOpen(501)
doorClosed(502)
poweredUp(503)
poweredDown(504)
printerNMSReset(505)
printerManualReset(506)
printerReadyToPrint(507)
inputMediaTrayMissing(801)
inputMediaSizeChanged(802)
inputMediaWeightChanged(803)
inputMediaTypeChanged(804)
inputMediaColorChanged(805)
inputMediaFormPartsChange(806)
inputMediaSupplyLow(807)
inputMediaSupplyEmpty(808)
inputMediaChangeRequest(809)
inputManualInputrequest(810)
inputTrayPositionFailure(811)
inputTrayElevationFailure(812)
inputCannotFeedSizeSelected(813)
outputMediaTrayMissing(901)
outputMediaTrayAlmostFull(902)
outputMediaTrayFull(903)
outputMailboxSelectFailure(904)
markerFuserUnderTemperature(1001)
markerFuserOverTemperature(1002)
markerFuserTimingFailure(1003)
markerFuserThermistorFailure(1004)
markerAdjustingPrintQuality(1005)
markerTonerEmpty(1101)
markerInkEmpty(1102)
markerPrintRibbonEmpty(1103)
markerTonerAlmostEmpty(1104)
markerInkAlmostEmpty(1105)
markerPrintRibbonAlmostEmpty(1106)
markerWasteTonerReceptacleAlmostFull(1107)
markerWasteInkReceptacleAlmostFull(1108)
markerWasteTonerReceptacleFull(1109)
markerWasteInkReceptacleFull(1110)
markerOpcLifeAlmostOver(1111)
markerOpcLifeOver(1112)
markerDeveloperAlmostEmpty(1113)
markerDevelopoerEmpty(1114)
markerTonerCartridgeMissing(1115)
mediaPathMediaTrayMissing(1301)
mediaPathMediaTrayAlmostFull(1302)
mediaPathMediaTrayFull(1303)
interpreterMemoryIncreased(1501)
interpreterMemoryDecreased(1502)
interpreterCartridgeAdded(1503)
interpreterCartridgeDeleted(1504)
interpreterResourceAdded(1505)
interpreterResourceDeleted(1506)
interpreterResourceUnavailable(1507)
interpreterComplexPageEncountered(1509)
alertRemovalOfBinaryChangeEntry(1801)
Сам принтер сообщает код следующим образом:

Код: Выделить всё

iso.3.6.1.2.1.43.18.1.1.7.1.11 = INTEGER: 3

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 15 мар 2018 06:08
Алексей Максимов
Хорошо, а что Вы хотите получить в конечном итоге?

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 15 мар 2018 06:29
Роман Кулакович
В целом не принципиально. Я бы хотел с логикой действий разобраться, как сделать, что бы в отсутствии соответствующего кода, Icinga не сообщала о ошибке.
Для примера можно разобрать ситуацию с открытой крышкой. Как только её подняли, icinga сообщила, что на таком-то принтере открыта крышка. Т.е. необходимо как-то познакомить Icinga с кодами или oid-ами, и в то же время, когда принтер работает исправно, icinga не должна сыпать ошибками, что не получает тот или иной параметр от принтера.

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 15 мар 2018 08:30
Алексей Максимов
Насчёт "не принципиально", не соглашусь. Так как порядок действий всегда выстраивается в зависимости от конечной цели. Разные цели подразумевают разные вариации подходов к их реализации. Одну и туже задачу можно решать с помощью разных плагинов и при этом порядок настройки будет разным. Также можно написать свой плагин, который будет выполнять узкую задачу. Вы начали с того, что желаете "собирать информацию по отказам техники Kyocera", а закончили тем, что "что бы в отсутствии соответствующего кода, Icinga не сообщала о ошибке". Мне кажется, что это разные задачи. Поэтому я и пытаюсь понять, чего мы хотим добиться к конечном итоге на каком-то конкретном примере.
Если Вы хотите написать тысячу своих служб в Icinga Director под каждый "плавающий" OID у принтера, но при этом нужно, чтобы Icinga не пугалась отсутствия IOD, - это одна задача. Если Вы хотите сделать плагин, который будет узко-специализированно работать именно с пачкой OID для принтеров Kyosera, то это совсем другая задача.

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 15 мар 2018 10:55
Роман Кулакович
Это просто я не так понял. Извиняюсь)

Конечная цель это плагин который будет работать только с Киосерами

Re: snmp_vars_discovery + Kyocera + oid которых сейчас нет

Добавлено: 16 мар 2018 05:37
Алексей Максимов
Тогда, если идти по пути наименьшего сопротивления, стоит в первую очередь посмотреть готовые специализированные плагины для мониторинга периферийной техники. Вот две ссылки на такие плагины:

Выбрать есть из чего.