Jeff777 Posté(e) le 19 septembre 2020 Posté(e) le 19 septembre 2020 Ah merci @bruno78 ! Je suis très joueur 🥳 je vais essayer. 0 Citer
bruno78 Posté(e) le 19 septembre 2020 Auteur Posté(e) le 19 septembre 2020 @Jeff777, finalement, avec cette url "v8", il me manque des données (temp, system fan, ...). Je reviens donc à la v4 qui doit être plus en accord avec mon matériel. Tiens nous au courant de ce que cela donne pour la POP. Cdt Bruno78 0 Citer
Jeff777 Posté(e) le 19 septembre 2020 Posté(e) le 19 septembre 2020 oui pour moi aussi. Avec V8 je n'avais aucune donnée. Par contre j'ai retiré tous les arguments de freebox_058 et j'obtiens ceci : J'ai essayé d'ajouter S puis P sans succès...je continue 🙂 0 Citer
Jeff777 Posté(e) le 19 septembre 2020 Posté(e) le 19 septembre 2020 A chaque fois que j'ajoute un argument j'ai l'impression que les données sont figées. Je continuerai demain. 0 Citer
bruno78 Posté(e) le 19 septembre 2020 Auteur Posté(e) le 19 septembre 2020 @Jeff777, oui, sans argument, tu obtiens un état "de base". Ensuite chaque argument ajoute des infos supplémentaires. Mais là, sans documentation précise sur la POP, ca va être coton de progresser. Je ne sais pas si il existe un moyen de "découvrir" les paramètres accessibles ? Si nouvelles idées .... Cdt 0 Citer
Jeff777 Posté(e) le 20 septembre 2020 Posté(e) le 20 septembre 2020 Il y a 20 heures, Jeff777 a dit : A chaque fois que j'ajoute un argument j'ai l'impression que les données sont figées. Les données se figent lorsque j'utilise l'argument P. Avec celui-ci j'ai systématiquement cette erreur : 2020-09-20T10:57:30Z E! [inputs.exec] Error in plugin: exec: exit status 1 for command 'python3 /usr/local/py/freebox_058.py -SPHIX': Traceback (most recent call last):... Si j'utilise tous les arguments sauf P je n'ai plus cette erreur et le dashboard n'est plus figé : Je n'ai pas de donnée sur le disque Freebox et sur le WIFI car pas de disque et WIFI désactivé. Pas de donnée sur le switch freebox ni les tpr cpu-m et sw mais c'est peut-être normal. Qu'en penses-tu ? Et contre toujours les erreurs suivantes dans le journal telegraf : 0 Citer
bruno78 Posté(e) le 20 septembre 2020 Auteur Posté(e) le 20 septembre 2020 Bonjour, l'argument "-P" va chercher les compteurs sur chacun des 4 ports du switch d'une Fbox Revolution. Pour cela, il adresses les url api_url = '%s/switch/port/%s/stats' % (ENDPOINT, port) c'est à dire http://mafreebox.free.fr/api/v4/switch/port/1/stats http://mafreebox.free.fr/api/v4/switch/port/2/stats http://mafreebox.free.fr/api/v4/switch/port/3/stats http://mafreebox.free.fr/api/v4/switch/port/4/stats Pour chaque port, on reçoit : Tx bytes Rate, Rx Byte Rate, et TX bytes. Ca c'est pour la Fbox Revolution qui a 4 ports 1G. Or si je ne me trompe, la POP possède 3 ports (1*2.5Gbps et 2*1Gbps). Il y a donc fort à parier que l'url permettant de récuperer ces stats soit différente. Mais de là à savoir laquelle est-ce ????? Je n'ai pas encore trouvé l'information .... 0 Citer
bruno78 Posté(e) le 20 septembre 2020 Auteur Posté(e) le 20 septembre 2020 @Jeff777 , du coup j'ai un test à te proposer (mais c'est vraiment en désespoir de cause !) : à la ligne 535 du script python freebox_058.py, puisqu'il n'y a que 3 ports, faire le test de remplacer : for i in [1, 2, 3, 4]: par for i in [1, 2, 3]: Qu'en penses-tu ? Bruno78 0 Citer
bruno78 Posté(e) le 20 septembre 2020 Auteur Posté(e) le 20 septembre 2020 @Jeff777, je n'avais pas fait attention, mais en regardant ton résultat Grafana précédent, on voit bien que le résultat du -S donne 3 ports (link#1, link#2 et link#3) ! Donc pour le -P, je pense qu'avec la modification énoncée ci-dessus ( for i in [1, 2, 3] ), ça peut le faire. Si ok, il faudra que je change le code pour rendre cette différence de configuration physique transparente pour l'utilisateur. Bruno78 0 Citer
Jeff777 Posté(e) le 20 septembre 2020 Posté(e) le 20 septembre 2020 Je viens de rechanger V4 pour V8. Sans changement, c'est à dire que les données que je recevais le sont toujours ! Quant à la modif ci-dessus ça ne change rien. En fait je crois qu'il suffit de retrouver les champs corrects s'ils existent. Par exemple les températures manquantes je ne trouve pas les champs dans le menu déroulant quand j'édite le panneau. Je crois que je vais me contenter des données reçues et voir si éventuellement il y en a d'autres qui m'intéressent. Seul pb l'erreur dans le journal de telegraf. Merci encore pour ton aide. 0 Citer
bruno78 Posté(e) le 20 septembre 2020 Auteur Posté(e) le 20 septembre 2020 .... c'est frustrant ..... 0 Citer
Jeff777 Posté(e) le 20 septembre 2020 Posté(e) le 20 septembre 2020 (modifié) oui mais ce n'est peut-être pas fini ! En effet avec l'aide de @.Shad. j'ai pu corriger les erreurs du log de telegraf. Le problème venait du fait que j'avais un seul container telegraf et plusieurs datasources. Je n'ai maintenant qu'une seule datasource et dans telegraf.conf j'ai mis uniquement les identifiants de cette source. Avec cela le log de telegraf ne montre plus d'erreur 😄 Encore quelques erreurs ou "no data" mais c'est en cours de résolution. Modifié le 22 septembre 2020 par Jeff777 0 Citer
Jeff777 Posté(e) le 23 septembre 2020 Posté(e) le 23 septembre 2020 bonjour, Pour faire le point : Mon dashboard freebox fonctionne à l'exception des valeurs suivantes : températures cpu-b et cpu-m (dans freebox OS il figure des températures nommées 1 et 2 mais je ne sais pas à quoi elles correspondent) disque freebox (même en branchant une clé USB) et station wifi (même en l'activant). 0 Citer
bruno78 Posté(e) le 23 septembre 2020 Auteur Posté(e) le 23 septembre 2020 Bonjour @Jeff777, sans connaitre le nom des variables internes utilisées, ca va être compliqué. Pour le CPU par exemple, les variables remontées sur une Revolution sont "temp_cpub" et "temp_cpum". Si tu me dis que sur la POP elles s'appellent temp1 et temp2, on peut essayer un script avec les paramètres "temp_cpu1" et "temp_cpu2" .... mais c'est de la pêche à la ligne. On ne ferait que tenter de deviner. Pas top ! Idem pour le disque et le Wifi, comment connaitre le noms interne des paramètres ? Je vais regarder s' il n'y a pas moyen d'avoir une requete d'interrogation qui remonterait la liste des paramètres accessibles ... Je vais tester cela avec un script dédié. Si ca fonctionne, je te passerai la main. A suivre. 0 Citer
bruno78 Posté(e) le 23 septembre 2020 Auteur Posté(e) le 23 septembre 2020 @Jeff777 bonjour Jeff777, ça avance ! Pour en avoir le cœur net, j'ai pris une trace entre l'application Freebox-OS sur un PC et la Freebox => c'est bien la version V8 de l'API qui est utilisée ! Donc il n'y a pas à tortiller, c'est celle là qu'il faut arriver à faire fonctionner. En modifiant le script Python, j'ai commencé à récupérer les nouvelles structures de données V8. Certaines (beaucoup) n'ont pas bougé, mais d'autres sont nouvelles ou ont évolué (comme par exemple et au hasard les capteurs de température, le disque dur, .... ) . C'est un peu long et fastidieux, mais je pense que l'on va progresser. Dés que j'ai quelque chose d'un peu abouti, je te le transmets. Bruno78 1 Citer
Jeff777 Posté(e) le 27 septembre 2020 Posté(e) le 27 septembre 2020 Bonjour @bruno78 Hier j'ai fait quelques essais sur mon dashboard freebox et ce matin je n'ai plus aucune donnée. Je suis revenu à la config avant les essais et impossible d'obtenir quoique ce soit. J'ai l'erreur suivante dans telegraf, même après avoir supprimé tous les arguments de la commande python : Une idée ? 0 Citer
bruno78 Posté(e) le 27 septembre 2020 Auteur Posté(e) le 27 septembre 2020 Bonjour @Jeff777, sans argument, le script va quand même chercher les paramètres "box". Si dans le même temps tu fais l'essai avec "-h" (affichage du help SANS aller chercher quoi que ce soit sur la box) et que là ça fonctionne, alors je suggère de vérifier l'authentification de l'appli sur la box. Le fichier ".credentials" est'il toujours présent dans /usr/local/py ? Pour info, j'ai presque terminé une version "059" entièrement basée sur l'api V8. En fait c'est terminé, mais je n'ai pas fini les tests .... Je pense que pour la POP tu retrouveras (presque ?) tous les paramètres manquants .... mais je ne serais pas en mesure de tester sur une POP avant de le livrer .... Je ne pourrai que guarantir que c'est bon sur une Révolution. Et effectivement, certains paramètres ont changé de localisation entre la V4 et la V8 ..... Cdt Bruno78 0 Citer
Jeff777 Posté(e) le 27 septembre 2020 Posté(e) le 27 septembre 2020 Je viens de voir ta réponse. Effectivement GrafanaMonitor dit dernier accès hier soir vers 23h. Je vais confirmer avec -h et si cela fonctionne refaire le tuto pour grafanomonitor. Le fichier .credentials est toujours présent. Si tu veux que je teste le 059 je suis volontaire 😃 0 Citer
bruno78 Posté(e) le 27 septembre 2020 Auteur Posté(e) le 27 septembre 2020 @Jeff777, pour le 059, tous les essais sont OK depuis le shell fbx_telegraf, en lançant les commandes python à la main. Il me reste à vérifier que l'intégration dans un dashboard est également OK et qu'il n'y a pas d'effet de bord. D'ici 1 jour ou 2 ce devrait être OK. 0 Citer
Jeff777 Posté(e) le 27 septembre 2020 Posté(e) le 27 septembre 2020 (modifié) J'ai cela dans le log de telegraf : Modifié le 27 septembre 2020 par Jeff777 0 Citer
bruno78 Posté(e) le 27 septembre 2020 Auteur Posté(e) le 27 septembre 2020 (modifié) @Jeff777, ok pardon je n'ai pas été précis. Il ne faut pas le lancer depuis le script telegraf. Il faut se connecter sur le docker freebox_telegraf, et lancer la commande à la main. depuis un terminal en ssh sur le nas root@ds918blam:~# docker exec -it fbx_telegraf /bin/bash root@fbx_telegraf:/# cd /usr/local/py root@fbx_telegraf:/usr/local/py# python3 freebox_058.py -h usage: freebox_058.py [-h] [-s] [-r] [-n app_name] [-i app_id] [-d device_name] [-f format] [-e endpoint] [-S] [-P] [-H] [-D] [-L] [-W] [-I] [-X] optional arguments: -h, --help show this help message and exit -s, --register-status Get register status -r, --register Register app with Freebox API -n app_name, --appname app_name Register with app_name -i app_id, --appid app_id Register with app_id -d device_name, --devicename device_name Register with device_name -f format, --format format Specify output format between graphite and influxdb -e endpoint, --endpoint endpoint Specify endpoint name or address -S, --status-switch Get and show switch status -P, --status-ports Get and show switch ports stats -H, --status-sys Get and show system status -D, --internal-disk-usage Get and show internal disk usage -L, --lan-config Get and show LAN config -W, --wifi-usage Get and show wifi usage -I, --lan-interfaces Get and show lan interfaces -X, --interfaces-hosts Get and show interfaces hosts root@fbx_telegraf:/usr/local/py# Ceci dit, l'erreur que tu as, montre qu'il n'y a pas de timeout, mais simplement que le résultat du "-h" n'est pas au format attendu par influxdb, ce qui est normal. Donc c'est bien la communication avec le freebox qui est cassée. Je pense donc qu'il faut vérifier l'association de l'appli avec la freebox, et le cas échéant la refaire. Cdt Bruno78 Modifié le 27 septembre 2020 par bruno78 0 Citer
Jeff777 Posté(e) le 27 septembre 2020 Posté(e) le 27 septembre 2020 il y a 1 minute, bruno78 a dit : ok pardon je n'ai pas été précis. et moi pas trop malin🙄 0 Citer
Jeff777 Posté(e) le 27 septembre 2020 Posté(e) le 27 septembre 2020 (modifié) Pas brillant. La réassociation avec grafanamonitor ne fonctionne pas 😒 Pour être sûr que je n'avais pas d'erreur dans telegraf.conf j'ai restauré le fichier telegraf de la semaine passée. Et j'ai toujours ceci : root@telegraf:/usr/local/py# python3 freebox_058.py -r Doing registration Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/urllib3/connection.py", line 160, in _new_conn (self._dns_host, self.port), self.timeout, **extra_kw File "/usr/local/lib/python3.7/dist-packages/urllib3/util/connection.py", line 61, in create_connection for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM): File "/usr/lib/python3.7/socket.py", line 748, in getaddrinfo for res in _socket.getaddrinfo(host, port, family, type, proto, flags): socket.gaierror: [Errno -3] Temporary failure in name resolution During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py", line 677, in urlopen chunked=chunked, File "/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py", line 392, in _make_request conn.request(method, url, **httplib_request_kw) File "/usr/lib/python3.7/http/client.py", line 1244, in request self._send_request(method, url, body, headers, encode_chunked) File "/usr/lib/python3.7/http/client.py", line 1290, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File "/usr/lib/python3.7/http/client.py", line 1239, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File "/usr/lib/python3.7/http/client.py", line 1026, in _send_output self.send(msg) File "/usr/lib/python3.7/http/client.py", line 966, in send self.connect() File "/usr/local/lib/python3.7/dist-packages/urllib3/connection.py", line 187, in connect etc................................ EDIT la bonne nouvelle c'est que les autres dashboards fonctionnent toujours bien. Il n'y aurait pas un pb de python version 3.7 ou 3??? Modifié le 27 septembre 2020 par Jeff777 0 Citer
bruno78 Posté(e) le 27 septembre 2020 Auteur Posté(e) le 27 septembre 2020 🙄 je suis aussi en python 3.7.3 root@ds918blam:~# docker exec -it fbx_telegraf /bin/bash root@fbx_telegraf:/# python3 -V Python 3.7.3 root@fbx_telegraf:/# root@fbx_telegraf:/usr/local/py# python3 freebox_058.py -r Already registered, exiting root@fbx_telegraf:/usr/local/py# il y a une heure, Jeff777 a dit : File "/usr/lib/python3.7/socket.py", line 748, in getaddrinfo for res in _socket.getaddrinfo(host, port, family, type, proto, flags): socket.gaierror: [Errno -3] Temporary failure in name resolution c'est normal ça ??? "temporary failure in name resolution" As-tu recréé le docker fbx_telegraf de zéro ? et re-installé python ? tu es toujours avec la version telegraf:latest ? je suis en telegraf:latest, ce qui me donne une version 1.15.2. Mais je vois sur DockerHub qu'il y a une 1.15.3 ... ? pas testée de mon côté. 0 Citer
Jeff777 Posté(e) le 27 septembre 2020 Posté(e) le 27 septembre 2020 Ah désolé. La sauvegarde de la semaine dernière ne contenait pas les corrections que j'avais faites avec Shad. Après correction ça marche. Merci de ton aide et j'attends le 059 😃 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.