Collection of CheckMK checks (see https://checkmk.com/). All checks and plugins are provided as is. Absolutely no warranty. Send any comments to thl-cmk[at]outlook[dot]com

Skip to content
CHANGELOG 9.71 KiB
Newer Older
thl-cmk's avatar
thl-cmk committed
~/local/lib/check_mk/special_agents/agent_cisco_meraki.py
- moved section name to utils/cisco_meraki.py (reuse with WATO)
- added option to adjust piggyback names with prefix, suffix, upper/lower case
- added section _SEC_NAME_DEVICE_UPLINKS_INFO (inventory of uplink information)
- added section _SEC_NAME_APPLIANCE_UPLINKS (status and usage of appliance uplinks)
- updated Cisco meraki dashboard SDK from version 1.27.0 to 1.38.0 (needed for appliance uplinks)
- added section _SEC_NAME_APPLIANCE_VPNS (status and usage of appliance uplinks)

thl-cmk's avatar
thl-cmk committed
2023-11-09: removed nonworking original datacache (cleanup before reimplementing)
            added new cacheing code based on AWS agent - works this time ;-)
2023-11-10: a bit of cleanup, removed oneliner API calls, moved to the calling function
thl-cmk's avatar
thl-cmk committed
            moved add networks to MerakiOrganisation.query
            added cisco_meraki_org_networks output section (base to create networks inventory)
2023-10-11: fixed _get_device_piggyback drop hosts without names -> can be changed to use serial instead
            fixed in device info drop hosts without names -> can be changed to use serial instead
            fixed do nit access organisations where the API is not enabled
            added organisation overview section _SEC_NAME_ORGANISATIONS to discover orgs with API not enabled
2023-11-12: added --no-cache option
            re-added appliance uplink usage
2023-11-13: optimized API request: don't ask for device information's if there are no devices in an organisation
            API requests by product type: don't ask for products that are not available in the organisation
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
~/local/lib/check_mk/base/plugins/agent_based/cisco_meraki_org_licenses_overview.py
- changed Expiration date format from US (%b %d, %Y)  to ISO (%Y-%m-%d)
- changed remaining time (WATO) from Age (Days, Hours, Minutes, Seconds) to Days only
- added discovery rule for ITEM variant (Org Name/Org ID - this is the default, Org Name, Org ID)
  information missing in the item can be shown in the info line (default)
- added ORG_ID, ORG_NAME to the Details
- added Metrics für remaining time and # of licensed devices
- added perfometer with remaining time and # of licensed devices
- added WATO option for License state is not ok -> default to WARN
- added licensed devices overview to the inventory

~/local/lib/check_mk/base/plugins/agent_based/cisco_meraki_org_device_status.py
- made device status configurable via WATO
- added last_reported as check_levels, levels_upper can be configured via WATO
- added power supply's
- added unknown components (for discovery)
- removed device offline check from device status discovery function
- added power supplys to inventory (hardware -> physical components -> power supplys
- changed item from "Cisco Meraki Device" Status to "Device Status" -> we know this is a Meraki device ;-)

thl-cmk's avatar
thl-cmk committed
2023-11-09: fixed crash if no powersupply in components   


thl-cmk's avatar
thl-cmk committed
~/local/lib/check_mk/base/plugins/agent_based/cisco_meraki_org_device_info.py
- added device to list of hardware -> physical components -> chassis
- added network name to device info
thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
2023-10-09: added host_labels function: meraki/org_id, meraki/org_name, meraki/net_id, meraki/net_name, cmk/vendor

thl-cmk's avatar
thl-cmk committed
~/local/lib/check_mk/base/plugins/agent_based/cisco_meraki_org_sensor_readings.py
2023-11-10: removed ts check/sort, we get always only the last reading, so need to sort by last reported
            added ability to handle temperature, humidity and battery at the same time, not sure if there
            is a need to add some index (multiple temperature reading for example)
            added battery/humidity check
            changed section from Sequence to Mapping by metric

thl-cmk's avatar
thl-cmk committed

~/local/lib/check_mk/base/plugins/agent_based/utils/cisco_meraki.py
- changed check_last_reported_ts to output report as metric/levels
- added levels_upper check_last_reported_ts
- added section names from the cisco meraki special agent (for use in WATO)


~/local/lib/check_mk/base/plugins/agent_based/cisco_meraki_device_uplinks.py
2023-10-31: new inventory plugin

~/local/lib/check_mk/base/plugins/agent_based/cisco_meraki_org_appliance_uplinks.py
2023-11-04: new check plugin

~/local/lib/check_mk/base/plugins/agent_based/cisco_meraki_org_appliance_vpns.py
2023-11-04: new check plugin

~/local/lib/check_mk/gui/plugins/metrics/cisco_meraki.py
2023-11-04: initial metrics

thl-cmk's avatar
thl-cmk committed

~/local/share/check_mk/web/plugins/views/cisco_meraki.py
thl-cmk's avatar
thl-cmk committed
2023-11-02: initial view
thl-cmk's avatar
thl-cmk committed
2023-11-17: moved view file from local/lib/ structure to local/share/ structure to avoid errors in web.log
thl-cmk's avatar
thl-cmk committed

~/local/lib/check_mk/gui/plugins/wato/agent_cisco_meraki.py
- added check for duplicate organisation IDs
- added some (basic) online help
- changed clarified title of "orgs" from "Organisations" to "Organisation IDs"
- added section titles from utils/cisco_meraki.py (reuse)
- added option for host prefix/suffix/case per organisation -> needed for dynamic host management
- added section names from utils/cisco_meraki.py (reuse with special agent)

~/local/lib/check_mk/gui/plugins/wato/check_parameters/cisco_meraki_org_licenses_overview.py
- changed remaining time (WATO) from Age (Days, Hours, Minutes, Seconds) to Days only
- added WATO option for License state is not ok -> default to WARN
- added discovery rule for ITEM variant (Org Name/Org ID - this is the default, Org Name, Org ID)

~/local/lib/check_mk/gui/plugins/wato/check_parameters/cisco_meraki_org_device_status.py
2023-11-04: initial WATO ruleset

~/local/lib/check_mk/gui/plugins/wato/check_parameters/cisco_meraki_org_appliance_uplinks.py
2023-11-05: initial WATO ruleset

~/local/lib/check_mk/gui/plugins/wato/check_parameters/cisco_meraki_org_appliance_vpns.py
2023-11-05: initial WATO ruleset

thl-cmk's avatar
thl-cmk committed

thl-cmk's avatar
thl-cmk committed
2024-02-01: streamlined cdp/lldp inventory with inv_cdp_cache/inv_lldp_cache
thl-cmk's avatar
thl-cmk committed
2024-02-02: added wato for switch port status, wiretlees device status
            changed wato for uplink status to map uplink state to monitoring state
            backported/streamlined hostlabels from pull request #653
thl-cmk's avatar
thl-cmk committed
2024-04-05: fixed min SDK version for MerakiGetOrganizationApplianceUplinksUsageByNetwork and
                                      MerakiGetOrganizationWirelessDevicesEthernetStatuses
            removed cisco_meraki_org_sensor_readings.py, already part of CMK
thl-cmk's avatar
thl-cmk committed
2024-04-27: fixed crash in cisco_meraki_org_appliance_uplinks on missing "lastReportedAt" (THX to Norman Kühnberger)
            made data parsing more robust overall
thl-cmk's avatar
thl-cmk committed
2024-05-12: agent: updated Meraki SDK to 1.46.0
                   added MerakiGetOrganizationApiRequestsOverviewResponseCodesByInterval and
thl-cmk's avatar
thl-cmk committed
                         MerakiGetOrganizationSwitchPortsStatusesBySwitch (Early Access, not in SDK)
            cisco_meraki_organisations_api: added api request count
                                            refactoring parse functions as class method
thl-cmk's avatar
thl-cmk committed
            cisco_meraki_switch_ports_statuses: added support for MerakiGetOrganizationSwitchPortsStatusesBySwitch (Early Access)
                                                added support for "realtime" traffic counters
                                                refactoring parse functions as class method
thl-cmk's avatar
thl-cmk committed
2024-05-15: fixed typo in output of uplink.received (in -> In) (ThX to Rickard Eriksson)                                                
            moved parse function to the dataclasses
2024-05-17: fixed crash in the agent on missing network id (KeyError)
            added basic proxy support for Early Access requests
2024-05-19: fixed proxy usage (NO_PROXY, FROM_ENVIRONMENT)
            reworked appliance uplinks usage
2024-05-20: made appliance uplinks usage user selectable
            made API requests per org user selectable
2024-05-20: added discovery rule for switch port status       
thl-cmk's avatar
thl-cmk committed
2024-06-23: added section cisco_meraki_org_appliance_performance (Utilization)
thl-cmk's avatar
thl-cmk committed
            added per section cache timeout option (or more precise per api request type)

2024-06-30: refactored for CMK 2.3
            note there are many incompatible changes, so best remove the agent rules before the update and recreate them after the update 
thl-cmk's avatar
thl-cmk committed
2024-07-13: wireless_device_status: fixed crash on missing metrics (device dormant) ThX to Leon Buhleier
thl-cmk's avatar
thl-cmk committed
2024-08-02: appliance_performance: fixed if perfscore was float instead of int
thl-cmk's avatar
thl-cmk committed
2024-08-07: wireless_device_status: fixed crash on missing power value (unit only) ThX to Leon Buhleier
thl-cmk's avatar
thl-cmk committed
2024-09-12: SDK: changed MKP max Version to 2.4.0b1
2024-09-12: Agent: added version check for min. Meraki SDK version
            Wireless Device Status: fixed missing SSID 0 ThX to Andreas Doehler
2024-09-15: Agent: fixed MerakiGetOrganizationSwitchPortsStatusesBySwitch -> return only list of switches
thl-cmk's avatar
thl-cmk committed
2024-11-16: fixed crash on missing items in MerakiGetOrganizationSwitchPortsStatusesBySwitch (ThX to Stephan Bergfeld)
thl-cmk's avatar
thl-cmk committed
            updated Meraki SDK to version 1.52.0
2024-11-17: wireless_ethernet_statuses.py: incompatible change item from "Port %s" to "Interface %s" -> rediscover your devices
                                           added interface inventory
            switch_ports_statuses.py: incompatible: changed operational/admin status to up/down from connected/disconnected, enabled/disabled -> reconfigure Cisco Meraki Switch Ports service discovery rule
                                      incompatible change item from "Port %s" to "Interface %s" -> (Port is moved to %s) -> rediscover your devices (tabularasa)
                                      added interface inventory
                                      added hostlabel function for nvdct/has_lldp_neighbours
2024-11-23  switch_ports_statuses.py: fixed crash on missing traffic data
                                      incompatible removed "Port" from item -> use only interface index

2024-12-12: wireless_ethernet_statuses: fixed crash if speed is None
2024-12-14: switch_ports_statuses.py: reworked output of port status