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
Snippets Groups Projects
Commit 4d5444fb authored by thl-cmk's avatar thl-cmk :flag_na:
Browse files

Delete cisco_eigrp.py

parent f0f8dc1c
No related branches found
No related tags found
No related merge requests found
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# License: GNU General Public License v2
#
# Author: thl-cmk[at]outlook[dot]com
# URL : https://thl-cmk.hopto.org
# Date : 2017-12-26
#
# Cisco EIGRP Peer metrics plugin
#
# missing a way to include hostname and service description
#
from cmk.gui.i18n import _
from cmk.gui.plugins.metrics import (
metric_info,
graph_info,
perfometer_info,
unit_info,
)
#####################################################################################################################
#
# define units for cisco_eigrp_* perfdata
#
#####################################################################################################################
unit_info['milliseconds'] = {
'title': _('Milliseconds'),
'symbol': 'ms',
'render': lambda v: '%d' % v,
'stepping': 'integer', # for vertical graph labels
}
#####################################################################################################################
#
# define metrics for eigrp peer perfdata
#
#####################################################################################################################
# define metrics for cisco_eigrp_peer perfdata
metric_info['cisco_eigrp_peers_cEigrpUpTime'] = {
'title': _('Peer uptime'),
'unit': 's',
'color': '26/a',
}
metric_info['cisco_eigrp_peers_cEigrpPktsEnqueued'] = {
'title': _('Packets enqueued'),
'unit': 'count',
'color': '11/a',
}
metric_info['cisco_eigrp_peers_cEigrpRetrans'] = {
'title': _('Retransmissions'),
'unit': 'count',
'color': '21/a',
}
metric_info['cisco_eigrp_peers_cEigrpRetries'] = {
'title': _('Retries'),
'unit': 'count',
'color': '31/a',
}
metric_info['cisco_eigrp_peers_cEigrpSrtt'] = {
'title': _('Smooth round trip time'),
'unit': 'milliseconds',
'color': '41/a',
}
metric_info['cisco_eigrp_peers_cEigrpRto'] = {
'title': _('Retransmission timeout'),
'unit': 'milliseconds',
'color': '12/a',
}
# define metrics for cisco_eigrp_interface perfdata
metric_info['cisco_eigrp_interface_cEigrpPeerCount'] = {
'title': _('Peer count'),
'unit': 'count',
'color': '26/a',
}
metric_info['cisco_eigrp_interface_cEigrpXmitReliableQ'] = {
'title': _('Reliable queue length'),
'unit': 'count',
'color': '11/a',
}
metric_info['cisco_eigrp_interface_cEigrpXmitUnreliableQ'] = {
'title': _('Unreliable queue length'),
'unit': 'count',
'color': '21/a',
}
metric_info['cisco_eigrp_interface_cEigrpMeanSrtt'] = {
'title': _('Average smooth round trip time'),
'unit': 'milliseconds',
'color': '31/a',
}
metric_info['cisco_eigrp_interface_cEigrpPendingRoutes'] = {
'title': _('Routing updates awaiting transmission'),
'unit': 'count',
'color': '41/a',
}
metric_info['cisco_eigrp_interface_cEigrpRMcasts'] = {
'title': _('Reliable multicasts send'),
'unit': 'count',
'color': '12/a',
}
metric_info['cisco_eigrp_interface_cEigrpUMcasts'] = {
'title': _('Unreliable multicasts send'),
'unit': 'count',
'color': '22/a',
}
metric_info['cisco_eigrp_interface_cEigrpUUcasts'] = {
'title': _('Unreliable unicasts send'),
'unit': 'count',
'color': '32/a',
}
metric_info['cisco_eigrp_interface_cEigrpRUcasts'] = {
'title': _('Reliable unicasts send'),
'unit': 'count',
'color': '42/a',
}
metric_info['cisco_eigrp_interface_cEigrpMcastExcepts'] = {
'title': _('Multicast exceptions received'),
'unit': 'count',
'color': '25/a',
}
metric_info['cisco_eigrp_interface_cEigrpCRpkts'] = {
'title': _('Conditional-Receive packets'),
'unit': 'count',
'color': '35/a',
}
metric_info['cisco_eigrp_interface_cEigrpAcksSuppressed'] = {
'title': _('Suppressed acknowledgements'),
'unit': 'count',
'color': '45/a',
}
metric_info['cisco_eigrp_interface_cEigrpRetransSent'] = {
'title': _('Retransmissions send'),
'unit': 'count',
'color': '16/a',
}
metric_info['cisco_eigrp_interface_cEigrpOOSrvcd'] = {
'title': _('Out-of-sequence packets received'),
'unit': 'count',
'color': '26/b',
}
# define metrics for cisco_eigrp_topology_table perfdata
metric_info['cisco_eigrp_topology_table_routes'] = {
'title': _('All routes'),
'unit': 'count',
'color': '26/a',
}
metric_info['cisco_eigrp_topology_table_activeroutes'] = {
'title': _('Active routes'),
'unit': 'count',
'color': '11/a',
}
metric_info['cisco_eigrp_topology_table_siaroutes'] = {
'title': _('Stuck in active (SIA) routes'),
'unit': 'count',
'color': '21/a',
}
metric_info['cisco_eigrp_topology_table_Connected'] = {
'title': _('Connected'),
'unit': 'count',
'color': '31/a',
}
metric_info['cisco_eigrp_topology_table_Internal'] = {
'title': _('Internal'),
'unit': 'count',
'color': '41/a',
}
metric_info['cisco_eigrp_topology_table_External'] = {
'title': _('External'),
'unit': 'count',
'color': '12/a',
}
metric_info['cisco_eigrp_topology_table_Summary'] = {
'title': _('Summary'),
'unit': 'count',
'color': '22/a',
}
metric_info['cisco_eigrp_topology_table_Static_redistributed'] = {
'title': _('Static redistributed'),
'unit': 'count',
'color': '24/a',
}
metric_info['cisco_eigrp_topology_table_Inetaddress'] = {
'title': _('Inet address'),
'unit': 'count',
'color': '15/a',
}
# define metrics for cisco_eigrp_as_info perfdata
metric_info['cisco_eigrp_as_info_cEigrpNbrCount'] = {
'title': _('Neighbour count'),
'unit': 'count',
'color': '26/a',
}
metric_info['cisco_eigrp_as_info_cEigrpHellosSent'] = {
'title': _('Hellos send'),
'unit': '1/s',
'color': '11/a',
}
metric_info['cisco_eigrp_as_info_cEigrpHellosRcvd'] = {
'title': _('Hellos received'),
'unit': '1/s',
'color': '21/a',
}
metric_info['cisco_eigrp_as_info_cEigrpUpdatesSent'] = {
'title': _('Updates send'),
'unit': 'count',
'color': '31/a',
}
metric_info['cisco_eigrp_as_info_cEigrpUpdatesRcvd'] = {
'title': _('Updates received'),
'unit': 'count',
'color': '41/a',
}
metric_info['cisco_eigrp_as_info_cEigrpQueriesSent'] = {
'title': _('Alternate route queries send'),
'unit': 'count',
'color': '12/a',
}
metric_info['cisco_eigrp_as_info_cEigrpQueriesRcvd'] = {
'title': _('Alternate route queries received'),
'unit': 'count',
'color': '22/a',
}
metric_info['cisco_eigrp_as_info_cEigrpRepliesSent'] = {
'title': _('Reply packets send'),
'unit': 'count',
'color': '32/a',
}
metric_info['cisco_eigrp_as_info_cEigrpRepliesRcvd'] = {
'title': _('Reply packets received'),
'unit': 'count',
'color': '42/a',
}
metric_info['cisco_eigrp_as_info_cEigrpAcksSent'] = {
'title': _('Acknowledgements send'),
'unit': 'count',
'color': '13/a',
}
metric_info['cisco_eigrp_as_info_cEigrpAcksRcvd'] = {
'title': _('Acknowledgements received'),
'unit': 'count',
'color': '23/a',
}
metric_info['cisco_eigrp_as_info_cEigrpInputQHighMark'] = {
'title': _('Highest number of packets in the input queue'),
'unit': 'count',
'color': '33/a',
}
metric_info['cisco_eigrp_as_info_cEigrpInputQDrops'] = {
'title': _('Packets dropped from the input queue'),
'unit': 'count',
'color': '43/a',
}
metric_info['cisco_eigrp_as_info_cEigrpSiaQueriesSent'] = {
'title': _('Stuck in active (SIA) queries sent'),
'unit': 'count',
'color': '14/a',
}
metric_info['cisco_eigrp_as_info_cEigrpSiaQueriesRcvd'] = {
'title': _('Stuck in active (SIA) queries received'),
'unit': 'count',
'color': '24/a',
}
metric_info['cisco_eigrp_as_info_cEigrpTopoRoutes'] = {
'title': _('Routes in the topology table'),
'unit': 'count',
'color': '34/a',
}
metric_info['cisco_eigrp_as_info_cEigrpXmitPendReplies'] = {
'title': _('Outstanding replies expected to queries send'),
'unit': 'count',
'color': '44/a',
}
######################################################################################################################
#
# how to graph perdata for ciso_eigrp
#
######################################################################################################################
# graphs for cisco_eigrp_peer
graph_info['cisco_eigrp_peer_uptime'] = {
'title': _('Uptime'),
'metrics': [
('cisco_eigrp_peers_cEigrpUpTime', 'area'),
],
}
graph_info['cisco_eigrp_peer_enqued'] = {
'title': _('Packets enqueued'),
'metrics': [
('cisco_eigrp_peers_cEigrpPktsEnqueued', 'line'),
],
}
graph_info['cisco_eigrp_peer_retransmission'] = {
'title': _('Smooth round trip time / retransmission timeout'),
'metrics': [
('cisco_eigrp_peers_cEigrpSrtt', 'line'),
('cisco_eigrp_peers_cEigrpRto', 'line'),
],
}
graph_info['cisco_eigrp_peer_error'] = {
'title': _('Retransmissions / Retries'),
'metrics': [
('cisco_eigrp_peers_cEigrpRetrans', 'line'),
('cisco_eigrp_peers_cEigrpRetries', 'line'),
],
}
# graphs for cisco_eigrp_as_info
graph_info['cisco_eigrp_as_info_neighbour_count'] = {
'title': _('Neighbour count'),
'metrics': [
('cisco_eigrp_as_info_cEigrpNbrCount', 'line'),
],
}
graph_info['cisco_eigrp_as_info_route_count'] = {
'title': _('Routes in the topology table'),
'metrics': [
('cisco_eigrp_as_info_cEigrpTopoRoutes', 'line'),
],
}
graph_info['cisco_eigrp_as_info_hellos'] = {
'title': _('Hellos send/received'),
'metrics': [
('cisco_eigrp_as_info_cEigrpHellosSent', 'line'),
('cisco_eigrp_as_info_cEigrpHellosRcvd', '-line'),
],
}
graph_info['cisco_eigrp_as_info_packets'] = {
'title': _('Packets send/received'),
'metrics': [
('cisco_eigrp_as_info_cEigrpQueriesSent', 'line'),
('cisco_eigrp_as_info_cEigrpUpdatesSent', 'line'),
('cisco_eigrp_as_info_cEigrpRepliesSent', 'line'),
('cisco_eigrp_as_info_cEigrpAcksSent', 'line'),
('cisco_eigrp_as_info_cEigrpSiaQueriesSent', 'line'),
('cisco_eigrp_as_info_cEigrpQueriesRcvd', '-line'),
('cisco_eigrp_as_info_cEigrpUpdatesRcvd', '-line'),
('cisco_eigrp_as_info_cEigrpRepliesRcvd', '-line'),
('cisco_eigrp_as_info_cEigrpAcksRcvd', '-line'),
('cisco_eigrp_as_info_cEigrpSiaQueriesRcvd', '-line'),
],
}
graph_info['cisco_eigrp_as_info_drops'] = {
'title': _('Input queue drops / Queue hi mark'),
'metrics': [
('cisco_eigrp_as_info_cEigrpInputQDrops', 'line'),
('cisco_eigrp_as_info_cEigrpInputQHighMark', 'line'),
],
}
# graphs for cisco_eigrp_interface
graph_info['cisco_eigrp_interface_peer_count'] = {
'title': _('Peer count'),
'metrics': [
('cisco_eigrp_interface_cEigrpPeerCount', 'line'),
],
}
graph_info['cisco_eigrp_interface_queue_length'] = {
'title': _('Queue length'),
'metrics': [
('cisco_eigrp_interface_cEigrpXmitReliableQ', 'line'),
('cisco_eigrp_interface_cEigrpXmitUnreliableQ', 'line'),
],
}
graph_info['cisco_eigrp_interface_multicasts'] = {
'title': _('Multicasts send'),
'metrics': [
('cisco_eigrp_interface_cEigrpRMcasts', 'line'),
('cisco_eigrp_interface_cEigrpUMcasts', 'line'),
],
}
graph_info['cisco_eigrp_interface_unicasts'] = {
'title': _('Unicasts send'),
'metrics': [
('cisco_eigrp_interface_cEigrpUUcasts', 'line'),
('cisco_eigrp_interface_cEigrpRUcasts', 'line'),
],
}
graph_info['cisco_eigrp_interface_pendinf_routes'] = {
'title': _('Pending Routes'),
'metrics': [
('cisco_eigrp_interface_cEigrpPendingRoutes', 'line'),
],
}
graph_info['cisco_eigrp_interface_packets'] = {
'title': _('Various packets'),
'metrics': [
('cisco_eigrp_interface_cEigrpMcastExcepts', 'line'),
('cisco_eigrp_interface_cEigrpCRpkts', 'line'),
('cisco_eigrp_interface_cEigrpRetransSent', 'line'),
('cisco_eigrp_interface_cEigrpOOSrvcd', 'line'),
],
}
graph_info['cisco_eigrp_interface_rtt'] = {
'title': _('Average smooth round trip time'),
'metrics': [
('cisco_eigrp_interface_cEigrpMeanSrtt', 'line'),
],
}
graph_info['cisco_eigrp_interface_ack_suppressed'] = {
'title': _('Suppressed acknowledgements'),
'metrics': [
('cisco_eigrp_interface_cEigrpAcksSuppressed', 'line'),
],
}
# define metrics for cisco_eigrp_topology_table perfdata
graph_info['cisco_eigrp_topology_table_routes'] = {
'title': _('Routes by origin type'),
'metrics': [
('cisco_eigrp_topology_table_Inetaddress', 'line'),
('cisco_eigrp_topology_table_Static_redistributed', 'line'),
('cisco_eigrp_topology_table_Summary', 'line'),
('cisco_eigrp_topology_table_External', 'line'),
('cisco_eigrp_topology_table_Internal', 'line'),
('cisco_eigrp_topology_table_Connected', 'line'),
('cisco_eigrp_topology_table_routes', 'line'),
],
'optional_metrics': [
'cisco_eigrp_topology_table_Inetaddress',
'cisco_eigrp_topology_table_Static_redistributed',
'cisco_eigrp_topology_table_Summary',
'cisco_eigrp_topology_table_External',
'cisco_eigrp_topology_table_Internal',
'cisco_eigrp_topology_table_Connected',
]
# 'range': (0, 'cisco_eigrp_topology_table_routes:max')
}
graph_info['cisco_eigrp_topology_table_active_sia'] = {
'title': _('Stuck in active (SIA) / active routes'),
'metrics': [
('cisco_eigrp_topology_table_siaroutes', 'line'),
('cisco_eigrp_topology_table_activeroutes', 'line'),
],
}
######################################################################################################################
#
# define perf-o-meter for cisco_eigrp
#
######################################################################################################################
# cisco_eigrp_peers peer uptime
perfometer_info.append({
'type': 'logarithmic',
'metric': 'cisco_eigrp_peers_cEigrpUpTime',
'half_value': 2592000.0,
'exponent': 2,
})
# cisco_eigrp_interface send packets
perfometer_info.append({
'type': 'linear',
'segments': ['cisco_eigrp_interface_cEigrpPeerCount'],
'total': 50,
})
# cisco_eigrp_topology_table
perfometer_info.append({
'type': 'linear',
'segments': ['cisco_eigrp_topology_table_routes'],
'total': 1000,
})
# cisco_eigrp_as_info
perfometer_info.append({
'type': 'linear',
'segments': ['cisco_eigrp_as_info_cEigrpNbrCount'],
'total': 30,
})
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment