Monitoraggio con InfluxDB e Grafana - EnergeticAmbiente.it

annuncio

Comprimi
Ancora nessun annuncio.

Monitoraggio con InfluxDB e Grafana

Comprimi
X
 
  • Filtro
  • Ora
  • Visualizza
Elimina tutto
nuovi messaggi

  • Originariamente inviato da frezeen Visualizza il messaggio
    stepsolar scusami ma queste 2 voci che ho evidenziato, cosa sono esattamente? hanno lo stesso titolo: massima potenza istantanea
    Scusa se rispondo adesso... Adesso non ricordo perchè ho cambiato dash ti allego la nuova dash che è composta da 4 dash noterai in alto a destra i tasti che ti portano sulle altre dash ma devono essere tutte e 4 inserite naturalmente non sono ancora pronte...

    https://github.com/stepsolar/Solaredge-3.0

    Commenta


    • Originariamente inviato da frezeen Visualizza il messaggio
      in docker, questo lo stack:

      il # sul volume config serve, poi se vuoi conservare anche la configurazione , va settato dopo

      al posto di $PWD metti la path dove vuoi salvare i dati
      non sono riuscito ad installare influx v2 sulla makkina virtuale quindi ho installato un'altra immagg. su un'altro raspberry ho inserito docker ma non riesco ad installare influx v2 sapete come farlo? quale sono i passaggi (io non sono un esperto) grazie

      Commenta


      • riesco ad installare influxdb:1.8.10 ma non la v2 ecco come faccio io:

        Codice PHP:
        pi@raspberrypi:~ $ docker run --p 8086:8086 influxdb:1.8.10
        Unable to find image 
        'influxdb:1.8.10' locally
        1.8.10
        Pulling from library/influxdb
        b3fe5664b6df
        Pull complete
        1f7eacd3cabb
        Pull complete
        ce9d987bc3d4
        Pull complete
        e4b971858d80
        Pull complete
        45116cd44897
        Pull complete
        4dbfe6b65362
        Pull complete
        aa732ee042c0
        Pull complete
        89a979d8cbce
        Pull complete
        Digest
        sha256:b20a93f968abb071c040b999cf91e7a1628197338c8 2457b9eabca215ffb951d
        Status
        Downloaded newer image for influxdb:1.8.10
        8388a77a461fe32df3dd1672d761d02dad8b547f5640df9573 34f9d82ed79a8d
        pi
        @raspberrypi:~ $ docker ps
        CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
        8388a77a461f influxdb
        :1.8.10 "/entrypoint.sh infl…" 5 minutes ago Up 5 minutes 0.0.0.0:8086->8086/tcp, :::8086->8086/tcp youthful_babbage
        6aa5ccfad8e7 grafana
        /grafana "/run.sh" About an hour ago Up About an hour 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp grafana
        420aaf179fb1 portainer
        /portainer-ce "/portainer" 2 hours ago Up 2 hours 8000/tcp9443/tcp0.0.0.0:9000->9000/tcp, :::9000->9000/tcp portainer
        pi
        @raspberrypi:~ $ docker exec -it youthful_babbage /bin/bash
        root
        @8388a77a461f:/# influx
        Connected to http://localhost:8086 version 1.8.10
        InfluxDB shell version1.8.10
        show databases
        name
        databases
        name
        ----
        _internal 

        Commenta


        • ho visto che hai installato anche portainer sulla 9000, aprilo, vai in stack, clicca "add stack" e incolla quello che ho postato poco sopra, dai un nome qualsiasi allo stack e clicca "deploy stack"
          ti ritrovi la v2 installata e funzionante

          la v2 non crei il database da cli, ma ha interfaccia web sulla porta 8086, da li crei un database (bucket)

          ora sono a lavoro, verso le 20,30 ti posto lo stack che installa tutto in uno inlufxdb e grafana (e anche il container che mi sono fatto io per grabbare dall'inverter e meter che a te non serve, lo fermi e lo cancelli)

          Commenta


          • ecco lo stack da aggiungere in portainer. le variabili da modificare sono:
            $PWD = path sull'host dove salvare i dati, le altre sono precedute da $ e sembrano chiare

            esempio: se voglio salvare il database di influxdb in /mnt/Config/influxdb sul pc host ,edito in questo modo:

            - '$PWD:/var/lib/influxdb2'
            in

            - /mnt/Conffig/influxdb:/var/lib/influxdb2

            per rendere tutto pronto all'uso per chi come me ha inverter+meter dovrei condividere anche le mie dir in /mnt/Config "grafana" "influxdb" ma non sono ancora complete.

            ad ogni modo, stepsolar io non ho usato la 2.0 ma la 1.8 che e' l'ultima versione su base influxv1 come data source ma supporta anche flux della 2.0, se usi la 2.0 non leggera' piu' i tuoi vecchi db v1 a meno che non li converti in v2 e dopo non so se puoi tornare al formato v1
            per usare la 1.8 basta editare
            image: 'influxdb' in image: 'influxdb:1.8'

            il container docker che ho creato e' stato buildato da: nmakel/solaredge_modbus: SolarEdge Modbus data collection library (github.com)
            questo , per i cuorisi e' il Dockerfile che ho usato:

            FROM python:slim

            RUN apt update
            RUN apt upgrade -y
            RUN apt install -y git
            RUN git clone https://github.com/nmakel/solaredge_modbus
            RUN pip3 install solaredge_modbus
            RUN pip3 install influxdb
            RUN apt remove -y git
            RUN apt -y autoremove

            questo soft, legge tutti e dico tutti i registri dall'inverter+meter+ eventuali battierie e li manda a influxdb in formato v1. ho scritto al maintener se potesse aggiornarlo con supporto alla v2
            nel tuo caso speecifico fa il lavoro che per te sta facendo solargeizer visto che lo usi per leggere i dati dall'inverter
            File allegati
            Ultima modifica di frezeen; 12-10-2021, 20:04.

            Commenta


            • ho appena visto le dash.. che dire: ti adoro!!

              Commenta


              • Originariamente inviato da frezeen Visualizza il messaggio
                ecco lo stack da aggiungere in portainer. le variabili da modificare sono:
                $PWD = path sull'host dove salvare i dati, le altre sono precedute da $ e sembrano chiare

                esempio: se voglio salvare il database di influxdb in /mnt/Config/influxdb sul pc host ,edito in questo modo:

                - '$PWD:/var/lib/influxdb2'
                in

                - /mnt/Conffig/influxdb:/var/lib/influxdb2

                per rendere tutto pronto all'uso per chi come me ha inverter+meter dovrei condividere anche le mie dir in /mnt/Config "grafana" "influxdb" ma non sono ancora complete.

                ad ogni modo, stepsolar io non ho usato la 2.0 ma la 1.8 che e' l'ultima versione su base influxv1 come data source ma supporta anche flux della 2.0, se usi la 2.0 non leggera' piu' i tuoi vecchi db v1 a meno che non li converti in v2 e dopo non so se puoi tornare al formato v1
                per usare la 1.8 basta editare
                image: 'influxdb' in image: 'influxdb:1.8'

                il container docker che ho creato e' stato buildato da: nmakel/solaredge_modbus: SolarEdge Modbus data collection library (github.com)
                questo , per i cuorisi e' il Dockerfile che ho usato:

                FROM python:slim

                RUN apt update
                RUN apt upgrade -y
                RUN apt install -y git
                RUN git clone https://github.com/nmakel/solaredge_modbus
                RUN pip3 install solaredge_modbus
                RUN pip3 install influxdb
                RUN apt remove -y git
                RUN apt -y autoremove

                questo soft, legge tutti e dico tutti i registri dall'inverter+meter+ eventuali battierie e li manda a influxdb in formato v1. ho scritto al maintener se potesse aggiornarlo con supporto alla v2
                nel tuo caso speecifico fa il lavoro che per te sta facendo solargeizer visto che lo usi per leggere i dati dall'inverter
                scusami ma non sono tanto esperto come te.... ma ho installato una img sul raspberry con SO a 64bit ho installato di nuovo docker e ho eseguito questo


                docker run -p 8086:8086 \ -v $PWD:/var/lib/influxdb2 \ influxdb:2.0

                adesso è partito...

                Commenta


                • mi ritrovo questo è corretto?


                  pi@raspberrypi:~ $ docker ps -a
                  CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
                  a5311b8c6b0f influxdb:2.0 "/entrypoint.sh infl…" 12 minutes ago Exited (2) 23 seconds ago upbeat_panini
                  c177fa7c49b3 grafana/grafana "/run.sh" 47 minutes ago Up 46 minutes 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp grafana
                  8141bcd0ec81 portainer/portainer-ce "/portainer" 51 minutes ago Up 50 minutes 0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp, 9443/tcp portainer

                  Commenta


                  • si e' giusto.in docker puoi creare cointaner in 2 modi.con il comando run come hai fatto tu, ma ogni volta che vuoi cambiare qualsaisi cosa, devi ridare il comando, oppure con uno "stack" come ho fatto io. sedevi cambiare qualcosa, vai a modificare lo stack in formato testo, molto piu' comodo. portainer inveceche tu hai sulla porta 9000 e' una UI per docker. rende l'uso di docker molto ma molto piu' semplice rispetto alla riga di comando.
                    docker-compose Converter (bucherfa.github.io)
                    questo e' un convertitore da RUN a STACK
                    se ci metti dentro il tuo run ottieni questo:
                    version: '3'
                    services:
                    influxdb:
                    image: 'influxdb:2.0'
                    volumes:
                    - '$PWD:/var/lib/influxdb2'
                    ports:
                    - '8086:8086'

                    guarda gli allegati di portainer, sezione "stack" ci carichi i txt e da li puoi modificare e poi eseguirli dalla UI
                    File allegati

                    Commenta


                    • Originariamente inviato da frezeen Visualizza il messaggio
                      si e' giusto.in docker puoi creare cointaner in 2 modi.con il comando run come hai fatto tu, ma ogni volta che vuoi cambiare qualsaisi cosa, devi ridare il comando, oppure con uno "stack" come ho fatto io. sedevi cambiare qualcosa, vai a modificare lo stack in formato testo, molto piu' comodo. portainer inveceche tu hai sulla porta 9000 e' una UI per docker. rende l'uso di docker molto ma molto piu' semplice rispetto alla riga di comando.
                      docker-compose Converter (bucherfa.github.io)
                      questo e' un convertitore da RUN a STACK
                      se ci metti dentro il tuo run ottieni questo:
                      version: '3'
                      services:
                      influxdb:
                      image: 'influxdb:2.0'
                      volumes:
                      - '$PWD:/var/lib/influxdb2'
                      ports:
                      - '8086:8086'

                      guarda gli allegati di portainer, sezione "stack" ci carichi i txt e da li puoi modificare e poi eseguirli dalla UI
                      sto iniziando a capire qualcosa, ma adesso mi sono bloccato non riesco ad inserire la configurazione per telegraf esattamente i file

                      /etc/telegraf/telegraf.d/solaredge_modbus.conf

                      solarEdgeCloudScraper.py

                      non ho capito come e dove inserirli

                      facendo l'accesso a influx tramite link http://192.0.0.1:8086 pensavo che da questa interfaccia sarebbe stato più semplice ma in realta non sapendo cosa fare diventa difficile ammeno per me

                      Commenta


                      • oggi alle 13,30 vado a casa, ti posto lo stack di telegraf con la configurazione gia' pronta verso influxdb

                        il file di conf andrebbe editato all'interno del container. i container molto simili a delle VM, docker viene incontro perche' puo' creare un link di una cartella all'interno del container verso una sull'host.. sono i famosi -v che vedi begli stack o che dai con il run

                        ad ogni modo, se vuoi intanto provare... da portainer, nella sezione container, vicino a quello di telegraf vedi 4 iconcine.. la prima del log ecc ecc. ce n'e' una con il simbolo >_, se lo premi accedi alla shell del container e da li puoi modificare il file
                        , anche se dubito che dentro telegraf ci sia un editor di testo. magari lo devi scaricare con apt update e poi apt install nano


                        stepsolar allora, crea una cartella su host (VM o rapsberry):
                        nel mio caso tipo: /mnt/Config/telegraf
                        in questa cartella crea un nuovo file di testo con notepad++ o notepad, assolutmente non usare word o winword e incollaci il contenuto solaredge_modbus.conf editando quello che serve nel tuo caso. salva il file con il nome di telegraf.conf
                        usa lo stack che ti allego per creare il container cambiando $PWD con la path della dir che hai creato (/mnt/Config/telegraf)
                        copia il file .py nella dir sulla macchina host (VM o raspberry) e rendilo eseguibile (io uso winscp per queste cose), nel mio caso in: /mnt/Config/telegraf

                        c'e' anche questo: Install the Python packages: python-requests, python-pytz

                        come si fa? semplice, ti ricordi il >- per accedere alla shell di un contaier? clicca su quello di telegraf, entra in shell e dai questi comandi:
                        apt update
                        apt install -y python-requests python-pytz

                        calcola che queste installazioni supplementari, se dovessi cancellare il container e rifarlo le perdi, mentre invece le configurazioni, visto che non sono nel container ma sono linkate ad una dir sulla macchina host, non le perdi, restano anche se dovessi cancellare e rifare il container.

                        per non perdere anche le installazioni e non solo le configurazioni, devi salvarti il container aggiornato e quando lo devi installare, devi usare la tua immagine aggiornata e non quella che prendi da internet, ma questo e' un po' piu' complicato perche' ti perderesti gli aggiornamenti ufficiali del container se fai semplicemente cosi'.il cosniglio e': se serve cancellare e rifare container ricorda di reinstallare python ogni volta
                        File allegati
                        Ultima modifica di frezeen; 13-10-2021, 13:37.

                        Commenta


                        • Originariamente inviato da frezeen Visualizza il messaggio
                          oggi alle 13,30 vado a casa, ti posto lo stack di telegraf con la configurazione gia' pronta verso influxdb

                          il file di conf andrebbe editato all'interno del container. i container molto simili a delle VM, docker viene incontro perche' puo' creare un link di una cartella all'interno del container verso una sull'host.. sono i famosi -v che vedi begli stack o che dai con il run

                          ad ogni modo, se vuoi intanto provare... da portainer, nella sezione container, vicino a quello di telegraf vedi 4 iconcine.. la prima del log ecc ecc. ce n'e' una con il simbolo >_, se lo premi accedi alla shell del container e da li puoi modificare il file
                          , anche se dubito che dentro telegraf ci sia un editor di testo. magari lo devi scaricare con apt update e poi apt install nano


                          stepsolar allora, crea una cartella su host (VM o rapsberry):
                          nel mio caso tipo: /mnt/Config/telegraf
                          in questa cartella crea un nuovo file di testo con notepad++ o notepad, assolutmente non usare word o winword e incollaci il contenuto solaredge_modbus.conf editando quello che serve nel tuo caso. salva il file con il nome di telegraf.conf
                          usa lo stack che ti allego per creare il container cambiando $PWD con la path della dir che hai creato (/mnt/Config/telegraf)
                          copia il file .py nella dir sulla macchina host (VM o raspberry) e rendilo eseguibile (io uso winscp per queste cose), nel mio caso in: /mnt/Config/telegraf

                          c'e' anche questo: Install the Python packages: python-requests, python-pytz

                          come si fa? semplice, ti ricordi il >- per accedere alla shell di un contaier? clicca su quello di telegraf, entra in shell e dai questi comandi:
                          apt update
                          apt install -y python-requests python-pytz

                          calcola che queste installazioni supplementari, se dovessi cancellare il container e rifarlo le perdi, mentre invece le configurazioni, visto che non sono nel container ma sono linkate ad una dir sulla macchina host, non le perdi, restano anche se dovessi cancellare e rifare il container.

                          per non perdere anche le installazioni e non solo le configurazioni, devi salvarti il container aggiornato e quando lo devi installare, devi usare la tua immagine aggiornata e non quella che prendi da internet, ma questo e' un po' piu' complicato perche' ti perderesti gli aggiornamenti ufficiali del container se fai semplicemente cosi'.il cosniglio e': se serve cancellare e rifare container ricorda di reinstallare python ogni volta
                          scusami ma sono proprio ignorante non lo mai fatto, quindi ti pongo le seguenti domande:

                          come faccio a creare una cartella su host? ce un comando specifico con docker?

                          copia il file .py nella dir sulla macchina host - va bene nella cartella pi?

                          la mia cartella mnt è vuota..

                          Commenta


                          • la veloce: vai nella path dove vuoi creare la cartella da shell e dai: mkdir (nome cartella) per creare la directory
                            la migliore: installa winscp e crea una connessione verso il raspberry. e' un file manager con diversi protocolli

                            il file .py lo puoi mettere dove vuoi sul raspberry
                            io per comodita', ho una cartella config, dentro mnt, dove mi savo tutte le configurazioni di tutti i miei container
                            naturalmente nello stack gli devi dire dove l'hai messo.

                            esempio: sul rasp creo /cartella1/cartella2/file.py
                            nello stack corrego in :-v /cartella1/cartella2:/var/lib/telegraf'

                            questo comando cosa fa esattamente? fa in modo che la cartella nel container /var/lib/telegraf sia linkata alla cartella sul raspeberry /cartella1/cartella2/.
                            insomma quello che metti in /cartella1/cartella2/ sul raspeberry te lo ritrovi in /var/lib/telegraf nel container e viceversa
                            viene usato principalmente per svincolare i dati di un container dal cointaer stesso. ad esempio il dtaabase di inluxdb dal container. se cancello il container i dati mi restano

                            Commenta


                            • Ok adesso credo di aver capito.. Non avevo mai usato docker

                              In realtà da un precedente comando si era creato automaticamente il file telegraf.conf nella cartella home/pi quindi se modifico quello si modifica anche quello nella macchina virtuale in docker.

                              Spero di completare

                              Commenta


                              • Originariamente inviato da frezeen Visualizza il messaggio
                                la veloce: vai nella path dove vuoi creare la cartella da shell e dai: mkdir (nome cartella) per creare la directory
                                la migliore: installa winscp e crea una connessione verso il raspberry. e' un file manager con diversi protocolli

                                il file .py lo puoi mettere dove vuoi sul raspberry
                                io per comodita', ho una cartella config, dentro mnt, dove mi savo tutte le configurazioni di tutti i miei container
                                naturalmente nello stack gli devi dire dove l'hai messo.

                                esempio: sul rasp creo /cartella1/cartella2/file.py
                                nello stack corrego in :-v /cartella1/cartella2:/var/lib/telegraf'

                                questo comando cosa fa esattamente? fa in modo che la cartella nel container /var/lib/telegraf sia linkata alla cartella sul raspeberry /cartella1/cartella2/.
                                insomma quello che metti in /cartella1/cartella2/ sul raspeberry te lo ritrovi in /var/lib/telegraf nel container e viceversa
                                viene usato principalmente per svincolare i dati di un container dal cointaer stesso. ad esempio il dtaabase di inluxdb dal container. se cancello il container i dati mi restano
                                ciao, i da il seguente errore dove sbaglio?

                                root@69a496773e1c:/# telegraf -config /etc/telegraf/telegraf.d/solaredge_cloud.conf -test
                                2021-10-14T19:31:25Z I! Starting Telegraf 1.20.2
                                2021-10-14T19:31:25Z I! [inputs.execd] Starting process: /var/lib/telegraf/solarEdgeCloudScraper.py []
                                2021-10-14T19:31:25Z E! [inputs.execd] stderr: "Traceback (most recent call last):"
                                2021-10-14T19:31:25Z E! [inputs.execd] stderr: " File "/var/lib/telegraf/solarEdgeCloudScraper.py", line 12, in <module>"
                                2021-10-14T19:31:25Z E! [inputs.execd] stderr: " import requests"
                                2021-10-14T19:31:25Z E! [inputs.execd] stderr: "ModuleNotFoundError: No module named 'requests'"
                                2021-10-14T19:31:25Z I! [inputs.execd] Process /var/lib/telegraf/solarEdgeCloudScraper.py shut down
                                2021-10-14T19:31:25Z E! [telegraf] Error running agent: input plugins recorded 4 errors
                                root@69a496773e1c:/#


                                ps. pian piano sto capendo e imparando

                                Commenta


                                • probabile che non hai installato questo? python-requests, python-pytz

                                  se e' cosi', entra nella shell di telegraf e dai: apt update && apt install -y python-requests python-pytz

                                  Commenta


                                  • Originariamente inviato da frezeen Visualizza il messaggio
                                    probabile che non hai installato questo? python-requests, python-pytz

                                    se e' cosi', entra nella shell di telegraf e dai: apt update && apt install -y python-requests python-pytz
                                    lo fatto ecco il risultato

                                    codice:
                                    root@ef6ffd833463:/# apt update && apt install -y python-requests python-pytz
                                    Hit:1 http://security.debian.org/debian-security buster/updates InRelease
                                    Hit:2 http://deb.debian.org/debian buster InRelease
                                    Hit:3 http://deb.debian.org/debian buster-updates InRelease
                                    Reading package lists... Done
                                    Building dependency tree
                                    Reading state information... Done
                                    All packages are up to date.
                                    Reading package lists... Done
                                    Building dependency tree
                                    Reading state information... Done
                                    E: Unable to locate package python-pytz
                                    codice:
                                    root@ef6ffd833463:/# apt update && apt install -y python-requests python-pytz
                                    Hit:1 http://security.debian.org/debian-security buster/updates InRelease
                                    Hit:2 http://deb.debian.org/debian buster InRelease
                                    Hit:3 http://deb.debian.org/debian buster-updates InRelease
                                    Reading package lists... Done
                                    Building dependency tree
                                    Reading state information... Done
                                    All packages are up to date.
                                    Reading package lists... Done
                                    Building dependency tree
                                    Reading state information... Done
                                    E: Unable to locate package python-pytz
                                    root@ef6ffd833463:/# telegraf -config /etc/telegraf/telegraf.d/solaredge_cloud.conf -test
                                    2021-10-15T17:39:42Z I! Starting Telegraf 1.20.2
                                    2021-10-15T17:39:42Z I! [inputs.execd] Starting process: /var/lib/telegraf/solarEdgeCloudScraper.py []
                                    2021-10-15T17:39:42Z E! [inputs.execd] stderr: "Traceback (most recent call last):"
                                    2021-10-15T17:39:42Z E! [inputs.execd] stderr: " File \"/var/lib/telegraf/solarEdgeCloudScraper.py\", line 12, in <module>"
                                    2021-10-15T17:39:42Z E! [inputs.execd] stderr: " import requests"
                                    2021-10-15T17:39:42Z E! [inputs.execd] stderr: "ModuleNotFoundError: No module named 'requests'"
                                    2021-10-15T17:39:42Z I! [inputs.execd] Process /var/lib/telegraf/solarEdgeCloudScraper.py shut down
                                    2021-10-15T17:39:42Z E! [telegraf] Error running agent: input plugins recorded 4 errors
                                    root@ef6ffd833463:/#
                                    Ultima modifica di stepsolar; 15-10-2021, 18:40.

                                    Commenta


                                    • prova ad installare apt install python-pip
                                      e poi dai pip install python-pytz oppure pip install pytz e se va lancia anche pip install requests peerche' ti manca anche quello
                                      Ultima modifica di frezeen; 15-10-2021, 19:01.

                                      Commenta


                                      • Originariamente inviato da frezeen Visualizza il messaggio
                                        prova ad installare apt install python-pip
                                        e poi dai pip install python-pytz oppure pip install pytz e se va lancia anche pip install requests peerche' ti manca anche quello
                                        ecco lo fatto, però mi ha dato anche un errore sul seguente comando pip install python-pytz, e quando faccio il test mi ridà errore

                                        codice:
                                        root@ef6ffd833463:/# pip install python-pytz
                                        Collecting python-pytz
                                        Could not install packages due to an EnvironmentError: 404 Client Error: Not Found for url: https://pypi.org/simple/python-pytz/
                                        
                                        root@ef6ffd833463:/# pip install pytz
                                        Collecting pytz
                                        Downloading https://files.pythonhosted.org/packages/d3/e3/d9f046b5d1c94a3aeab15f1f867aa414f8ee9d196fae6865f1 d6a0ee1a0b/pytz-2021.3-py2.py3-none-any.whl (503kB)
                                        100% |################################| 512kB 848kB/s
                                        Installing collected packages: pytz
                                        Successfully installed pytz-2021.3
                                        root@ef6ffd833463:/# pip install requests
                                        Collecting requests
                                        Downloading https://files.pythonhosted.org/packages/92/96/144f70b972a9c0eabbd4391ef93ccd49d0f2747f4f6a2a2738 e99e5adc65/requests-2.26.0-py2.py3-none-any.whl (62kB)
                                        100% |################################| 71kB 1.4MB/s
                                        Collecting idna<3,>=2.5; python_version < "3" (from requests)
                                        Downloading https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa 9460f3a8a8/idna-2.10-py2.py3-none-any.whl (58kB)
                                        100% |################################| 61kB 2.4MB/s
                                        Collecting urllib3<1.27,>=1.21.1 (from requests)
                                        Downloading https://files.pythonhosted.org/packages/af/f4/524415c0744552cce7d8bf3669af78e8a069514405ea4fcbd0 cc44733744/urllib3-1.26.7-py2.py3-none-any.whl (138kB)
                                        100% |################################| 143kB 2.0MB/s
                                        Collecting certifi>=2017.4.17 (from requests)
                                        Downloading https://files.pythonhosted.org/packages/37/45/946c02767aabb873146011e665728b680884cd8fe70dde973c 640e45b775/certifi-2021.10.8-py2.py3-none-any.whl (149kB)
                                        100% |################################| 153kB 1.9MB/s
                                        Collecting chardet<5,>=3.0.2; python_version < "3" (from requests)
                                        Downloading https://files.pythonhosted.org/packages/19/c7/fa589626997dd07bd87d9269342ccb74b1720384a4d739a187 2bd84fbe68/chardet-4.0.0-py2.py3-none-any.whl (178kB)
                                        100% |################################| 184kB 1.7MB/s
                                        Installing collected packages: idna, urllib3, certifi, chardet, requests
                                        Successfully installed certifi-2021.10.8 chardet-4.0.0 idna-2.10 requests-2.26.0 urllib3-1.26.7
                                        root@ef6ffd833463:/#
                                        root@ef6ffd833463:/# telegraf -config /etc/telegraf/telegraf.d/solaredge_cloud.conf -test
                                        2021-10-15T18:34:38Z I! Starting Telegraf 1.20.2
                                        2021-10-15T18:34:38Z I! [inputs.execd] Starting process: /var/lib/telegraf/solarEdgeCloudScraper.py []
                                        2021-10-15T18:34:38Z E! [inputs.execd] stderr: "Traceback (most recent call last):"
                                        2021-10-15T18:34:38Z E! [inputs.execd] stderr: " File \"/var/lib/telegraf/solarEdgeCloudScraper.py\", line 12, in <module>"
                                        2021-10-15T18:34:38Z E! [inputs.execd] stderr: " import requests"
                                        2021-10-15T18:34:38Z E! [inputs.execd] stderr: "ModuleNotFoundError: No module named 'requests'"
                                        2021-10-15T18:34:38Z I! [inputs.execd] Process /var/lib/telegraf/solarEdgeCloudScraper.py shut down
                                        2021-10-15T18:34:38Z E! [telegraf] Error running agent: input plugins recorded 4 errors
                                        root@ef6ffd833463:/#

                                        ho fatto anche questo non so se serva a qualcosa

                                        codice:
                                        root@ef6ffd833463:/var/lib/telegraf# python3 solarEdgeCloudScraper.py
                                        Traceback (most recent call last):
                                        File "solarEdgeCloudScraper.py", line 12, in <module>
                                        import requests
                                        ModuleNotFoundError: No module named 'requests'
                                        Ultima modifica di stepsolar; 15-10-2021, 20:19.

                                        Commenta


                                        • È molto strano perché con Pip il modulo lo ha installato. Oggi pomeriggio ho tempo e provo, ti aggiorno più tardi.

                                          L'errore è che non trova requests

                                          Commenta


                                          • Originariamente inviato da frezeen Visualizza il messaggio
                                            È molto strano perché con Pip il modulo lo ha installato. Oggi pomeriggio ho tempo e provo, ti aggiorno più tardi.

                                            L'errore è che non trova requests
                                            ho capito che dovevo fare questo ma continuo ad avere errori

                                            codice:
                                            apt-get install python3
                                            apt install python3-pip
                                            python3 -m pip install requests
                                            python3 -m pip install pytz
                                            ecco l'errore di adesso

                                            codice:
                                            root@908eaa53a39f:/# telegraf -config /etc/telegraf/telegraf.d/solaredge_cloud.conf -test
                                            2021-10-16T10:09:48Z I! Starting Telegraf 1.20.2
                                            2021-10-16T10:09:48Z I! [inputs.execd] Starting process: /var/lib/telegraf/solarEdgeCloudScraper.py []
                                            2021-10-16T10:09:48Z E! [inputs.execd] stderr: "Traceback (most recent call last):"
                                            2021-10-16T10:09:48Z E! [inputs.execd] stderr: " File \"/var/lib/telegraf/solarEdgeCloudScraper.py\", line 539, in <module>"
                                            2021-10-16T10:09:48Z E! [inputs.execd] stderr: " if not initialize_installation_info():"
                                            2021-10-16T10:09:48Z E! [inputs.execd] stderr: " File \"/var/lib/telegraf/solarEdgeCloudScraper.py\", line 198, in initialize_installation_info"
                                            2021-10-16T10:09:48Z E! [inputs.execd] stderr: " SITES = ','.join(SITE_IDS)"
                                            2021-10-16T10:09:48Z E! [inputs.execd] stderr: "TypeError: sequence item 0: expected str instance, int found"
                                            2021-10-16T10:09:48Z I! [inputs.execd] Process /var/lib/telegraf/solarEdgeCloudScraper.py shut down
                                            2021-10-16T10:09:48Z E! [telegraf] Error running agent: input plugins recorded 6 errors
                                            questa la pip3 list
                                            codice:
                                            root@908eaa53a39f:/# pip3 list
                                            Package Version
                                            ------------------ ---------
                                            asn1crypto 0.24.0
                                            certifi 2021.10.8
                                            charset-normalizer 2.0.7
                                            cryptography 2.6.1
                                            entrypoints 0.3
                                            idna 3.3
                                            keyring 17.1.1
                                            keyrings.alt 3.1.1
                                            pip 18.1
                                            pycrypto 2.6.1
                                            PyGObject 3.30.4
                                            pytz 2021.3
                                            pyxdg 0.25
                                            requests 2.26.0
                                            SecretStorage 2.3.1
                                            setuptools 40.8.0
                                            six 1.12.0
                                            urllib3 1.26.7
                                            wheel 0.32.3
                                            root@908eaa53a39f:/#
                                            Ultima modifica di stepsolar; 16-10-2021, 11:21.

                                            Commenta


                                            • in attesa delle tue dashboard questo e' quello che ho fatto fino ad ora sulla "vecchia" tua

                                              https://ibb.co/rpwVdxM

                                              non ho capito nei grafici dell'anno come faccio a non far uscire una barra ogni 24 ore ma una singola barra da 1 anno
                                              File allegati

                                              Commenta


                                              • Originariamente inviato da frezeen Visualizza il messaggio
                                                in attesa delle tue dashboard questo e' quello che ho fatto fino ad ora sulla "vecchia" tua

                                                https://ibb.co/rpwVdxM

                                                non ho capito nei grafici dell'anno come faccio a non far uscire una barra ogni 24 ore ma una singola barra da 1 anno
                                                non ho capito bene come desideri visualizzarlo, questa e la mia..

                                                Clicca sull'immagine per ingrandirla. 

Nome:   Screenshot 2021-10-16 at 18-40-31 Anno Solare - Grafana.png 
Visite: 196 
Dimensione: 36.2 KB 
ID: 2169348

                                                Commenta


                                                • Vorrei una barra singola , ad esempio per la produzione mensile, una per il consumo ecc ecc

                                                  Commenta


                                                  • Ma già è fatta così, o preferisci barre con il totale complessivo del mese con vista annuale?

                                                    Poi hai capito il mio problema? ​​​​

                                                    Commenta


                                                    • a me telegraf va avanti senza errori, ma non cattura nulla. nel tuo caso, nel file .py , domanda forse stupida, hai messo api, password e user del sito solaredge?
                                                      Codice PHP:



                                                      2021
                                                      -10-17T00:45:10Z D! [inputs.execPrevious collection has not completedscheduled collection skipped

                                                      2021
                                                      -10-17T00:45:10Z W! [inputs.execCollection took longer than expectednot complete after interval of 10s

                                                      2021
                                                      -10-17T00:45:11Z D! [outputs.influxdb_v2Buffer fullness1000000 metrics 
                                                      non so come abilitare il debug dello script per capire cosa sta succedendo, se si ferma e dove

                                                      ok, sono riuscito a farlo funzionare
                                                      log di telegraf
                                                      Codice PHP:

                                                      2021
                                                      -10-17T01:14:12Z D! [outputs.influxdbWrote batch of 1000 metrics in 24.026185ms

                                                      2021
                                                      -10-17T01:14:12Z D! [outputs.influxdbBuffer fullness11096 1000000 metrics

                                                      2021
                                                      -10-17T01:14:12Z D! [outputs.influxdbWrote batch of 1000 metrics in 22.67599ms

                                                      2021
                                                      -10-17T01:14:12Z D! [outputs.influxdbBuffer fullness10096 1000000 metrics 
                                                      Codice PHP:
                                                      version'3'
                                                      services:
                                                        
                                                      telegraf:
                                                        
                                                      imagetelegraf
                                                        container_name
                                                      Telegraf
                                                        volumes
                                                      :
                                                          - 
                                                      '/mnt/Config/Telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro'
                                                          
                                                      '/mnt/Config/Telegraf/Script:/var/lib/telegraf/'
                                                        
                                                      command: >
                                                          
                                                      sh -"apt update && apt install -y python3 python3-pip && python3 -m pip install requests pytz && telegraf"
                                                        
                                                      restartalways 
                                                      questo e' lo stack. il file .py e .conf basta modificarlo con i propri dati. modifica i volumi nello stack - '/mnt/Config/Telegraf' secondo le tue necessita.
                                                      se non dovesse andare e' solo perche' io uso linux e tu hai raspberry. ma questo non dvorebbe influire per nulla
                                                      Ultima modifica di frezeen; 17-10-2021, 13:00.

                                                      Commenta


                                                      • non ci riesco sempre errori, creeresti una img per me da inserire direttamente sulla sd così da poter testare e prelevare i dati da ogni singolo pannello.
                                                        io nel fra tempo così mi dedico alla dash..

                                                        fammi sapere

                                                        Commenta


                                                        • Attenzione, non so se ha che fare con tutti gli errori di stepsolar,ma uno dei motivi per cui a suo tempo mi aveva costretto a non migrare a Influx 2 è che le ultime versioni sono solo compatibili arm64/v8.

                                                          Su Raspberry (anche 4) il sistema operativo è a 32bit, non a 64. Per cui le immagini non vengono scaricate o scaricate quelle sbagliate.

                                                          Questo non vale per telegraf che nella versione 1.20.2 ha un docker anche arm/v7, ma tenetene conto nei vari tentavi che state facendo ultimamente ...

                                                          20*305W (ovest) + 11*460W (est) + 3*385W (sud)- Totale: 12.3Kw + Solaredge 6kw.
                                                          Monitoraggio con InfluxDB, Grafana, Docker, Raspberry | Discussione: https://bit.ly/2XAol57 | Guida completa su Github: https://bit.ly/2XTm8Sh

                                                          Commenta


                                                          • In anteprima gli aggiornamenti della nuova dash con nuovi pannelli (e nuove formule)......
                                                            Clicca sull'immagine per ingrandirla. 

Nome:   Screenshot 2021-10-17 at 11-59-57 Mese Solare - Grafana.png 
Visite: 202 
Dimensione: 53.3 KB 
ID: 2169399

                                                            Commenta


                                                            • io sono riuscito a farlo andare, per adesso ho mandato tutto a influxdbv2 e funziona, ora provo a mandare in formato influxv1 con questo telegraf.conf
                                                              Codice PHP:
                                                              [agent]
                                                              debug true
                                                              quiet 
                                                              false
                                                              metric_buffer_limit 
                                                              1000000 # Enlarge as required if you have a lot of history
                                                              omit_hostname true

                                                              [outputs.influxdb]
                                                              url "http://192.168.2.10:8086"
                                                              database "cloud"
                                                              username ""
                                                              password ""
                                                              namepass = ["power","energy","data","panel"]

                                                              # ------------------------------------------------ Inputs --------------------------------------------

                                                              [[inputs.execd]]
                                                              tagexclude = ["host"]
                                                              command = ["/var/lib/telegraf/solarEdgeCloudScraper.py"]
                                                              signal "none"
                                                              restart_delay "10m"
                                                              data_format "influx" 
                                                              il problema dello script e' che resta in attesa fino alle 24 per iniziare a fare qualcosa (ecco perche' mi sembrava che stesse andando ma che non facesse nulla).

                                                              glfp
                                                              la 1,8 di influxdb e latest telegraf supportano anche arm32v7, quindi non e' quello il suo problema influxdb Tags | Docker Hub

                                                              altra cosa, lo script prende i dati con le api, limite di 300 richieste al giorno o grabba direttamente dal sito web che non dovrebbe avere limiti di request. i dati dagli ottimizzatori non sono supportati dalle API, li prende dal sito web e li prende solo a mezzanotte. dovremmo modificarlo. e' inutile prendersi tutti i dati dal cloud perche' li abbiamo gia' in realtime, ma limitarsi a prendere solo quelli dei pannelli ogni 15m quando vengono aggiornati. non so dove ho letto che l'inverter fa un up dei dati ogni 15 min al cloud
                                                              morale ,per adesso niente real time con lo script per i pannelli e sopratutto con questo sistema puoi visualizzare solo i dati che a mezzanotte ormai diventano "del giorno precedente"
                                                              io ho l'impianto limitato in mancanza del contatore di scambio, sono gia' 15 gg che sto aspettando

                                                              Clicca sull'immagine per ingrandirla.ÃÃÃÃÃÃà  Nome:   Cattura.JPGÃÃÃÃÃÃà Visite: 0ÃÃÃÃÃÃà Dimensione: 179.6 KBÃÃÃÃÃÃà ID: 2169406

                                                              per @solarstep puoi mettere su un container con lo stack che ti ho postato e questo telegraf.conf e dirmi che errore ti esce?
                                                              compila l'output con i tuoi dati

                                                              Codice PHP:
                                                              [agent]
                                                              debug true
                                                              quiet 
                                                              false
                                                              metric_buffer_limit 
                                                              1000000 # Enlarge as required if you have a lot of history
                                                              omit_hostname true

                                                              [[outputs.influxdb_v2]]
                                                              urls = ["http://192.168.2.10:8186"]
                                                              token ""
                                                              organization ""
                                                              bucket "solaredge_cloud"

                                                              # ------------------------------------------------ Inputs --------------------------------------------

                                                              [[inputs.exec]]
                                                              command "/var/lib/telegraf/solarEdgeCloudScraper.py debug"
                                                              timeout "604800s" # 7d
                                                              data_format "influx" 
                                                              p.s.:nuova dash! grazie! davvero!!
                                                              Ultima modifica di frezeen; 17-10-2021, 13:07.

                                                              Commenta

                                                              Attendi un attimo...
                                                              X