Files
snmp-scanner/zabbix_printer_template.yaml
cproudlock 389e620261 Initial commit: SNMP scanner and Zabbix template generator
Tools for printer discovery and monitoring:
- snmp_scanner.py: SNMP-based printer discovery
- generate_printer_templates.py: Generate Zabbix templates
- analyze_supplies.py: Analyze printer supply levels
- extract_summary.py: Extract printer data summaries

Includes Zabbix templates for:
- HP Color/Mono printers
- HP DesignJet T1700
- Xerox Color/Mono/Enterprise printers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 13:52:21 -05:00

921 lines
44 KiB
YAML

zabbix_export:
version: '7.4'
template_groups:
- uuid: 3cd4e8d0b828464e8f4b3becf13a9dbd
name: Printers
templates:
- uuid: 8559e8ebcbb849eca59287790b707168
template: Printer SNMP Monitor
name: Printer SNMP Monitor
groups:
- name: Printers
items:
- uuid: f14061bd0a6f4b4aae84fa631c06ad06
name: Printer Model
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.25.3.2.1.3.1]
key: printer.model
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Device model information
tags:
- tag: component
value: printer
- tag: category
value: printer_info
inventory_link: MODEL
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 8cdc1529f9b94279bbb82376f5384197
name: Printer Hostname
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.1.5.0]
key: printer.hostname
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: System hostname
tags:
- tag: component
value: printer
- tag: category
value: printer_info
inventory_link: NAME
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: a1a7295be9a5424192c33d37160792de
name: Printer Serial Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.5.1.1.17.1]
key: printer.serial
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Printer serial number
tags:
- tag: component
value: printer
- tag: category
value: printer_info
inventory_link: SERIALNO_A
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 77ef807ba8214781a162252ca8d47b49
name: System Location
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.1.6.0]
key: printer.location
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Physical location
tags:
- tag: component
value: printer
- tag: category
value: printer_info
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 5ec3baa71dd94dd588dfdbdabd5bdb74
name: MAC Address
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.2.2.1.6.2]
key: printer.macaddress
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Primary network interface MAC address
tags:
- tag: component
value: printer
- tag: category
value: printer_info
inventory_link: MACADDRESS_A
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 1ca63a9ace904cb9953d8073939d80b1
name: Black Toner Current
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.1]
key: printer.toner.black.current
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Black toner current level (raw value)
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: 8425ee5c66984653bb93325a0fa00e6e
name: Black Toner Max
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.8.1.1]
key: printer.toner.black.max
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Black toner maximum capacity
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: a30f2233f3e8460b9888716fa0545fd0
name: Black Toner Level
type: CALCULATED
key: printer.toner.black
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
params: round((last(//printer.toner.black.current)/last(//printer.toner.black.max))*100,0)
description: Black toner percentage
tags:
- tag: component
value: toner
- tag: category
value: toner_levels
- tag: color
value: black
units: '%'
triggers:
- uuid: 67c0cc9e72734c79a09ad5bdeaf341ff
expression: last(/Printer SNMP Monitor/printer.toner.black)<20 and length(last(/Printer SNMP Monitor/printer.cartridge.black))>0
name: Black Toner Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Black Toner Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 6a585ec7829b4c2d8d8a22b6510383b6
expression: last(/Printer SNMP Monitor/printer.toner.black)<10 and length(last(/Printer SNMP Monitor/printer.cartridge.black))>0
name: Black Toner Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Black Toner Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 210e86285b074d828a8dfb02ff5839f8
name: Cyan Toner Current
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.2]
key: printer.toner.cyan.current
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Cyan toner current level (raw value)
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: 55e83440391e49d6bba87f3a9b5895e7
name: Cyan Toner Max
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.8.1.2]
key: printer.toner.cyan.max
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Cyan toner maximum capacity
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: ae0c1782f0b74d6f88be391a446d661e
name: Cyan Toner Level
type: CALCULATED
key: printer.toner.cyan
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
params: round((last(//printer.toner.cyan.current)/last(//printer.toner.cyan.max))*100,0)
description: Cyan toner percentage
tags:
- tag: component
value: toner
- tag: category
value: toner_levels
- tag: color
value: cyan
units: '%'
triggers:
- uuid: 221671dfccdb44579cd7dc9f0abad794
expression: last(/Printer SNMP Monitor/printer.toner.cyan)<20 and length(last(/Printer SNMP Monitor/printer.cartridge.cyan))>0
name: Cyan Toner Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Cyan Toner Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 63b13139e7374ac689072ec7d8e2ba27
expression: last(/Printer SNMP Monitor/printer.toner.cyan)<10 and length(last(/Printer SNMP Monitor/printer.cartridge.cyan))>0
name: Cyan Toner Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Cyan Toner Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: b74db9fdbf3642d7b27433d553636293
name: Magenta Toner Current
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.3]
key: printer.toner.magenta.current
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Magenta toner current level (raw value)
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: bbd164aed85d4f7db496dded965080ee
name: Magenta Toner Max
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.8.1.3]
key: printer.toner.magenta.max
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Magenta toner maximum capacity
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: 3a93c394f95b4c959cc3c20b2f18e014
name: Magenta Toner Level
type: CALCULATED
key: printer.toner.magenta
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
params: round((last(//printer.toner.magenta.current)/last(//printer.toner.magenta.max))*100,0)
description: Magenta toner percentage
tags:
- tag: component
value: toner
- tag: category
value: toner_levels
- tag: color
value: magenta
units: '%'
triggers:
- uuid: c0bc98d818d440ccbdc0e2d9c3f68cdf
expression: last(/Printer SNMP Monitor/printer.toner.magenta)<20 and length(last(/Printer SNMP Monitor/printer.cartridge.magenta))>0
name: Magenta Toner Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Magenta Toner Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: a880d1f24ce24c56ab420bd2d3d46961
expression: last(/Printer SNMP Monitor/printer.toner.magenta)<10 and length(last(/Printer SNMP Monitor/printer.cartridge.magenta))>0
name: Magenta Toner Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Magenta Toner Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: e6131ba3c3a84901a62e46fb3e1a558d
name: Yellow Toner Current
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.4]
key: printer.toner.yellow.current
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Yellow toner current level (raw value)
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: 9efc8706ede34244a3f6146aa329fcc3
name: Yellow Toner Max
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.8.1.4]
key: printer.toner.yellow.max
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Yellow toner maximum capacity
tags:
- tag: component
value: printer
- tag: category
value: toner_levels
units: ''
- uuid: 4b6760dc4b9d4b2eb10e88a130d93a31
name: Yellow Toner Level
type: CALCULATED
key: printer.toner.yellow
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
params: round((last(//printer.toner.yellow.current)/last(//printer.toner.yellow.max))*100,0)
description: Yellow toner percentage
tags:
- tag: component
value: toner
- tag: category
value: toner_levels
- tag: color
value: yellow
units: '%'
triggers:
- uuid: 65ed6a1b74db412d927656c90a265136
expression: last(/Printer SNMP Monitor/printer.toner.yellow)<20 and length(last(/Printer SNMP Monitor/printer.cartridge.yellow))>0
name: Yellow Toner Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Yellow Toner Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: af4da363f9a04f8a8fdd41927e7c71fd
expression: last(/Printer SNMP Monitor/printer.toner.yellow)<10 and length(last(/Printer SNMP Monitor/printer.cartridge.yellow))>0
name: Yellow Toner Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Yellow Toner Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 197a06c64c204e4d977cef902d0503b2
name: Black Cartridge Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.1]
key: printer.cartridge.black
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Black toner cartridge model/part number
tags:
- tag: component
value: printer
- tag: category
value: cartridge_info
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 6f07f404171946b697f1bfa3850036ff
name: Cyan Cartridge Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.2]
key: printer.cartridge.cyan
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Cyan toner cartridge model/part number
tags:
- tag: component
value: printer
- tag: category
value: cartridge_info
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 52e13188182649c2a788326288e0cd6d
name: Magenta Cartridge Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.3]
key: printer.cartridge.magenta
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Magenta toner cartridge model/part number
tags:
- tag: component
value: printer
- tag: category
value: cartridge_info
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: fd58812f0fde467c8444b0b6c2dcb337
name: Yellow Cartridge Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.4]
key: printer.cartridge.yellow
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Yellow toner cartridge model/part number
tags:
- tag: component
value: printer
- tag: category
value: cartridge_info
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: eaa234629c2443cfaa2c6679239ddb53
name: Drum Cartridge R1 Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.5]
key: printer.drum.r1
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Drum cartridge R1 part number
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 94b6b40dfffa4a8eb4386cb345e33d64
name: Drum Cartridge R1 Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.5]
key: printer.drum.r1.level
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Drum cartridge R1 remaining life percentage
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
units: '%'
triggers:
- uuid: ae07bd0a7f214d92ad84c1b5b0f333d7
expression: last(/Printer SNMP Monitor/printer.drum.r1.level)<20 and length(last(/Printer SNMP Monitor/printer.drum.r1))>0
name: Drum Cartridge R1 Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Drum Cartridge R1 Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 87029b70ab414d3aa9370e01468e0bc9
expression: last(/Printer SNMP Monitor/printer.drum.r1.level)<10 and length(last(/Printer SNMP Monitor/printer.drum.r1))>0
name: Drum Cartridge R1 Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Drum Cartridge R1 Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: a05ab2cbf4384a6a93e12d006bc8f8ed
name: Drum Cartridge R2 Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.6]
key: printer.drum.r2
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Drum cartridge R2 part number
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 55250c2fc46d4086a7d3c110db50dc46
name: Drum Cartridge R2 Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.6]
key: printer.drum.r2.level
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Drum cartridge R2 remaining life percentage
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
units: '%'
triggers:
- uuid: da956bb03a7145558ceed46f22f59180
expression: last(/Printer SNMP Monitor/printer.drum.r2.level)<20 and length(last(/Printer SNMP Monitor/printer.drum.r2))>0
name: Drum Cartridge R2 Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Drum Cartridge R2 Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 606e8d5f08f7460eae72015cab07d789
expression: last(/Printer SNMP Monitor/printer.drum.r2.level)<10 and length(last(/Printer SNMP Monitor/printer.drum.r2))>0
name: Drum Cartridge R2 Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Drum Cartridge R2 Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: b582a5b3352a4406aa1a28fefa6b929c
name: Drum Cartridge R3 Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.7]
key: printer.drum.r3
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Drum cartridge R3 part number
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: a8646395156b4fbb90438347522ee6fa
name: Drum Cartridge R3 Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.7]
key: printer.drum.r3.level
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Drum cartridge R3 remaining life percentage
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
units: '%'
triggers:
- uuid: ab6425f3dc484e6fbc029be8de0ea6eb
expression: last(/Printer SNMP Monitor/printer.drum.r3.level)<20 and length(last(/Printer SNMP Monitor/printer.drum.r3))>0
name: Drum Cartridge R3 Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Drum Cartridge R3 Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 2b04057e9e4e43c5bcbfdd8cdd69de58
expression: last(/Printer SNMP Monitor/printer.drum.r3.level)<10 and length(last(/Printer SNMP Monitor/printer.drum.r3))>0
name: Drum Cartridge R3 Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Drum Cartridge R3 Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 31a2f55026c94912a41049bfb22834b4
name: Drum Cartridge R4 Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.8]
key: printer.drum.r4
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Drum cartridge R4 part number
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: d90ac9cf6dd041eca83fa23b339de473
name: Drum Cartridge R4 Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.8]
key: printer.drum.r4.level
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Drum cartridge R4 remaining life percentage
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
units: '%'
triggers:
- uuid: 07c79834c5b848c298ed090f8d1e7b8b
expression: last(/Printer SNMP Monitor/printer.drum.r4.level)<20 and length(last(/Printer SNMP Monitor/printer.drum.r4))>0
name: Drum Cartridge R4 Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Drum Cartridge R4 Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 7241561532a24d7fa9598ed3ea74e44e
expression: last(/Printer SNMP Monitor/printer.drum.r4.level)<10 and length(last(/Printer SNMP Monitor/printer.drum.r4))>0
name: Drum Cartridge R4 Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Drum Cartridge R4 Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: cdfce3b4df8c49859d454a8883c1cec4
name: Waste Toner Container Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.9]
key: printer.waste.partnumber
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Waste toner container part number
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 38a4a4150ba949b2ae62d1d20e411c4e
name: Waste Toner Container Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.9]
key: printer.waste.level
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Waste toner container fill level (higher is more full)
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
units: '%'
triggers:
- uuid: fbf34636cdf242f2850b73d77a339220
expression: last(/Printer SNMP Monitor/printer.waste.level)>80 and length(last(/Printer SNMP Monitor/printer.waste.partnumber))>0
name: Waste Toner Container Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Waste Toner Container Level has dropped below 80%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: f8f3473f933749e88eb9b6b08bf0bd4a
expression: last(/Printer SNMP Monitor/printer.waste.level)>90 and length(last(/Printer SNMP Monitor/printer.waste.partnumber))>0
name: Waste Toner Container Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Waste Toner Container Level has dropped below 90%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 1210838ab6df401ab235653b975421f2
name: Transfer Belt Cleaner Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.10]
key: printer.transfer.belt
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Transfer belt cleaner part number
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: d5e1f76785cd4198a3170a5c55856627
name: Transfer Belt Cleaner Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.10]
key: printer.transfer.belt.level
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Transfer belt cleaner remaining life percentage
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
units: '%'
triggers:
- uuid: 87789c39b16d41e5843846e6f33a41d5
expression: last(/Printer SNMP Monitor/printer.transfer.belt.level)<20 and length(last(/Printer SNMP Monitor/printer.transfer.belt))>0
name: Transfer Belt Cleaner Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Transfer Belt Cleaner Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 8bfab1ce66734b8e99729fb9dd8a0821
expression: last(/Printer SNMP Monitor/printer.transfer.belt.level)<10 and length(last(/Printer SNMP Monitor/printer.transfer.belt))>0
name: Transfer Belt Cleaner Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Transfer Belt Cleaner Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 06718c135cf8495ab4f64a248bed0597
name: Second Bias Transfer Roll Part Number
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.6.1.11]
key: printer.transfer.roller
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Second bias transfer roll part number
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: fc3a32dba72945d89809c0c202fab5d2
name: Second Bias Transfer Roll Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.11.1.1.9.1.11]
key: printer.transfer.roller.level
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Second bias transfer roll remaining life percentage
tags:
- tag: component
value: printer
- tag: category
value: other_supplies
units: '%'
triggers:
- uuid: 371a3230e24c4f41841a0f2f58a81e34
expression: last(/Printer SNMP Monitor/printer.transfer.roller.level)<20 and length(last(/Printer SNMP Monitor/printer.transfer.roller))>0
name: Second Bias Transfer Roll Level is low on {{HOST.NAME}}
priority: WARNING
description: 'Second Bias Transfer Roll Level has dropped below 20%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 6210babed1284bfc890a00d05328dedf
expression: last(/Printer SNMP Monitor/printer.transfer.roller.level)<10 and length(last(/Printer SNMP Monitor/printer.transfer.roller))>0
name: Second Bias Transfer Roll Level is low on {{HOST.NAME}}
priority: HIGH
description: 'Second Bias Transfer Roll Level has dropped below 10%. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 94f4bb2c7f8c494ead740f091846f978
name: Maintenance Kit Model (HP)
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.4.1.11.2.3.9.4.2.1.1.3.3.0]
key: printer.maintenance.model
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: HP maintenance kit model/serial number
tags:
- tag: component
value: printer
- tag: category
value: maintenance_kit_hp
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: dfa98041e7b24981bc41bb3d05dacd77
name: Maintenance Kit Remaining (HP)
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.0]
key: printer.maintenance.remaining
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: HP maintenance kit remaining pages
tags:
- tag: component
value: printer
- tag: category
value: maintenance_kit_hp
units: pages
triggers:
- uuid: 30b01b873ae643e99c1b55efa7584313
expression: last(/Printer SNMP Monitor/printer.maintenance.remaining)<10000 and length(last(/Printer SNMP Monitor/printer.maintenance.model))>0
name: Maintenance Kit Remaining (HP) is low on {{HOST.NAME}}
priority: WARNING
description: 'Maintenance Kit Remaining (HP) has dropped below 10000pages. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 59b58b9fb96e448f8907a68ab21a68bd
expression: last(/Printer SNMP Monitor/printer.maintenance.remaining)<5000 and length(last(/Printer SNMP Monitor/printer.maintenance.model))>0
name: Maintenance Kit Remaining (HP) is low on {{HOST.NAME}}
priority: HIGH
description: 'Maintenance Kit Remaining (HP) has dropped below 5000pages. Replacement part: {ITEM.LASTVALUE2}'
tags:
- tag: scope
value: availability
- uuid: 3352d313b0cf499f8a22e14d9f36e7ce
name: Printer Model (HP MIB)
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.4.1.11.2.3.9.4.2.1.1.3.2.0]
key: printer.maintenance.printer_model
delay: 1h
history: 90d
trends: 0d
value_type: TEXT
description: Printer model from HP maintenance MIB
tags:
- tag: component
value: printer
- tag: category
value: maintenance_kit_hp
preprocessing:
- type: JAVASCRIPT
parameters:
- "// Handle hex-encoded SNMP strings\n// Try multiple approaches to convert hex to ASCII\n\n// First, check if it looks like hex (with spaces, newlines, or other separators)\nvar hexPattern = /^[0-9A-Fa-f\\s]+$/;\nif (hexPattern.test(value) && value.length > 4) {\n // Extract all hex pairs (2 characters)\n var hexBytes = value.match(/[0-9A-Fa-f]{2}/g);\n if (hexBytes && hexBytes.length > 0) {\n var result = '';\n for (var i = 0; i < hexBytes.length; i++) {\n var code = parseInt(hexBytes[i], 16);\n // Only keep printable ASCII (0x20-0x7E)\n if (code >= 32 && code <= 126) {\n result += String.fromCharCode(code);\n }\n }\n if (result.length > 0) {\n return result;\n }\n }\n}\n\n// Fallback: Remove non-printable characters\nreturn value.replace(/[^\\x20-\\x7E]/g, '');"
- uuid: 3126905128cc4eb78326021449df7d67
name: Supply 1 Max Capacity
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.10.2.1.4.1.1]
key: printer.supply.1.max
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Maximum capacity for supply index 1 (usually black)
tags:
- tag: component
value: printer
- tag: category
value: supply_capacity
- uuid: 329ab388b8664648877bedf551dd370d
name: Supply 1 Current Level
type: SNMP_AGENT
snmp_oid: get[1.3.6.1.2.1.43.10.2.1.9.1.1]
key: printer.supply.1.current
delay: 1h
history: 90d
trends: 365d
value_type: FLOAT
description: Current level for supply index 1 (usually black)
tags:
- tag: component
value: printer
- tag: category
value: supply_capacity