logstash-integration-snmp 4.0.0-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CHANGELOG.md +23 -0
- data/CONTRIBUTORS +20 -0
- data/Gemfile +11 -0
- data/LICENSE +202 -0
- data/README.md +89 -0
- data/VERSION +1 -0
- data/docs/index.asciidoc +202 -0
- data/docs/input-snmp.asciidoc +524 -0
- data/docs/input-snmptrap.asciidoc +392 -0
- data/lib/logstash/inputs/snmp.rb +369 -0
- data/lib/logstash/inputs/snmptrap.rb +190 -0
- data/lib/logstash/plugin_mixins/snmp/common.rb +197 -0
- data/lib/logstash-integration-snmp_jars.rb +6 -0
- data/lib/mibs/ietf/ACCOUNTING-CONTROL-MIB.dic +1316 -0
- data/lib/mibs/ietf/ADSL-LINE-EXT-MIB.dic +1724 -0
- data/lib/mibs/ietf/ADSL-LINE-MIB.dic +7297 -0
- data/lib/mibs/ietf/ADSL-TC-MIB.dic +160 -0
- data/lib/mibs/ietf/ADSL2-LINE-MIB.dic +8663 -0
- data/lib/mibs/ietf/ADSL2-LINE-TC-MIB.dic +1462 -0
- data/lib/mibs/ietf/AGENTX-MIB.dic +817 -0
- data/lib/mibs/ietf/AGGREGATE-MIB.dic +708 -0
- data/lib/mibs/ietf/ALARM-MIB.dic +1734 -0
- data/lib/mibs/ietf/APM-MIB.dic +2870 -0
- data/lib/mibs/ietf/APPC-MIB.dic +8687 -0
- data/lib/mibs/ietf/APPLETALK-MIB.dic +4399 -0
- data/lib/mibs/ietf/APPLICATION-MIB.dic +3750 -0
- data/lib/mibs/ietf/APPN-DLUR-MIB.dic +972 -0
- data/lib/mibs/ietf/APPN-MIB.dic +9364 -0
- data/lib/mibs/ietf/APPN-TRAP-MIB.dic +664 -0
- data/lib/mibs/ietf/APS-MIB.dic +2430 -0
- data/lib/mibs/ietf/ARC-MIB.dic +552 -0
- data/lib/mibs/ietf/ATM-ACCOUNTING-INFORMATION-MIB.dic +816 -0
- data/lib/mibs/ietf/ATM-MIB.dic +4104 -0
- data/lib/mibs/ietf/ATM-TC-MIB.dic +914 -0
- data/lib/mibs/ietf/ATM2-MIB.dic +4715 -0
- data/lib/mibs/ietf/BFD-STD-MIB.dic +2367 -0
- data/lib/mibs/ietf/BFD-TC-STD-MIB.dic +202 -0
- data/lib/mibs/ietf/BGP4-MIB.dic +1931 -0
- data/lib/mibs/ietf/BLDG-HVAC-MIB.dic +812 -0
- data/lib/mibs/ietf/BRIDGE-MIB.dic +2257 -0
- data/lib/mibs/ietf/CAPWAP-BASE-MIB.dic +4128 -0
- data/lib/mibs/ietf/CAPWAP-DOT11-MIB.dic +482 -0
- data/lib/mibs/ietf/CHARACTER-MIB.dic +1140 -0
- data/lib/mibs/ietf/CIRCUIT-IF-MIB.dic +493 -0
- data/lib/mibs/ietf/CLNS-MIB.dic +1702 -0
- data/lib/mibs/ietf/COFFEE-POT-MIB.dic +282 -0
- data/lib/mibs/ietf/COPS-CLIENT-MIB.dic +1270 -0
- data/lib/mibs/ietf/DECNET-PHIV-MIB.dic +5837 -0
- data/lib/mibs/ietf/DIAL-CONTROL-MIB.dic +2139 -0
- data/lib/mibs/ietf/DIFFSERV-CONFIG-MIB.dic +378 -0
- data/lib/mibs/ietf/DIFFSERV-MIB.dic +5073 -0
- data/lib/mibs/ietf/DIRECTORY-SERVER-MIB.dic +1041 -0
- data/lib/mibs/ietf/DISMAN-EVENT-MIB.dic +3151 -0
- data/lib/mibs/ietf/DISMAN-EXPRESSION-MIB.dic +1716 -0
- data/lib/mibs/ietf/DISMAN-NSLOOKUP-MIB.dic +698 -0
- data/lib/mibs/ietf/DISMAN-PING-MIB.dic +2635 -0
- data/lib/mibs/ietf/DISMAN-SCHEDULE-MIB.dic +1744 -0
- data/lib/mibs/ietf/DISMAN-SCRIPT-MIB.dic +2820 -0
- data/lib/mibs/ietf/DISMAN-TRACEROUTE-MIB.dic +3239 -0
- data/lib/mibs/ietf/DLSW-MIB.dic +5635 -0
- data/lib/mibs/ietf/DNS-RESOLVER-MIB.dic +1765 -0
- data/lib/mibs/ietf/DNS-SERVER-MIB.dic +1593 -0
- data/lib/mibs/ietf/DOCS-BPI-MIB.dic +2634 -0
- data/lib/mibs/ietf/DOCS-CABLE-DEVICE-MIB.dic +5042 -0
- data/lib/mibs/ietf/DOCS-IETF-BPI2-MIB.dic +5478 -0
- data/lib/mibs/ietf/DOCS-IETF-CABLE-DEVICE-NOTIFICATION-MIB.dic +2447 -0
- data/lib/mibs/ietf/DOCS-IETF-QOS-MIB.dic +4886 -0
- data/lib/mibs/ietf/DOCS-IETF-SUBMGT-MIB.dic +1331 -0
- data/lib/mibs/ietf/DOCS-IF-MIB.dic +7980 -0
- data/lib/mibs/ietf/DOT12-IF-MIB.dic +1066 -0
- data/lib/mibs/ietf/DOT12-RPTR-MIB.dic +2669 -0
- data/lib/mibs/ietf/DOT3-EPON-MIB.dic +3297 -0
- data/lib/mibs/ietf/DOT3-OAM-MIB.dic +2830 -0
- data/lib/mibs/ietf/DS0-MIB.dic +466 -0
- data/lib/mibs/ietf/DS0BUNDLE-MIB.dic +468 -0
- data/lib/mibs/ietf/DS1-MIB.dic +4890 -0
- data/lib/mibs/ietf/DS3-MIB.dic +2719 -0
- data/lib/mibs/ietf/DSA-MIB.dic +888 -0
- data/lib/mibs/ietf/DSMON-MIB.dic +6177 -0
- data/lib/mibs/ietf/DVB-RCS-MIB.dic +5764 -0
- data/lib/mibs/ietf/EBN-MIB.dic +1026 -0
- data/lib/mibs/ietf/EFM-CU-MIB.dic +4335 -0
- data/lib/mibs/ietf/ENTITY-MIB.dic +2235 -0
- data/lib/mibs/ietf/ENTITY-SENSOR-MIB.dic +653 -0
- data/lib/mibs/ietf/ENTITY-STATE-MIB.dic +457 -0
- data/lib/mibs/ietf/ENTITY-STATE-TC-MIB.dic +260 -0
- data/lib/mibs/ietf/ETHER-CHIPSET-MIB.dic +787 -0
- data/lib/mibs/ietf/EtherLike-MIB.dic +2548 -0
- data/lib/mibs/ietf/FC-MGMT-MIB.dic +3465 -0
- data/lib/mibs/ietf/FCIP-MGMT-MIB.dic +1596 -0
- data/lib/mibs/ietf/FDDI-SMT73-MIB.dic +3378 -0
- data/lib/mibs/ietf/FIBRE-CHANNEL-FE-MIB.dic +2504 -0
- data/lib/mibs/ietf/FLOAT-TC-MIB.dic +128 -0
- data/lib/mibs/ietf/FLOW-METER-MIB.dic +3201 -0
- data/lib/mibs/ietf/FORCES-MIB.dic +598 -0
- data/lib/mibs/ietf/FR-ATM-PVC-SERVICE-IWF-MIB.dic +1601 -0
- data/lib/mibs/ietf/FR-MFR-MIB.dic +1351 -0
- data/lib/mibs/ietf/FRAME-RELAY-DTE-MIB.dic +1688 -0
- data/lib/mibs/ietf/FRNETSERV-MIB.dic +3940 -0
- data/lib/mibs/ietf/FRSLD-MIB.dic +2580 -0
- data/lib/mibs/ietf/Finisher-MIB.dic +1416 -0
- data/lib/mibs/ietf/GMPLS-LABEL-STD-MIB.dic +965 -0
- data/lib/mibs/ietf/GMPLS-LSR-STD-MIB.dic +693 -0
- data/lib/mibs/ietf/GMPLS-TC-STD-MIB.dic +180 -0
- data/lib/mibs/ietf/GMPLS-TE-STD-MIB.dic +2542 -0
- data/lib/mibs/ietf/GSMP-MIB.dic +2468 -0
- data/lib/mibs/ietf/HC-ALARM-MIB.dic +1050 -0
- data/lib/mibs/ietf/HC-PerfHist-TC-MIB.dic +310 -0
- data/lib/mibs/ietf/HC-RMON-MIB.dic +4456 -0
- data/lib/mibs/ietf/HDSL2-SHDSL-LINE-MIB.dic +3955 -0
- data/lib/mibs/ietf/HOST-RESOURCES-MIB.dic +2453 -0
- data/lib/mibs/ietf/HPR-IP-MIB.dic +640 -0
- data/lib/mibs/ietf/HPR-MIB.dic +1959 -0
- data/lib/mibs/ietf/IANA-ITU-ALARM-TC-MIB.dic +936 -0
- data/lib/mibs/ietf/IF-CAP-STACK-MIB.dic +356 -0
- data/lib/mibs/ietf/IF-INVERTED-STACK-MIB.dic +220 -0
- data/lib/mibs/ietf/IF-MIB.dic +2753 -0
- data/lib/mibs/ietf/IFCP-MGMT-MIB.dic +1717 -0
- data/lib/mibs/ietf/IGMP-STD-MIB.dic +809 -0
- data/lib/mibs/ietf/INET-ADDRESS-MIB.dic +570 -0
- data/lib/mibs/ietf/INTEGRATED-SERVICES-GUARANTEED-MIB.dic +319 -0
- data/lib/mibs/ietf/INTEGRATED-SERVICES-MIB.dic +1196 -0
- data/lib/mibs/ietf/INTERFACETOPN-MIB.dic +1705 -0
- data/lib/mibs/ietf/IP-FORWARD-MIB.dic +1853 -0
- data/lib/mibs/ietf/IP-MIB.dic +7064 -0
- data/lib/mibs/ietf/IPATM-IPMC-MIB.dic +4830 -0
- data/lib/mibs/ietf/IPFIX-MIB.dic +2334 -0
- data/lib/mibs/ietf/IPFIX-SELECTOR-MIB.dic +215 -0
- data/lib/mibs/ietf/IPMCAST-MIB.dic +3390 -0
- data/lib/mibs/ietf/IPMROUTE-STD-MIB.dic +1246 -0
- data/lib/mibs/ietf/IPOA-MIB.dic +2372 -0
- data/lib/mibs/ietf/IPS-AUTH-MIB.dic +1609 -0
- data/lib/mibs/ietf/IPSEC-SPD-MIB.dic +3989 -0
- data/lib/mibs/ietf/IPV6-FLOW-LABEL-MIB.dic +110 -0
- data/lib/mibs/ietf/IPV6-ICMP-MIB.dic +748 -0
- data/lib/mibs/ietf/IPV6-MIB.dic +2028 -0
- data/lib/mibs/ietf/IPV6-MLD-MIB.dic +659 -0
- data/lib/mibs/ietf/IPV6-TCP-MIB.dic +332 -0
- data/lib/mibs/ietf/IPV6-UDP-MIB.dic +209 -0
- data/lib/mibs/ietf/ISCSI-MIB.dic +4613 -0
- data/lib/mibs/ietf/ISDN-MIB.dic +1796 -0
- data/lib/mibs/ietf/ISIS-MIB.dic +6215 -0
- data/lib/mibs/ietf/ISNS-MIB.dic +6578 -0
- data/lib/mibs/ietf/ITU-ALARM-MIB.dic +665 -0
- data/lib/mibs/ietf/ITU-ALARM-TC-MIB.dic +137 -0
- data/lib/mibs/ietf/Job-Monitoring-MIB.dic +2519 -0
- data/lib/mibs/ietf/L2TP-MIB.dic +4050 -0
- data/lib/mibs/ietf/LANGTAG-TC-MIB.dic +104 -0
- data/lib/mibs/ietf/LISP-MIB.dic +4067 -0
- data/lib/mibs/ietf/LMP-MIB.dic +5166 -0
- data/lib/mibs/ietf/MALLOC-MIB.dic +2156 -0
- data/lib/mibs/ietf/MAU-MIB.dic +2619 -0
- data/lib/mibs/ietf/MIDCOM-MIB.dic +2856 -0
- data/lib/mibs/ietf/MIOX25-MIB.dic +828 -0
- data/lib/mibs/ietf/MIP-MIB.dic +3473 -0
- data/lib/mibs/ietf/MOBILEIPV6-MIB.dic +5228 -0
- data/lib/mibs/ietf/MPLS-FTN-STD-MIB.dic +1594 -0
- data/lib/mibs/ietf/MPLS-L3VPN-STD-MIB.dic +2548 -0
- data/lib/mibs/ietf/MPLS-LC-ATM-STD-MIB.dic +491 -0
- data/lib/mibs/ietf/MPLS-LC-FR-STD-MIB.dic +395 -0
- data/lib/mibs/ietf/MPLS-LDP-ATM-STD-MIB.dic +1019 -0
- data/lib/mibs/ietf/MPLS-LDP-FRAME-RELAY-STD-MIB.dic +862 -0
- data/lib/mibs/ietf/MPLS-LDP-GENERIC-STD-MIB.dic +445 -0
- data/lib/mibs/ietf/MPLS-LDP-STD-MIB.dic +3657 -0
- data/lib/mibs/ietf/MPLS-LSR-STD-MIB.dic +3103 -0
- data/lib/mibs/ietf/MPLS-TC-STD-MIB.dic +911 -0
- data/lib/mibs/ietf/MPLS-TE-STD-MIB.dic +3673 -0
- data/lib/mibs/ietf/MSDP-MIB.dic +1893 -0
- data/lib/mibs/ietf/MTA-MIB.dic +1898 -0
- data/lib/mibs/ietf/Modem-MIB.dic +2054 -0
- data/lib/mibs/ietf/NAT-MIB.dic +3866 -0
- data/lib/mibs/ietf/NETWORK-SERVICES-MIB.dic +1034 -0
- data/lib/mibs/ietf/NHDP-MIB.dic +3005 -0
- data/lib/mibs/ietf/NHRP-MIB.dic +3660 -0
- data/lib/mibs/ietf/NOTIFICATION-LOG-MIB.dic +1156 -0
- data/lib/mibs/ietf/NTPv4-MIB.dic +1535 -0
- data/lib/mibs/ietf/OPT-IF-MIB.dic +8972 -0
- data/lib/mibs/ietf/OSPF-MIB.dic +5963 -0
- data/lib/mibs/ietf/OSPF-TRAP-MIB.dic +1190 -0
- data/lib/mibs/ietf/OSPFV3-MIB.dic +5708 -0
- data/lib/mibs/ietf/P-BRIDGE-MIB.dic +1499 -0
- data/lib/mibs/ietf/PARALLEL-MIB.dic +476 -0
- data/lib/mibs/ietf/PIM-MIB.dic +1393 -0
- data/lib/mibs/ietf/PIM-STD-MIB.dic +6819 -0
- data/lib/mibs/ietf/PINT-MIB.dic +830 -0
- data/lib/mibs/ietf/PKTC-IETF-MTA-MIB.dic +3191 -0
- data/lib/mibs/ietf/PKTC-IETF-SIG-MIB.dic +4713 -0
- data/lib/mibs/ietf/PMIPV6-MIB.dic +3010 -0
- data/lib/mibs/ietf/PMIPV6-TC-MIB.dic +293 -0
- data/lib/mibs/ietf/POLICY-BASED-MANAGEMENT-MIB.dic +3316 -0
- data/lib/mibs/ietf/POWER-ETHERNET-MIB.dic +959 -0
- data/lib/mibs/ietf/PPP-BRIDGE-NCP-MIB.dic +587 -0
- data/lib/mibs/ietf/PPP-IP-NCP-MIB.dic +269 -0
- data/lib/mibs/ietf/PPP-LCP-MIB.dic +994 -0
- data/lib/mibs/ietf/PPP-SEC-MIB.dic +411 -0
- data/lib/mibs/ietf/PSAMP-MIB.dic +998 -0
- data/lib/mibs/ietf/PTOPO-MIB.dic +1135 -0
- data/lib/mibs/ietf/PW-ATM-MIB.dic +1642 -0
- data/lib/mibs/ietf/PW-CEP-STD-MIB.dic +3661 -0
- data/lib/mibs/ietf/PW-STD-MIB.dic +3592 -0
- data/lib/mibs/ietf/PW-TC-STD-MIB.dic +437 -0
- data/lib/mibs/ietf/PW-TDM-MIB.dic +1896 -0
- data/lib/mibs/ietf/PerfHist-TC-MIB.dic +152 -0
- data/lib/mibs/ietf/Printer-MIB.dic +6665 -0
- data/lib/mibs/ietf/Q-BRIDGE-MIB.dic +3115 -0
- data/lib/mibs/ietf/RADIUS-ACC-CLIENT-MIB.dic +991 -0
- data/lib/mibs/ietf/RADIUS-ACC-SERVER-MIB.dic +1183 -0
- data/lib/mibs/ietf/RADIUS-AUTH-CLIENT-MIB.dic +1073 -0
- data/lib/mibs/ietf/RADIUS-AUTH-SERVER-MIB.dic +1251 -0
- data/lib/mibs/ietf/RADIUS-DYNAUTH-CLIENT-MIB.dic +1116 -0
- data/lib/mibs/ietf/RADIUS-DYNAUTH-SERVER-MIB.dic +1003 -0
- data/lib/mibs/ietf/RAQMON-MIB.dic +2695 -0
- data/lib/mibs/ietf/RBRIDGE-MIB.dic +2981 -0
- data/lib/mibs/ietf/RDBMS-MIB.dic +1935 -0
- data/lib/mibs/ietf/RFC1065-SMI.dic +108 -0
- data/lib/mibs/ietf/RFC1155-SMI.dic +118 -0
- data/lib/mibs/ietf/RFC1158-MIB.dic +2440 -0
- data/lib/mibs/ietf/RFC1213-MIB.dic +3434 -0
- data/lib/mibs/ietf/RFC1269-MIB.dic +557 -0
- data/lib/mibs/ietf/RFC1271-MIB.dic +4135 -0
- data/lib/mibs/ietf/RFC1285-MIB.dic +2842 -0
- data/lib/mibs/ietf/RFC1316-MIB.dic +800 -0
- data/lib/mibs/ietf/RFC1381-MIB.dic +1347 -0
- data/lib/mibs/ietf/RFC1382-MIB.dic +3820 -0
- data/lib/mibs/ietf/RFC1414-MIB.dic +214 -0
- data/lib/mibs/ietf/RIPv2-MIB.dic +773 -0
- data/lib/mibs/ietf/RMON-MIB.dic +5551 -0
- data/lib/mibs/ietf/RMON2-MIB.dic +8224 -0
- data/lib/mibs/ietf/ROHC-MIB.dic +1613 -0
- data/lib/mibs/ietf/ROHC-RTP-MIB.dic +859 -0
- data/lib/mibs/ietf/ROHC-UNCOMPRESSED-MIB.dic +267 -0
- data/lib/mibs/ietf/RPKI-ROUTER-MIB.dic +1363 -0
- data/lib/mibs/ietf/RS-232-MIB.dic +1335 -0
- data/lib/mibs/ietf/RSERPOOL-MIB.dic +2501 -0
- data/lib/mibs/ietf/RSTP-MIB.dic +427 -0
- data/lib/mibs/ietf/RSVP-MIB.dic +4135 -0
- data/lib/mibs/ietf/RTP-MIB.dic +1376 -0
- data/lib/mibs/ietf/SCSI-MIB.dic +3804 -0
- data/lib/mibs/ietf/SCTP-MIB.dic +1924 -0
- data/lib/mibs/ietf/SFLOW-MIB.dic +568 -0
- data/lib/mibs/ietf/SIP-COMMON-MIB.dic +2769 -0
- data/lib/mibs/ietf/SIP-MIB.dic +1438 -0
- data/lib/mibs/ietf/SIP-SERVER-MIB.dic +1150 -0
- data/lib/mibs/ietf/SIP-TC-MIB.dic +257 -0
- data/lib/mibs/ietf/SIP-UA-MIB.dic +268 -0
- data/lib/mibs/ietf/SLAPM-MIB.dic +4527 -0
- data/lib/mibs/ietf/SMON-MIB.dic +1758 -0
- data/lib/mibs/ietf/SNA-NAU-MIB.dic +4042 -0
- data/lib/mibs/ietf/SNA-SDLC-MIB.dic +3858 -0
- data/lib/mibs/ietf/SNMP-COMMUNITY-MIB.dic +715 -0
- data/lib/mibs/ietf/SNMP-FRAMEWORK-MIB.dic +709 -0
- data/lib/mibs/ietf/SNMP-MPD-MIB.dic +230 -0
- data/lib/mibs/ietf/SNMP-NOTIFICATION-MIB.dic +859 -0
- data/lib/mibs/ietf/SNMP-PROXY-MIB.dic +414 -0
- data/lib/mibs/ietf/SNMP-REPEATER-MIB.dic +4335 -0
- data/lib/mibs/ietf/SNMP-SSH-TM-MIB.dic +447 -0
- data/lib/mibs/ietf/SNMP-TARGET-MIB.dic +924 -0
- data/lib/mibs/ietf/SNMP-TLS-TM-MIB.dic +1449 -0
- data/lib/mibs/ietf/SNMP-TSM-MIB.dic +315 -0
- data/lib/mibs/ietf/SNMP-USER-BASED-SM-MIB.dic +1164 -0
- data/lib/mibs/ietf/SNMP-USM-AES-MIB.dic +95 -0
- data/lib/mibs/ietf/SNMP-USM-DH-OBJECTS-MIB.dic +653 -0
- data/lib/mibs/ietf/SNMP-VIEW-BASED-ACM-MIB.dic +1202 -0
- data/lib/mibs/ietf/SNMPv2-MIB.dic +1382 -0
- data/lib/mibs/ietf/SNMPv2-SMI.dic +223 -0
- data/lib/mibs/ietf/SNMPv2-USEC-MIB.dic +405 -0
- data/lib/mibs/ietf/SONET-MIB.dic +3308 -0
- data/lib/mibs/ietf/SOURCE-ROUTING-MIB.dic +542 -0
- data/lib/mibs/ietf/SSPM-MIB.dic +1530 -0
- data/lib/mibs/ietf/SYSAPPL-MIB.dic +2092 -0
- data/lib/mibs/ietf/T11-FC-FABRIC-ADDR-MGR-MIB.dic +1779 -0
- data/lib/mibs/ietf/T11-FC-FABRIC-CONFIG-SERVER-MIB.dic +2822 -0
- data/lib/mibs/ietf/T11-FC-FABRIC-LOCK-MIB.dic +700 -0
- data/lib/mibs/ietf/T11-FC-FSPF-MIB.dic +1889 -0
- data/lib/mibs/ietf/T11-FC-NAME-SERVER-MIB.dic +1775 -0
- data/lib/mibs/ietf/T11-FC-ROUTE-MIB.dic +655 -0
- data/lib/mibs/ietf/T11-FC-RSCN-MIB.dic +1110 -0
- data/lib/mibs/ietf/T11-FC-VIRTUAL-FABRIC-MIB.dic +770 -0
- data/lib/mibs/ietf/T11-FC-ZONE-SERVER-MIB.dic +3886 -0
- data/lib/mibs/ietf/T11-TC-MIB.dic +110 -0
- data/lib/mibs/ietf/TCP-ESTATS-MIB.dic +3926 -0
- data/lib/mibs/ietf/TCP-MIB.dic +1319 -0
- data/lib/mibs/ietf/TCPIPX-MIB.dic +457 -0
- data/lib/mibs/ietf/TE-LINK-STD-MIB.dic +2876 -0
- data/lib/mibs/ietf/TE-MIB.dic +2924 -0
- data/lib/mibs/ietf/TED-MIB.dic +1749 -0
- data/lib/mibs/ietf/TIME-AGGREGATE-MIB.dic +550 -0
- data/lib/mibs/ietf/TN3270E-MIB.dic +2785 -0
- data/lib/mibs/ietf/TN3270E-RT-MIB.dic +1317 -0
- data/lib/mibs/ietf/TOKEN-RING-RMON-MIB.dic +2820 -0
- data/lib/mibs/ietf/TOKENRING-MIB.dic +1184 -0
- data/lib/mibs/ietf/TOKENRING-STATION-SR-MIB.dic +292 -0
- data/lib/mibs/ietf/TRANSPORT-ADDRESS-MIB.dic +610 -0
- data/lib/mibs/ietf/TRIP-MIB.dic +3159 -0
- data/lib/mibs/ietf/TRIP-TC-MIB.dic +241 -0
- data/lib/mibs/ietf/TUNNEL-MIB.dic +1095 -0
- data/lib/mibs/ietf/UDP-MIB.dic +751 -0
- data/lib/mibs/ietf/UDPLITE-MIB.dic +704 -0
- data/lib/mibs/ietf/UPS-MIB.dic +3088 -0
- data/lib/mibs/ietf/URI-TC-MIB.dic +193 -0
- data/lib/mibs/ietf/UUID-TC-MIB.dic +135 -0
- data/lib/mibs/ietf/VDSL-LINE-EXT-MCM-MIB.dic +989 -0
- data/lib/mibs/ietf/VDSL-LINE-EXT-SCM-MIB.dic +605 -0
- data/lib/mibs/ietf/VDSL-LINE-MIB.dic +4518 -0
- data/lib/mibs/ietf/VDSL2-LINE-MIB.dic +11029 -0
- data/lib/mibs/ietf/VDSL2-LINE-TC-MIB.dic +3152 -0
- data/lib/mibs/ietf/VPN-TC-STD-MIB.dic +121 -0
- data/lib/mibs/ietf/VRRP-MIB.dic +1163 -0
- data/lib/mibs/ietf/VRRPV3-MIB.dic +1403 -0
- data/lib/mibs/ietf/WWW-MIB.dic +1810 -0
- data/lib/mibs/logstash/iso.dic +18 -0
- data/logstash-integration-snmp.gemspec +40 -0
- data/spec/fixtures/RFC1213-MIB.dic +3445 -0
- data/spec/fixtures/collision.dic +25 -0
- data/spec/integration/inputs/snmp_spec.rb +443 -0
- data/spec/integration/inputs/snmptrap_spec.rb +383 -0
- data/spec/unit/inputs/common_spec.rb +264 -0
- data/spec/unit/inputs/snmp_spec.rb +510 -0
- data/spec/unit/inputs/snmptrap_spec.rb +141 -0
- data/vendor/jar-dependencies/org/logstash/integrations/plugin/4.0.0/plugin-4.0.0.jar +0 -0
- data/vendor/jar-dependencies/org/snakeyaml/snakeyaml-engine/2.7/snakeyaml-engine-2.7.jar +0 -0
- data/vendor/jar-dependencies/org/snmp4j/snmp4j/3.8.0/snmp4j-3.8.0.jar +0 -0
- metadata +523 -0
@@ -0,0 +1,197 @@
|
|
1
|
+
module LogStash
|
2
|
+
module PluginMixins
|
3
|
+
module Snmp
|
4
|
+
# This module provides common configurations and functions to all SNMP plugins
|
5
|
+
#
|
6
|
+
module Common
|
7
|
+
require 'logstash-integration-snmp_jars'
|
8
|
+
|
9
|
+
java_import 'org.logstash.snmp.RubySnmpOidFieldMapper'
|
10
|
+
java_import 'org.logstash.snmp.DefaultOidFieldMapper'
|
11
|
+
java_import 'org.logstash.snmp.DottedStringOidFieldMapper'
|
12
|
+
java_import 'org.logstash.snmp.mib.MibManager'
|
13
|
+
|
14
|
+
OID_MAPPING_FORMAT_DEFAULT = 'default'.freeze
|
15
|
+
OID_MAPPING_FORMAT_RUBY_SNMP = 'ruby_snmp'.freeze
|
16
|
+
|
17
|
+
MIB_BASE_PATH = ::File.join(__FILE__, '..', '..', '..', '..', 'mibs')
|
18
|
+
MIB_PROVIDED_PATHS = [::File.join(MIB_BASE_PATH, 'logstash'), ::File.join(MIB_BASE_PATH, 'ietf')].map { |path| ::File.expand_path(path) }
|
19
|
+
|
20
|
+
def self.included(base)
|
21
|
+
# Common configuration supported by all SNMP plugins
|
22
|
+
|
23
|
+
# This plugin provides sets of MIBs publicly available. The full paths to these provided MIBs paths
|
24
|
+
# Will be displayed at plugin startup.
|
25
|
+
base.config :use_provided_mibs, :validate => :boolean, :default => true
|
26
|
+
|
27
|
+
# List of paths of MIB (.dic, .yaml) files of dirs. If a dir path is specified, all files with
|
28
|
+
# .dic and .yaml extension will be loaded.
|
29
|
+
#
|
30
|
+
# ATTENTION: a MIB .dic file must be generated using the libsmi library `smidump` command line utility
|
31
|
+
# like this for example. Here the `RFC1213-MIB.txt` file is an ASN.1 MIB file.
|
32
|
+
#
|
33
|
+
# `$ smidump -k -f python RFC1213-MIB.txt > RFC1213-MIB.dic`
|
34
|
+
#
|
35
|
+
# The OSS libsmi library https://www.ibr.cs.tu-bs.de/projects/libsmi/ is available & installable
|
36
|
+
# on most OS.
|
37
|
+
#
|
38
|
+
# .yaml MIBs files must be on the https://github.com/hallidave/ruby-snmp MIB format.
|
39
|
+
base.config :mib_paths, :validate => :array # ["path/to/mib.dic", "path/to/mib/dir"]
|
40
|
+
|
41
|
+
# Defines the OID field format.
|
42
|
+
# `ruby_snmp` produces ruby-snmp-like fields, prefixing the module name, followed
|
43
|
+
# by :: and resolved identifiers. E.g:
|
44
|
+
# 1.3.6.1.2.1.1.2.0 -> SNMPv2-MIB::sysObjectID.0
|
45
|
+
# `default` translates every identifier separating them by dots. E.g:
|
46
|
+
# 1.3.6.1.2.1.1.2.0 -> iso.org.dod.internet.mgmt.mib-2.system.sysObjectID.0
|
47
|
+
# `dotted_string` does not change the OID format and map fields using the dotted string format, E.g:
|
48
|
+
# 1.3.6.1.2.1.1.2.0 -> 1.3.6.1.2.1.1.2.0
|
49
|
+
base.config :oid_mapping_format, :validate => %w[default ruby_snmp dotted_string], :default => 'default'
|
50
|
+
|
51
|
+
# Defines if the Logstash event field values, which types are `OID`, are mapped using the configured OID textual representation
|
52
|
+
# set on the `oid_mapping_format`.
|
53
|
+
base.config :oid_map_field_values, :validate => :boolean, :default => false
|
54
|
+
|
55
|
+
# Number of OID root digits to ignore in event field name. For example, in a numeric OID
|
56
|
+
# like 1.3.6.1.2.1.1.1.0" the first 5 digits could be ignored by setting oid_root_skip => 5
|
57
|
+
# which would result in a field name "1.1.1.0". Similarly when a MIB is used an OID such
|
58
|
+
# as "1.3.6.1.2.mib-2.system.sysDescr.0" would become "mib-2.system.sysDescr.0"
|
59
|
+
base.config :oid_root_skip, :validate => :number, :default => 0
|
60
|
+
|
61
|
+
# Number of OID tail digits to retain in event field name. For example, in a numeric OID
|
62
|
+
# like 1.3.6.1.2.1.1.1.0" the last 2 digits could be retained by setting oid_path_length => 2
|
63
|
+
# which would result in a field name "1.0". Similarly, when a MIB is used an OID such as
|
64
|
+
# "1.3.6.1.2.mib-2.system.sysDescr.0" would become "sysDescr.0"
|
65
|
+
base.config :oid_path_length, :validate => :number, :default => 0
|
66
|
+
|
67
|
+
# Defines a target field for placing fields.
|
68
|
+
# If this setting is omitted, data gets stored at the root (top level) of the event.
|
69
|
+
# The target is only relevant while decoding data into a new event.
|
70
|
+
base.config :target, :validate => :field_reference
|
71
|
+
|
72
|
+
# SNMPv3 Credentials
|
73
|
+
#
|
74
|
+
# A single user can be configured and will be used for all defined SNMPv3 requests.
|
75
|
+
# Multiple snmp input declarations will be needed if multiple SNMPv3 users are required.
|
76
|
+
# If not using SNMPv3 simply leave options empty.
|
77
|
+
|
78
|
+
# The SNMPv3 security name or user name
|
79
|
+
base.config :security_name, :validate => :string
|
80
|
+
|
81
|
+
# The SNMPv3 authentication protocol or type
|
82
|
+
base.config :auth_protocol, :validate => %w[md5 sha sha2 hmac128sha224 hmac192sha256 hmac256sha384 hmac384sha512]
|
83
|
+
|
84
|
+
# The SNMPv3 authentication passphrase or password
|
85
|
+
base.config :auth_pass, :validate => :password
|
86
|
+
|
87
|
+
# The SNMPv3 privacy/encryption protocol
|
88
|
+
base.config :priv_protocol, :validate => %w[des 3des aes aes128 aes192 aes256]
|
89
|
+
|
90
|
+
# The SNMPv3 encryption password
|
91
|
+
base.config :priv_pass, :validate => :password
|
92
|
+
|
93
|
+
# The SNMPv3 security level can be Authentication, No Privacy; Authentication, Privacy; or no Authentication, no Privacy
|
94
|
+
base.config :security_level, :validate => %w[noAuthNoPriv authNoPriv authPriv]
|
95
|
+
end
|
96
|
+
|
97
|
+
def build_mib_manager!
|
98
|
+
mib_manager = new_mib_manager
|
99
|
+
|
100
|
+
if @mib_paths&.any?
|
101
|
+
logger.info('Loading user-provided MIB files', :path => @mib_paths)
|
102
|
+
@mib_paths.each do |path|
|
103
|
+
mib_manager.add(path)
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
if @use_provided_mibs
|
108
|
+
logger.info('Loading provided MIB files', :path => MIB_PROVIDED_PATHS)
|
109
|
+
MIB_PROVIDED_PATHS.each do |path|
|
110
|
+
mib_manager.add(path)
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
mib_manager
|
115
|
+
end
|
116
|
+
|
117
|
+
def build_snmp_client!(client_builder, validate_usm_user: false)
|
118
|
+
validate_usm_user! if validate_usm_user
|
119
|
+
|
120
|
+
unless @security_name.nil?
|
121
|
+
client_builder.addUsmUser(@security_name, @auth_protocol, @auth_pass&.value, @priv_protocol, @priv_pass&.value)
|
122
|
+
end
|
123
|
+
|
124
|
+
client_builder.setMapOidVariableValues(@oid_map_field_values)
|
125
|
+
client_builder.build
|
126
|
+
end
|
127
|
+
|
128
|
+
private
|
129
|
+
|
130
|
+
def new_mib_manager
|
131
|
+
MibManager.new(oid_field_mapper!)
|
132
|
+
end
|
133
|
+
|
134
|
+
def oid_field_mapper!
|
135
|
+
validate_oid_field_mapper_params!
|
136
|
+
|
137
|
+
if @oid_mapping_format == OID_MAPPING_FORMAT_DEFAULT
|
138
|
+
DefaultOidFieldMapper.new(@oid_root_skip, @oid_path_length)
|
139
|
+
elsif @oid_mapping_format == OID_MAPPING_FORMAT_RUBY_SNMP
|
140
|
+
RubySnmpOidFieldMapper.new
|
141
|
+
else
|
142
|
+
DottedStringOidFieldMapper.new
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
def validate_oid_field_mapper_params!
|
147
|
+
if @oid_mapping_format == 'default'
|
148
|
+
raise(LogStash::ConfigurationError, 'Use either `oid_root_skip` or `oid_path_length`') if @oid_root_skip.positive? && @oid_path_length.positive?
|
149
|
+
else
|
150
|
+
raise(LogStash::ConfigurationError, 'The `oid_root_skip` and `oid_path_length` requires setting `oid_mapping_format` to `default`') if @oid_root_skip.positive? || @oid_path_length.positive?
|
151
|
+
end
|
152
|
+
end
|
153
|
+
|
154
|
+
def validate_usm_user!
|
155
|
+
errors = []
|
156
|
+
|
157
|
+
errors << '`security_name` is required when SNMP v3 is enabled' if @security_name.nil?
|
158
|
+
validate_auth_protocol(errors)
|
159
|
+
validate_priv_protocol(errors)
|
160
|
+
|
161
|
+
raise(LogStash::ConfigurationError, errors.join(', ')) if errors.any?
|
162
|
+
end
|
163
|
+
|
164
|
+
def validate_auth_protocol(errors)
|
165
|
+
validate_protocol_config(errors, 'auth_protocol', 'auth_pass')
|
166
|
+
|
167
|
+
if @auth_protocol.nil? && (@security_level == 'authNoPriv' || @security_level == 'authPriv')
|
168
|
+
errors << "Using `security_level` set to `#{@security_level}` requires the configuration of `auth_protocol`"
|
169
|
+
end
|
170
|
+
end
|
171
|
+
|
172
|
+
def validate_priv_protocol(errors)
|
173
|
+
validate_protocol_config(errors, 'priv_protocol', 'priv_pass')
|
174
|
+
|
175
|
+
if @priv_protocol.nil? && @security_level == 'authPriv'
|
176
|
+
errors << "Using `security_level` set to `#{@security_level}` requires the configuration of `priv_protocol`"
|
177
|
+
end
|
178
|
+
end
|
179
|
+
|
180
|
+
def validate_protocol_config(errors, protocol_config_name, pass_config_name)
|
181
|
+
protocol_config_value = instance_variable_get("@#{protocol_config_name}".intern)
|
182
|
+
pass_config_value = instance_variable_get("@#{pass_config_name}".intern)
|
183
|
+
|
184
|
+
if protocol_config_value && !pass_config_value
|
185
|
+
errors << "Using `#{protocol_config_name}` requires the `#{pass_config_name}`"
|
186
|
+
elsif pass_config_value && !protocol_config_value
|
187
|
+
errors << "`#{protocol_config_name}` is required when using `#{pass_config_name}`"
|
188
|
+
end
|
189
|
+
|
190
|
+
if pass_config_value&.value && pass_config_value.value.length < 8
|
191
|
+
errors << "`#{pass_config_name}` passphrase must be at least 8 bytes long"
|
192
|
+
end
|
193
|
+
end
|
194
|
+
end
|
195
|
+
end
|
196
|
+
end
|
197
|
+
end
|