.Shad. Posté(e) le 15 avril 2023 Auteur Posté(e) le 15 avril 2023 (modifié) @Dimebag Darrell Ah ? moi, même en root (quand je ne précise pas de user dans le fichier compose), ça ne fonctionne pas. En revanche j'ai procédé autrement, pour éviter de devoir toucher aux permissions du socket docker. J'ai utilisé l'image https://github.com/sjawhar/docker-socket-proxy qui permet d'exposer via un conteneur un socket docker. Et ce conteneur est dans un réseau uniquement composé de telegraf et lui-même. Ainsi Telegraf accède au socket via les permissions natives, et je n'utilise pas de certificat TLS (contrairement à ce que je fais dans ce tutoriel) car seul Telegraf peut avoir accès au socket, ce que j'estime ne pas représenter de danger outre-mesure. Mon fichier compose pour le proxy : version: "2.1" services: docker-socket-proxy: image: sjawhar/docker-socket-proxy container_name: docker-socket-proxy hostname: docker-socket-proxy networks: - net-dsp environment: - LISTEN_SECURE=false - LISTEN_PORT=2375 volumes: - /var/run/docker.sock:/var/run/docker.sock:ro labels: - "com.centurylinklabs.watchtower.enable=true" restart: unless-stopped networks: net-dsp: external: true net-dsp est le réseau qui accueille également Telegraf, dont le compose est le suivant chez moi : version: "2.1" services: telegraf: image: telegraf container_name: telegraf networks: - net-dsp # non-root user needed since 1.20.3 user: telegraf:65536 volumes: # config - /volume1/docker/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro # additional MIBs - /usr/share/snmp/mibs:/usr/share/snmp/mibs:ro # local time preset - /etc/localtime:/etc/localtime:ro - /etc/TZ:/etc/timezone:ro # docker socket mounting - /var/run/docker.sock:/var/run/docker.sock:ro labels: # watchtower label only monitoring - "com.centurylinklabs.watchtower.enable=true" restart: unless-stopped networks: net-dsp: external: true Remarque : C'est normal que Telegraf ne partage pas de réseau commun avec InfluxDB et Grafana, ces derniers sont sur un VPS dans mon cas, il accède donc à InfluxDB via son entrée de proxy inversé sur le VPS directement. Modifié le 15 avril 2023 par .Shad. 0 Citer
Dimebag Darrell Posté(e) le 12 mai 2023 Posté(e) le 12 mai 2023 Je sais que ce n'est pas du monitoring réseau, mais j'ai vu qu'il était possible de monitorer son onduleur (photovoltaique) en utilisant influxdb et grafana, ça à l'air quand même assez solide à mettre en place https://github.com/michbeck100/pv-monitoring 0 Citer
.Shad. Posté(e) le 12 mai 2023 Auteur Posté(e) le 12 mai 2023 (modifié) Tu peux monitorer ce que tu veux, à partir du moment où tu sais comment faire ingérer les données à InfluxDB. Telegraf prend en charge MQTT, et pour un cadre domotique c'est déjà 50% du boulot qui est fait. Le reste dépend de ton installation, des protocoles utilisés, des capteurs dont tu disposes, de la passerelle domotique utilisée (Jeedom et Home Assistant embarquent tout un tas de plugin constructeurs permettant de recueillir les informations des onduleurs et automates). Jeedom propose aussi un plugin InfluxDB qui fonctionne très bien. Je m'en sers pour tracer certains graphiques relatifs aux températures dans ma maison et l'activité des vannes thermostatiques. Modifié le 12 mai 2023 par .Shad. 0 Citer
Pinpon_112 Posté(e) le 26 août 2023 Posté(e) le 26 août 2023 (modifié) Bonjour, Merci à @.Shad. pour le tuto. Je suis occuper à mettre en place tout cela. J'ai réussi à tout implémenter par le terminal et portainer. Je n'ai eu aucun problème. Par contre, après avoir modifié le fichier telegraf.conf, j'ai essayé de voir les logs comme indiqué. Voici ce que j'ai : /volume1/docker/telegraf# docker-compose logs -f no configuration file provided: not found et c'est la même chose pour influxdb. Qui peut m'aider ? Modifié le 26 août 2023 par Pinpon_112 0 Citer
Pinpon_112 Posté(e) le 26 août 2023 Posté(e) le 26 août 2023 Ceci dit, j'ai quand même réussi à obtenir quelque chose : 0 Citer
.Shad. Posté(e) le 27 août 2023 Auteur Posté(e) le 27 août 2023 Salut @Pinpon_112, Le message est étrange, est-ce que le fichier s'appelle bien telegraf.conf et est-ce qu'il est correctement monté dans le conteneur ? à quoi ton ressemble ton fichier compose ? 0 Citer
Pinpon_112 Posté(e) le 28 août 2023 Posté(e) le 28 août 2023 Hello @.Shad., Voici le nom du fichier en question : telegraf.conf (j'ai fait un copié-coller du nom). Et voici le contenu du fichier compose : version: '2.1' services: telegraf: image: telegraf container_name: telegraf networks: - monitoring user: 1039:65537 # A adapter suivant vos valeurs # ports: # Optionnel # - 8125:8125 # Optionnel # - 8092:8092/udp # Optionnel # - 8094:8094 # Optionnel volumes: - /volume1/docker/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro - /usr/share/snmp/mibs:/usr/share/snmp/mibs:ro - /etc/localtime:/etc/localtime:ro - /etc/TZ:/etc/timezone:ro restart: unless-stopped networks: monitoring: external: true 0 Citer
.Shad. Posté(e) le 28 août 2023 Auteur Posté(e) le 28 août 2023 Est-ce que dans le fichier telegraf.conf tu as passé les logs en debug ? ## Logging configuration: ## Run telegraf with debug log messages. debug = true Essaie de visualiser les logs depuis Container Manager (ou Docker suivant ta version de DSM), et poste le contenu des logs ici. 0 Citer
Pinpon_112 Posté(e) le 28 août 2023 Posté(e) le 28 août 2023 il y a 1 minute, .Shad. a dit : Est-ce que dans le fichier telegraf.conf tu as passé les logs en debug ? ## Logging configuration: ## Run telegraf with debug log messages. debug = true Essaie de visualiser les logs depuis Container Manager (ou Docker suivant ta version de DSM), et poste le contenu des logs ici. Je l'ai effectivement fait mais comment puis-je voir les logs car dans la partie Journal, je ne vois rien. 0 Citer
.Shad. Posté(e) le 28 août 2023 Auteur Posté(e) le 28 août 2023 Pour InfluxDB je suis étonné que tu aies ce message, car il n'y a pas de fichier de configuration à éditer pour la mise en place, tout passe par les variables d'environnement. 0 Citer
Pinpon_112 Posté(e) le 28 août 2023 Posté(e) le 28 août 2023 (modifié) Voici le fichier telegraf.confau cas où. Et j'ai toujours la même chose via le terminal, je viens de réessayer. Modifié le 28 août 2023 par Pinpon_112 0 Citer
.Shad. Posté(e) le 28 août 2023 Auteur Posté(e) le 28 août 2023 Je ne comprends pas pourquoi tu ne vois rien. Redémarre le conteneur pour voir, tu dois nécessairement avoir des logs, est-ce que l'utilisateur telegraf de ton NAS est bien propriétaire du dossier telegraf dans /volume1/docker ? 0 Citer
Pinpon_112 Posté(e) le 28 août 2023 Posté(e) le 28 août 2023 Normalement oui. Voilà ce que j'ai pour l'utilisateur telegraph : J'ai redémarré le container. C'est toujours la même chose dans le terminal : "no configuration file provided: not found". Voici les logs de telegraf récupérer dans Portainer. _telegraf_logs.txt 0 Citer
.Shad. Posté(e) le 28 août 2023 Auteur Posté(e) le 28 août 2023 (modifié) Ahhhhhhhh, je comprends mieux. Ton conteneur fonctionne normalement. Tu as créé ton conteneur via Portainer ? car quand tu écris : docker-compose logs -f En fait, ça ne fonctionne que si tu trouves dans un dossier où un fichier docker-compose.yml se trouve nommément. Sinon, tu peux préciser un path via : docker-compose -f /volume1/docker/telegraf/docer-compose_telegraf.yml logs -f par exemple. Ou tout autre chemin/nom de fichier. C'est ça le fameux fichier de configuration qu'il cherche, le fichier yml. Et si tu utilises Portainer ou Container Manager tu n'as pas besoin de tout ça. Félicitations ça fonctionne, maintenant tu peux t'amuser à apprendre Grafana. 🙂 Modifié le 28 août 2023 par .Shad. 0 Citer
Pinpon_112 Posté(e) le 28 août 2023 Posté(e) le 28 août 2023 OK, merci pour ton aide et la compréhension. 0 Citer
Pinpon_112 Posté(e) le 28 août 2023 Posté(e) le 28 août 2023 (modifié) Le 03/09/2021 à 11:53, oracle7 a dit : Bonjour, Sinon pour Speedtest, voici une procédure d'installation qui prend en compte les modifs de @bruno78 : Installation speedtest2 • Prérequis : o Une database dédiée configurée sous influxdb, avec son user/pwd dédié. root@MonNAS:/volume1/docker/speedtest# docker exec -it influxdb influx -username admin -password admin > CREATE DATABASE nas_speedtest > USE nas_speedtest > CREATE USER speedtest WITH PASSWORD 'speedtest' > GRANT ALL ON nas_speedtest TO speedtest > SHOW DATABASES > SHOW USERS > exit docker restart influxdb • Télécharger le fichier speedtest2.tar (speedtest2.tar : https://www.nas-forum.com/forum/applications/core/interface/file/attachment.php?id=15317). Il contient : o Dockerfile : fichier de commande pour générer la nouvelle image o InfluxdbSpeedtest.py : fichier de lancement du test, très légèrement modifié (on fait un simple 'ping' de la base influxdb) o SpeedTest_Net_Server_List.xml : en prime la liste des serveurs utilisés, avec leurs identifiants. Pour amélioration du dashboard grafana (source github) • Etat avant modification : o image root@MonNAS:/volume1/docker/speedtest# docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE ... atribe/speedtest-for-influxdb-and-grafana latest 99c2c10d1e41 16 months ago 111MB ... o container root@Maeva56:/volume1/docker/speedtest# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ... bc4340b44afd atribe/speedtest-for-influxdb-and-grafana:latest "python -u /src/infl…" 3 days ago Up 43 hours speedtest ... • On arrête le container speedtest en cours root@MonNAS:/volume1/docker/speedtest# docker stop speedtest • On construit la nouvelle image /!\ ne pas oublier le "." (point) à la fin de la commande /!\ root@MonNAS:/volume1/docker/speedtest# docker build -f Dockerfile --rm --tag speedtest2 . Sending build context to Docker daemon 959kB Step 1/2 : FROM atribe/speedtest-for-influxdb-and-grafana:latest ---> 99c2c10d1e41 Step 2/2 : COPY ./InfluxdbSpeedtest.py /src/influxspeedtest/ ---> 08847e4b7b5e Successfully built 08847e4b7b5e Successfully tagged speedtest2:latest • On vérifie que l'image speedtest2 a bien été créée (on a toujours l'ancienne) root@Maeva56:/volume1/docker/speedtest# docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE speedtest2 latest 08847e4b7b5e 15 seconds ago 111MB ... atribe/speedtest-for-influxdb-and-grafana latest 99c2c10d1e41 16 months ago 111MB ... • On met à jour le docker-compose.yml pour prendre en compte cette nouvelle image root@MonNAS:/volume1/docker/speedtest# cat docker-compose.yml version: "2.1" services: speedtest2: image: speedtest2:latest container_name: speedtest2 volumes: - ./config.ini:/src/config.ini restart: unless-stopped mem_limit: 256M network_mode: bridge • On met à jour le fichier config.ini pour modifier le user/pwd à utiliser root@MonNAS:/volume1/docker/speedtest# cat config.ini [GENERAL] # Duree en secondes entre deux mesures ---> A adapter au besoin ! # Delay = 3600 Delay = 10800 [INFLUXDB] Address = 172.20.0.2 Port = 8086 Database = nas_speedtest #Username = admin #Password = admin Username = speedtest Password = speedtest Verify_SSL = True [SPEEDTEST] # Leave blank to auto pick server Server = [LOGGING] # Valid Options: critical, error, warning, info, debug Level = debug • On peut enfin lancer le nouveau container avec la nouvelle image : root@Maeva56:/volume1/docker/speedtest# docker-compose up -d Creating speedtest2 ... done • On attend une petite minute et on vérifie que tout est en place : root@MonNAS:/volume1/docker/speedtest# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 498d69abfe03 speedtest2:latest "python -u /src/infl…" About a minute ago Up About a minute speedtest2 ... root@MonNAS:/volume1/docker/speedtest# docker logs -f speedtest2 Loading Configuration File config.ini Configuration Successfully Loaded 2021-01-07 13:22:38,148 - DEBUG: Testing connection to InfluxDb using provided credentials 2021-01-07 13:22:38,341 - DEBUG: Successful connection to InfluxDb 2021-01-07 13:22:38,341 - INFO: Starting Speed Test For Server None 2021-01-07 13:22:38,357 - DEBUG: Setting up SpeedTest.net client 2021-01-07 13:22:38,586 - DEBUG: Picking the closest server 2021-01-07 13:23:08,886 - INFO: Selected Server 16676 in Paris 2021-01-07 13:23:08,887 - INFO: Starting download test 2021-01-07 13:23:13,306 - INFO: Starting upload test 2021-01-07 13:23:16,028 - DEBUG: [{'measurement': 'speed_test_results', 'fields': {'download': 741713644.1996006, 'upload': 549366763.0788989, 'ping': 5.709, 'server': '16676', 'server_name': 'Paris'}, 'tags': {'server': '16676', 'server_name': 'Paris', 'server_country': 'France'}}] 2021-01-07 13:23:16,242 - DEBUG: Data written to InfluxDB 2021-01-07 13:23:16,242 - INFO: Download: 741.71Mbps - Upload: 549.37Mbps - Latency: 5.709ms 2021-01-07 13:23:16,242 - INFO: Waiting 10800 seconds until next test • Et je retrouve ce test dans mon dashboard (je n'ai pas mis à jour le fuseaux horaire ...) : Cordialement oracle7😉 Bonjour @oracle7 et @bruno78, J'essaye d'implémenter ton script speedtest. Pour cela, je suis ton mode d'emploi mais j'ai un problème. La partie Influxdb est faite et j'ai downloader le fichier speedtest2.tar. Je ne sais par contre pas où je dois le mettre. Que je le mette dans le dossier docker ou dans le dossier docker/speedtest, j'ai toujours la même chose avec terminal : REPOSITORY TAG IMAGE ID CREATED SIZE grafana/grafana latest 6fc2a772178b 4 days ago 392MB telegraf latest 1c4cc0044eb2 6 days ago 422MB influxdb 1.8 209f5640465f 11 days ago 307MB neilpang/acme.sh latest 81314eb50e2c 4 weeks ago 41.1MB portainer/portainer-ce latest 9ecc2a9e02ca 7 weeks ago 277MB containrrr/watchtower latest f847e1adb570 7 months ago 14.6MB Je ne vois pas l'image speedtest2.tar et je ne vois même pas le dossier speedtest qui a été créé dans le dossier Docker 😞 Bref, je suis bloquer et ce même si j'ouvre le dossier speedtest.tar Pouvez-vous m'aider ? Modifié le 30 août 2023 par Pinpon_112 0 Citer
Pinpon_112 Posté(e) le 30 août 2023 Posté(e) le 30 août 2023 (modifié) Bonjour @.Shad., @MilesTEG1 et les autres, Je continue mon exploration et je commence à chipoter dans grafana. J'ai cependant un problème. Voici ce que j'ai pour les infos de mon NAS : Comment faire pour supprimer le champ Time qui ne correspond à rien sauf si on peut avoir l'heure à l'instant T ? Pourquoi la valeur Uptime est ? ==> J'ai regardé mon fichier telegraf.conf et j'ai vu que ce n'étais pas sysUptime mais sysUpTime. Du coup, j'ai corrigé. Comment mettre en jours, heures, minutes correcte car mon NAS, il n'est pas si vieux... ? Pourquoi la valeur Update est à 2.00 et pas un up to date comme ici chez @MilesTEG1 Dans une autre fenêtre, j'ai ceci : Pourquoi tout ces caractères snmp.SYNO.L-last... ? Je n'ai pas encore trouvé comment monitorer Docker mais je continue à chercher 😉 Merci pour votre aide. Modifié le 30 août 2023 par Pinpon_112 0 Citer
EuphoPlat Posté(e) le 20 septembre 2023 Posté(e) le 20 septembre 2023 Bonjour, J'ai monté un TIG pour surveiller une infra réseau. Je rencontre un soucis sur mes Time Series, en effet qu'importe l'interval configurée, le retour d'information de ma requête SNMP se fait toute les 1m50, or j'ai bien ma query qui se fait toute les 10s/20s/.., je n'arrive pas à trouver la configuration. >> https://www.noelshack.com/2023-38-3-1695191285-sup.png Avez-vous une idée ?? Merci d'avance 😉 0 Citer
.Shad. Posté(e) le 20 septembre 2023 Auteur Posté(e) le 20 septembre 2023 @EuphoPlat Pour configurer l'intervalle de polling, c'est au tout début du fichier telegraf.conf, et par défaut c'est 10s. C'est dans l'inputs.snmp du NAS qu'on peut spécifier un autre intervalle. 0 Citer
EuphoPlat Posté(e) le 20 septembre 2023 Posté(e) le 20 septembre 2023 Oui, on est raccord sur cette information. Je suis bien en 10s, paramètre non modifié. Cependant, si tu regarde bien les query se font bien, mais j'ai pas de valeur dans la case de droite, donc sur mes graph j'ai une mesure que toute les 2m env. 0 Citer
.Shad. Posté(e) le 20 septembre 2023 Auteur Posté(e) le 20 septembre 2023 Tu utilises le plugin inputs.ping j'imagine ? Si oui, tu peux me copier/coller la configuration de cette partie ? 0 Citer
EuphoPlat Posté(e) le 21 septembre 2023 Posté(e) le 21 septembre 2023 Presque, j'ai configuré un IPSLA icmp-echo sur mon CISCO avec un refresh tous les 3s qui fonctionne, je n'ai pas d'erreur sur ces pings : ip sla 2 icmp-echo x.x.x.x source-ip y.y.y.y tag ICMP_ECHO threshold 150 timeout 3000 frequency 3 ip sla schedule 2 life forever start-time now côté telegraf j'ai : [agent] interval = "10s" round_interval = true metric_batch_size = 1000 metric_buffer_limit = 10000 collection_jitter = "3s" flush_interval = "10s" flush_jitter = "3s" precision = "0s" [[outputs.influxdb]] urls = ["http://127.0.0.1:8086"] database = "telegraf" username = "x" password = "y" interval = "10s" [[inputs.snmp]] agents = [ "x.x.x.x:161", ] community = "public" timeout = "10s" retries = 3 [[inputs.snmp.table]] name = "CiscoIpSlaMonitor" inherit_tags = [ "sysName","sysLocation" ] [[inputs.snmp.table.field]] oid = "1.3.6.1.4.1.9.9.42.1.2.10.1.1" Grafana m'affiche bien une nouvelle ligne toute les Xs (en fonction du scale) mais je n'ai pas de valeur qui remonte en face dans la colonne "Latence ICMP", hormis une toute les x minutes. Merci 😉 0 Citer
.Shad. Posté(e) le 21 septembre 2023 Auteur Posté(e) le 21 septembre 2023 @Pinpon_112 Désolé j'avais zappé ton message : Pour l'uptime, tu fais un Add field override pour le champ Uptime. Tu définis l'unité sur Time > duration (s) et tu ajoutes une opération math/100 : Pour enlever le champ Time, il faut choisir l'onglet Transform (à côté de Query, voir image ci-dessus), Add another transformation, Organize field, et là tu peux choisir de cacher les champs que tu souhaites. Pour la valeur up-to-date, il faut utiliser les value mappings : Et pour les snmp.XXX c'est lié au fait que tu n'exploites pas les alias pour nommer tes champs et colonnes, c'est la case ALIAS à personnaliser dans la query : https://stackoverflow.com/questions/42397891/how-to-use-a-influxdb-tag-value-in-a-grafana-legend @EuphoPlat Si tu fais un ping toutes les 3 secondes, et que tu définis un intervalle de polling de 10 secondes, je ne vois pas trop l'intérêt, à moins d'exploiter ce ping toutes les 3 secondes par ailleurs. En théorie, je pense que telegraf devrait renvoyer la réelle valeur de ping mesurée lors de son polling. As-tu essayé d'ajouter un fill(previous) dans GROUP BY ? 0 Citer
EuphoPlat Posté(e) le 21 septembre 2023 Posté(e) le 21 septembre 2023 (modifié) En faite, c'est l'interrogation SNMP qui se fait toute les 5m, quand je regarde mon switch je vois des requêtes que toutes les 5m. Donc la question c'est : pourquoi telegraf ne fait-il pas de requête toutes les x sec malgré la configuration. Je n'ai pas trouvé de paramètre, je vais voir à sniffer pour voir si j'ai pas un blocage quelque part. Après vérification, je confirme que les requêtes partes de mon SRV toute les 5mn... Modifié le 21 septembre 2023 par EuphoPlat 0 Citer
.Shad. Posté(e) le 21 septembre 2023 Auteur Posté(e) le 21 septembre 2023 Essaie d'ajouter un paramètre interval dans ton bloc inputs.snmp 0 Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.