From 39dec74b2b77fdc035fa593060d5175f733f2d03 Mon Sep 17 00:00:00 2001 From: jdubois Date: Tue, 30 Apr 2024 16:13:11 +0200 Subject: [PATCH] =?UTF-8?q?M=C3=A0J=20exemple=20plugin=20SNMP?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HowtoCollectd.md | 93 +++++++++++++++++++++++++++++++----------------- 1 file changed, 60 insertions(+), 33 deletions(-) diff --git a/HowtoCollectd.md b/HowtoCollectd.md index 3ba0bf4a..fa762317 100644 --- a/HowtoCollectd.md +++ b/HowtoCollectd.md @@ -155,7 +155,12 @@ PUTVAL $(hostname)/bgp_prefixes/count-${PEER} N:${CURRENT_PREFIXES} Le plugin [snmp](https://collectd.org/documentation/manpages/collectd-snmp.5.shtml) permet de faire des requêtes SNMP à des machines spécifiques. Un block `Data` définit l'OID et sous quel format stocker les valeurs récupérées, et un block `Host` définit quelles machines interroger ainsi que la configuration SNMP. -Exemple pour récupérer le débit et le nombre de paquets unicast d'un switch, la charge d'un APC, et la fréquence, la tension, l'intensité, la source préférée et le statut d'un ATS. +Exemple pour récupérer : + +* Pour un switch : le débit, le nombre de paquets unicast/multicast/broadcast, le nombre d'erreurs, les données des capteurs des SFP, la charge CPU, la RAM utilisée, l'uptime +* Pour un APC : la charge +* Pour un ATS : la fréquence, la tension, l'intensité, la source préférée et le statut + Sous debian, le paquet `snmp` est nécessaire. ~~~ @@ -170,62 +175,84 @@ LoadPlugin snmp Type "if_octets" Table true - Instance "1.3.6.1.2.1.31.1.1.1.18" + TypeInstanceOID "1.3.6.1.2.1.31.1.1.1.18" Values "1.3.6.1.2.1.31.1.1.1.6" "1.3.6.1.2.1.31.1.1.1.10" Type "if_packets" Table true - Instance "1.3.6.1.2.1.31.1.1.1.18" + TypeInstanceOID "1.3.6.1.2.1.31.1.1.1.1" Values "1.3.6.1.2.1.31.1.1.1.7" "1.3.6.1.2.1.31.1.1.1.11" + + Type "if_packets" + Table true + TypeInstanceOID "1.3.6.1.2.1.31.1.1.1.18" + TypeInstancePrefix "multicast-" + Values "1.3.6.1.2.1.31.1.1.1.8" "1.3.6.1.2.1.31.1.1.1.12" + + + Type "if_packets" + Table true + TypeInstanceOID "IF-MIB::ifAlias" + TypeInstancePrefix "broadcast-" + Values "1.3.6.1.2.1.31.1.1.1.9" "1.3.6.1.2.1.31.1.1.1.13" + Type "if_errors" Table true - Instance "1.3.6.1.2.1.31.1.1.1.18" + TypeInstanceOID "1.3.6.1.2.1.31.1.1.1.1" Values "1.3.6.1.2.1.2.2.1.14" "1.3.6.1.2.1.2.2.1.20" Type "if_dropped" Table true - Instance "1.3.6.1.2.1.31.1.1.1.18" + TypeInstanceOID "1.3.6.1.2.1.31.1.1.1.1" Values "1.3.6.1.2.1.2.2.1.13" "1.3.6.1.2.1.2.2.1.19" + # Capteurs des SFP fibre pour Cisco Nexus + + Type "gauge" + Scale 0.001 + Table true + TypeInstanceOID ".1.3.6.1.2.1.47.1.1.1.1.2" + Values ".1.3.6.1.4.1.9.9.91.1.1.1.1.4" + # https://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/15215-collect-cpu-util-snmp.html Type "cpufreq" - Instance "cpu_5s" + TypeInstance "cpu_5s" Values "1.3.6.1.4.1.9.9.109.1.1.1.1.6.1" Type "cpufreq" - Instance "cpu_1m" + TypeInstance "cpu_1m" Values "1.3.6.1.4.1.9.9.109.1.1.1.1.7.1" Type "cpufreq" - Instance "cpu_5m" + TypeInstance "cpu_5m" Values "1.3.6.1.4.1.9.9.109.1.1.1.1.8.1" # https://community.ipswitch.com/s/article/What-SNMP-OID-does-WhatsUp-Use-for-Cisco-Memory-and-CPU Type "memory" Table true - Instance "1.3.6.1.4.1.9.9.48.1.1.1.2" - InstancePrefix "Used - " + TypeInstanceOID "1.3.6.1.4.1.9.9.48.1.1.1.2" + TypeInstancePrefix "Used - " Values "1.3.6.1.4.1.9.9.48.1.1.1.5" Type "memory" Table true - Instance "1.3.6.1.4.1.9.9.48.1.1.1.2" - InstancePrefix "Free - " + TypeInstanceOID "1.3.6.1.4.1.9.9.48.1.1.1.2" + Type InstancePrefix "Free - " Values "1.3.6.1.4.1.9.9.48.1.1.1.6" # https://community.cisco.com/t5/switching/snmp-uptime/td-p/939932 Type "uptime" - Instance "uptime" + TypeInstance "uptime" Values ".1.3.6.1.6.3.10.2.1.3.0" @@ -233,49 +260,49 @@ LoadPlugin snmp Address "192.0.2.1" Version 2 Community "public" - Collect "ifmib_if_octets64" "ifmib_if_packets64" "ifmib_if_errors" "ifmib_if_dropped" "memory_used" "memory_free" "uptime" + Collect "ifmib_if_octets64" "ifmib_if_packets64" "ifmib_if_multicast_packets64" "ifmib_if_broadcast_packets64" "ifmib_if_errors" "ifmib_if_dropped" "sfp_sensors" "cpu_5s" "cpu_1m" "cpu_5m" "memory_used" "memory_free" "uptime" # APC Type "current" - Instance "apc_current_load" + TypeInstance "apc_current_load" Scale 0.1 Values ".1.3.6.1.4.1.318.1.1.12.2.3.1.1.2.1" Type "current" - Instance "apc_current_low" + TypeInstance "apc_current_low" Values ".1.3.6.1.4.1.318.1.1.12.2.2.1.1.2.1" Type "current" - Instance "apc_current_near" + TypeInstance "apc_current_near" Values ".1.3.6.1.4.1.318.1.1.12.2.2.1.1.3.1" Type "current" - Instance "apc_current_overload" + TypeInstance "apc_current_overload" Values ".1.3.6.1.4.1.318.1.1.12.2.2.1.1.4.1" # Pour les APCs avec compteurs par prises Type "current" Table true - Instance ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.1" + TypeInstanceOID ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.1" Scale 0.1 Values ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.6" Type "energy" Table true - Instance ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.1" + TypeInstanceOID ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.1" Values ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.7" Type "energy_wh" Table true - Instance ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.1" + TypeInstanceOID ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.1" Scale 0.1 Values ".1.3.6.1.4.1.318.1.1.26.9.4.3.1.11" @@ -299,66 +326,66 @@ LoadPlugin snmp # ATS Type "frequency" - Instance "ats_input_freq_a" + TypeInstance "ats_input_freq_a" Values ".1.3.6.1.4.1.318.1.1.8.5.3.2.1.4.1" Type "voltage" - Instance "ats_input_volt_a" + TypeInstance "ats_input_volt_a" Values ".1.3.6.1.4.1.318.1.1.8.5.3.3.1.3.1.1.1" Type "frequency" - Instance "ats_input_freq_b" + TypeInstance "ats_input_freq_b" Values ".1.3.6.1.4.1.318.1.1.8.5.3.2.1.4.2" Type "voltage" - Instance "ats_input_volt_b" + TypeInstance "ats_input_volt_b" Values ".1.3.6.1.4.1.318.1.1.8.5.3.3.1.3.2.1.1" Type "voltage" - Instance "ats_output_volt" + TypeInstance "ats_output_volt" Values ".1.3.6.1.4.1.318.1.1.8.5.4.3.1.3.1.1.1" Type "current" - Instance "ats_output_current" + TypeInstance "ats_output_current" Scale 0.1 Values ".1.3.6.1.4.1.318.1.1.8.5.4.3.1.4.1.1.1" Type "frequency" - Instance "ats_output_freq" + TypeInstance "ats_output_freq" Values ".1.3.6.1.4.1.318.1.1.8.5.4.2.1.4.1" Type "count" - Instance "ats_source_preferred" + TypeInstance "ats_source_preferred" Values ".1.3.6.1.4.1.318.1.1.8.4.2.0" Type "count" - Instance "ats_source_status" + TypeInstance "ats_source_status" Values ".1.3.6.1.4.1.318.1.1.8.5.1.2.0" Type "count" - Instance "ats_status_redundancy" + TypeInstance "ats_status_redundancy" Values ".1.3.6.1.4.1.318.1.1.8.5.1.3.0" Type "current" - Instance "ats_status_current_state" + TypeInstance "ats_status_current_state" Values ".1.3.6.1.4.1.318.1.1.8.5.1.4.0" Type "current" - Instance "ats_status_current_limit" + TypeInstance "ats_status_current_limit" Values ".1.3.6.1.4.1.318.1.1.8.4.6.0"