mirror of
https://github.com/librenms/librenms.git
synced 2024-09-21 18:38:25 +00:00
4c0412b14d
* feature: Wireless Sensors Includes client counts for ios and unifi Graphing could use some improvement. Alerting and threshold ui not implemented WIP: starting OO based wireless sensors. Class based functionality working remove old functional files add schema file discovery needs to be enabled, not polling fix up schema fix Unifi discovery not returning an array Add some debug when discovering a sensor. Fix style. Add missing semicolin Add a null object (Generic) for OS. Fill out some phpdocs Re-organized code Each sensor type now has it's own discovery and polling interface Custom polling tested with Unifi CCQ Left to do: Implement UI (Graphs and Custom thresholds) Alerting Testing Fix event message text Remove runDiscovery and runPolling from OS, they are unused and don't belong there. Cleanups/docs Missed this file. Remove the requirement to fetch the current value to check validity. Do that automatically if current is not specified A few cleanups here and there First pass at graphing. device_ and wireless_ graphs added. Add RouterOS support Singleton OS instance isn't required right now. Remove that to allow some memory to be freed. Add wireless to the device list metrics. Make all metrics clickable Tweak graphs a bit Implement limit configuration page. Use sensors page as common code instead of duplicating. Clean up some javascript interactions: Allow enter on values to save. Cancel if update is not needed. Enable the clear custom button after setting a custom value. Add some wireless alert rules to the library. Add documentation. Add unifi client counts by ssid in addition to radio. Optimize Sensor polling a bit. Add HP MSM clients support (for full controller) Fix function accessibility Formalize the discovery and poller interfaces. Add Xirrus clients and noise floor move module interfaces to a more appropriate place. push caching code up to os, unsure about this do to the limitations No point in selectively enabling wireless discovery. We only discover if the device supports something. Add RSSI, Power, and Rate. Add these sensors for Ubnt Airos. Clean up some copyrights. Reduce the amount of files need to add new types. Leave graph files for consistency and to allow customization. Remove the old wifi clients graph completely. ciscowlc should have improved counts (total and per-ssid) Schema didn't get added. Impelement the rest of the AirOS sensors Reformat and re-organize the Airos.php class. Add several UBNT AirFiber sensors A few fixes add links to the section headers Add HP MSM mibs. * Schema file got dropped in rebase. * Add wireless menu to view sensors across all devices. Icons in the menu need help :/ * Add HeliOS, Mimosa, and Siklu support Sensors added SNR + Noise * Add power and utilization to Unifi * Update polling to prefetch all sensor data in a few snmp requests as possible * Add Extendair: tx+rx power, aggregate rate, frequency * Add a check for duplicate sensors in discovery. Just print an error for now. * Add Bit Error Ratio (named error-ratio to allow for bit error rate to be added if needed) Fix an incorrect link in the wireless sensors table * Add error rate and change all bps and Hz to use si units * Fixes to limits and frequency display * Fix overview graph frequency display A few decimal place tweaks * Don't allow switching sensor and wireless-sensor graphs, it doesn't work. Change individual distance graphs to use si units * Go through the OS and make sure I got all the sensors I can (probably missed some still) Because pollWirelessChannelAsFrequency() is generic and a little complex, so pull it up to OS. Message to help developers adding supports that don't return an array from discover functions. * Fix some issues * Remove noise and signal for now at least A couple more fixes Add a notification * Oopsie * Bonus AirFiber sensors
430 lines
16 KiB
Plaintext
430 lines
16 KiB
Plaintext
-- ****************************************************************************
|
|
-- COLUBRIS-MAINTENANCE-MIB definitions
|
|
--
|
|
-- Copyright (c) 2004, Colubris Networks, Inc.
|
|
-- All Rights Reserved.
|
|
--
|
|
-- Colubris Networks Maintenance MIB file.
|
|
--
|
|
-- ****************************************************************************
|
|
|
|
|
|
COLUBRIS-MAINTENANCE-MIB DEFINITIONS ::= BEGIN
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE
|
|
FROM SNMPv2-SMI
|
|
DisplayString, TruthValue
|
|
FROM SNMPv2-TC
|
|
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
|
|
FROM SNMPv2-CONF
|
|
colubrisMgmtV2
|
|
FROM COLUBRIS-SMI
|
|
systemConfigurationVersion, systemFirmwareRevision
|
|
FROM COLUBRIS-SYSTEM-MIB
|
|
ColubrisNotificationEnable
|
|
FROM COLUBRIS-TC
|
|
;
|
|
|
|
colubrisMaintenanceMIB MODULE-IDENTITY
|
|
LAST-UPDATED "200501170000Z"
|
|
ORGANIZATION "Colubris Networks, Inc."
|
|
CONTACT-INFO "Colubris Networks
|
|
Postal: 200 West Street Ste 300
|
|
Waltham, Massachusetts 02451-1121
|
|
UNITED STATES
|
|
Phone: +1 781 684 0001
|
|
Fax: +1 781 684 0009
|
|
|
|
E-mail: cn-snmp@colubris.com"
|
|
DESCRIPTION "Colubris Networks Maintenance MIB."
|
|
|
|
::= { colubrisMgmtV2 2 }
|
|
|
|
|
|
-- colubrisMaintenanceMIB definition
|
|
colubrisMaintenanceMIBObjects OBJECT IDENTIFIER ::= { colubrisMaintenanceMIB 1 }
|
|
|
|
-- Maintenance MIB groups
|
|
firmwareUpdate OBJECT IDENTIFIER ::= { colubrisMaintenanceMIBObjects 1 }
|
|
configurationUpdate OBJECT IDENTIFIER ::= { colubrisMaintenanceMIBObjects 2 }
|
|
certificate OBJECT IDENTIFIER ::= { colubrisMaintenanceMIBObjects 3 }
|
|
|
|
|
|
-- firmware update group
|
|
firmwarePeriodicUpdate OBJECT-TYPE
|
|
SYNTAX TruthValue
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies if firmware updates are automatically triggered
|
|
on a periodic basis or not.
|
|
'true': Automatically update the firmware based on
|
|
the information specified in the
|
|
firmwareUpdateDay and firmwareUpdateTime
|
|
attributes.
|
|
'false': No firmware update is triggered unless a request
|
|
is specifically issude using the
|
|
firmwareUpdateInitiate attribute."
|
|
::= { firmwareUpdate 1 }
|
|
|
|
firmwareUpdateDay OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
monday(1),
|
|
tuesday(2),
|
|
wednesday(3),
|
|
thursday(4),
|
|
friday(5),
|
|
saturday(6),
|
|
sunday(7),
|
|
everyday(8)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "When firmwarePeriodicUpdate is set to true, this attribute
|
|
specifies the day that automatic updates will occur."
|
|
::= { firmwareUpdate 2 }
|
|
|
|
firmwareUpdateTime OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (5))
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "When firmwarePeriodicUpdate is set to true, this attribute
|
|
specifies the time of the day for an automatic firmware update.
|
|
Specify the time in hours (00-23) and minutes (00-59) in the
|
|
format HH:MM. The ':' character is mandatory between the fields."
|
|
::= { firmwareUpdate 3 }
|
|
|
|
firmwareUpdateLocation OBJECT-TYPE
|
|
SYNTAX DisplayString
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies the URL where the new firmware file is located. This is
|
|
used when the firmware update is triggered manually or automatically
|
|
on a periodic basis."
|
|
::= { firmwareUpdate 4 }
|
|
|
|
firmwareUpdateInitiate OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
idle(0),
|
|
update(1)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Triggers a firmware update using the firmware specified in the
|
|
firmwareUpdateLocation attribute. Reading this attribute always
|
|
returns 'idle'."
|
|
::= { firmwareUpdate 5 }
|
|
|
|
firmwareUpdateNotificationEnabled OBJECT-TYPE
|
|
SYNTAX ColubrisNotificationEnable
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies if firmwareUpdateNotification notifications are
|
|
generated."
|
|
DEFVAL { enable }
|
|
::= { firmwareUpdate 6 }
|
|
|
|
firmwareUpdateInfo OBJECT-TYPE
|
|
SYNTAX DisplayString
|
|
MAX-ACCESS accessible-for-notify
|
|
STATUS current
|
|
DESCRIPTION "Contains various information about the firmware update and is
|
|
used with firmware update notifications to provide more
|
|
detailed information."
|
|
::= { firmwareUpdate 7 }
|
|
|
|
-- configuration update group
|
|
configurationPeriodicUpdate OBJECT-TYPE
|
|
SYNTAX TruthValue
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies if configuration file updates are automatically triggered
|
|
on a periodic basis or not.
|
|
|
|
'true': Automatically update the configuration file based on
|
|
the information specified in the
|
|
configurationUpdateDay and configurationUpdateTime
|
|
attributes.
|
|
|
|
'false': No configuration file update is triggered unless a request
|
|
is specifically issude using the
|
|
configurationUpdateInitiate attribute."
|
|
::= { configurationUpdate 1 }
|
|
|
|
configurationUpdateDay OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
monday(1),
|
|
tuesday(2),
|
|
wednesday(3),
|
|
thursday(4),
|
|
friday(5),
|
|
saturday(6),
|
|
sunday(7),
|
|
everyday(8)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "When configurationPeriodicUpdate is set to true, this attribute
|
|
specifies the day that automatic updates will occur."
|
|
::= { configurationUpdate 2 }
|
|
|
|
configurationUpdateTime OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (5))
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "When configurationPeriodicUpdateis set to true, this attribute
|
|
specifies the time of the day for an automatic configuration file update.
|
|
Specify the time in hours (00-23) and minutes (00-59) in the
|
|
format HH:MM. The ':' character is mandatory between the fields."
|
|
::= { configurationUpdate 3 }
|
|
|
|
configurationUpdateLocation OBJECT-TYPE
|
|
SYNTAX DisplayString
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies the URL where the new configuration file is located. This is
|
|
used when the update is triggered manually or automatically
|
|
on a periodic basis."
|
|
::= { configurationUpdate 4 }
|
|
|
|
configurationUpdateInitiate OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
idle(0),
|
|
update(1)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Triggers a configuration file update using the configuration file
|
|
specified in the configurationUpdateLocation attribute. Reading this
|
|
attribute always returns 'idle'."
|
|
::= { configurationUpdate 5 }
|
|
|
|
configurationUpdateOperation OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
backup(1),
|
|
restore(2)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies the operation that is performed on the
|
|
configuration file.
|
|
|
|
'backup': Saves the current device configuration into the file
|
|
specified in the configurationUpdateLocation attribute.
|
|
|
|
'restore': Loads the file specified in the
|
|
configurationUpdateLocation attribute into the device."
|
|
::= { configurationUpdate 6 }
|
|
|
|
configurationUpdateNotificationEnabled OBJECT-TYPE
|
|
SYNTAX ColubrisNotificationEnable
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies if configurationUpdateNotification notifications are generated."
|
|
DEFVAL { enable }
|
|
::= { configurationUpdate 7 }
|
|
|
|
configurationLocalUpdateNotificationEnabled OBJECT-TYPE
|
|
SYNTAX ColubrisNotificationEnable
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies if configurationLocalUpdateNotification notifications
|
|
are generated."
|
|
DEFVAL { enable }
|
|
::= { configurationUpdate 8 }
|
|
|
|
configurationUpdateInfo OBJECT-TYPE
|
|
SYNTAX DisplayString
|
|
MAX-ACCESS accessible-for-notify
|
|
STATUS current
|
|
DESCRIPTION "Contains various information about the configuration update and is
|
|
used with configuration update notifications to provide more
|
|
detailed information."
|
|
::= { configurationUpdate 9 }
|
|
|
|
configurationFactoryDefaults OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
idle(0),
|
|
resetToFactoryDefaults(1)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Resets the device configuration to Factory Default.
|
|
Important: This will reset the community names and shut down all
|
|
connections. Reading this object will always return 'idle'."
|
|
::= { configurationUpdate 10 }
|
|
|
|
configurationRestart OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
idle(0),
|
|
restart(1)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Restarts the device.
|
|
Important: This will shut down all connections. Reading this object
|
|
will always return 'idle'."
|
|
::= { configurationUpdate 11 }
|
|
|
|
-- certificates configuration group
|
|
certificateAboutToExpireNotificationEnabled OBJECT-TYPE
|
|
SYNTAX ColubrisNotificationEnable
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies if certificateAboutToExpireNotification notifications
|
|
are generated."
|
|
DEFVAL { enable }
|
|
::= { certificate 1 }
|
|
|
|
certificateExpiredNotificationEnabled OBJECT-TYPE
|
|
SYNTAX ColubrisNotificationEnable
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION "Specifies if certificateExpiredNotification notifications are generated."
|
|
DEFVAL { enable }
|
|
::= { certificate 2 }
|
|
|
|
certificateExpiryDate OBJECT-TYPE
|
|
SYNTAX DisplayString
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the current expiry date of the certificate."
|
|
::= { certificate 3 }
|
|
|
|
-- notifications
|
|
colubrisMaintenanceMIBNotificationPrefix OBJECT IDENTIFIER ::= { colubrisMaintenanceMIB 2 }
|
|
colubrisMaintenanceMIBNotifications OBJECT IDENTIFIER ::= { colubrisMaintenanceMIBNotificationPrefix 0 }
|
|
|
|
firmwareUpdateNotification NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
firmwareUpdateInfo,
|
|
systemFirmwareRevision
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "Sent when a firmware update was attempted from a remote
|
|
server."
|
|
--#SUMMARY "Remote firmware update from revision %s: %s"
|
|
--#ARGUMENTS { 1, 0 }
|
|
--#SEVERITY INFORMATIONAL
|
|
--#CATEGORY "Colubris Networks Alarms"
|
|
::= { colubrisMaintenanceMIBNotifications 5 }
|
|
|
|
configurationUpdateNotification NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
configurationUpdateInfo,
|
|
systemConfigurationVersion
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "Sent when a configuration update was attempted from a remote
|
|
server."
|
|
--#SUMMARY "Remote configuration update: %s"
|
|
--#ARGUMENTS { 0 }
|
|
--#SEVERITY INFORMATIONAL
|
|
--#CATEGORY "Colubris Networks Alarms"
|
|
::= { colubrisMaintenanceMIBNotifications 1 }
|
|
|
|
configurationLocalUpdateNotification NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
configurationUpdateInfo
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "Sent whenever the configuration changes."
|
|
--#SUMMARY "Configuration modified: %s"
|
|
--#ARGUMENTS { 0 }
|
|
--#SEVERITY INFORMATIONAL
|
|
--#CATEGORY "Colubris Networks Alarms"
|
|
::= { colubrisMaintenanceMIBNotifications 2 }
|
|
|
|
certificateAboutToExpireNotification NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
certificateExpiryDate
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "Sent when a certificate is about to expire."
|
|
--#SUMMARY "The web management tool certificate with expiry date %s will expire soon."
|
|
--#ARGUMENTS { 0 }
|
|
--#SEVERITY WARNING
|
|
--#CATEGORY "Colubris Networks Alarms"
|
|
::= { colubrisMaintenanceMIBNotifications 3 }
|
|
|
|
certificateExpiredNotification NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
certificateExpiryDate
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "Sent when a certificate has expired."
|
|
--#SUMMARY "The web management tool certificate with expiry date %s has expired."
|
|
--#ARGUMENTS { 0 }
|
|
--#SEVERITY MAJOR
|
|
--#CATEGORY "Colubris Networks Alarms"
|
|
::= { colubrisMaintenanceMIBNotifications 4 }
|
|
|
|
|
|
-- conformance information
|
|
colubrisMaintenanceMIBConformance OBJECT IDENTIFIER ::= { colubrisMaintenanceMIB 3 }
|
|
colubrisMaintenanceMIBCompliances OBJECT IDENTIFIER ::= { colubrisMaintenanceMIBConformance 1 }
|
|
colubrisMaintenanceMIBGroups OBJECT IDENTIFIER ::= { colubrisMaintenanceMIBConformance 2 }
|
|
|
|
-- compliance statements
|
|
colubrisMaintenanceMIBCompliance MODULE-COMPLIANCE
|
|
STATUS current
|
|
DESCRIPTION "The compliance statement for entities which implement
|
|
the Colubris Maintenance MIB."
|
|
MODULE MANDATORY-GROUPS
|
|
{
|
|
colubrisMaintenanceMIBGroup,
|
|
colubrisMaintenanceNotificationGroup
|
|
}
|
|
::= { colubrisMaintenanceMIBCompliances 1 }
|
|
|
|
-- units of conformance
|
|
colubrisMaintenanceMIBGroup OBJECT-GROUP
|
|
OBJECTS {
|
|
firmwarePeriodicUpdate,
|
|
firmwareUpdateDay,
|
|
firmwareUpdateTime,
|
|
firmwareUpdateLocation,
|
|
firmwareUpdateInitiate,
|
|
firmwareUpdateNotificationEnabled,
|
|
firmwareUpdateInfo,
|
|
configurationPeriodicUpdate,
|
|
configurationUpdateDay,
|
|
configurationUpdateTime,
|
|
configurationUpdateLocation,
|
|
configurationUpdateInitiate,
|
|
configurationUpdateOperation,
|
|
configurationUpdateNotificationEnabled,
|
|
configurationUpdateInfo,
|
|
configurationFactoryDefaults,
|
|
configurationRestart,
|
|
configurationLocalUpdateNotificationEnabled,
|
|
certificateAboutToExpireNotificationEnabled,
|
|
certificateExpiredNotificationEnabled,
|
|
certificateExpiryDate
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "A collection of objects providing the Maintenance MIB
|
|
capability."
|
|
::= { colubrisMaintenanceMIBGroups 1 }
|
|
|
|
colubrisMaintenanceNotificationGroup NOTIFICATION-GROUP
|
|
NOTIFICATIONS {
|
|
firmwareUpdateNotification,
|
|
configurationUpdateNotification,
|
|
configurationLocalUpdateNotification,
|
|
certificateAboutToExpireNotification,
|
|
certificateExpiredNotification
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "A collection of supported notifications"
|
|
::= { colubrisMaintenanceMIBGroups 2 }
|
|
|
|
END
|