Hulp bij problemen

Notitie

Wanneer er iets lijkt mis te gaan, volg de onderstaande stappen eerst, voordat je een issue aanmaakt. Hiermee kun je wat meer achtergrondinformatie aanleveren.

Logbestanden

Je startpunt is altijd het bekijken van de logfiles voor foutmeldingen.

DSMR-reader bestaat technisch uit deze processen (sommigen zullen wel of niet in je eigen situatie gebruikt worden) en ze worden beheerd door Supervisor:

Webinterface dsmr_webinterface
Datalogger dsmr_datalogger
Backend dsmr_backend

Elk heeft eigen logbestand(en):

Webinterface /var/log/supervisor/dsmr_webinterface.log
Datalogger /var/log/supervisor/dsmr_datalogger.log
Backend /var/log/supervisor/dsmr_backend.log

Let op

De logbestanden kunnen blijven hangen wegens rotatie. Probeer te tailen op een wildcard-patroon om alles logs van een proces te zien. Bijvoorbeeld:

sudo tail -f /var/log/supervisor/dsmr_webinterface*
sudo tail -f /var/log/supervisor/dsmr_datalogger*
sudo tail -f /var/log/supervisor/dsmr_backend*

Supervisor

Je kunt de status van alle processen bekijken door het volgende uit te voeren:

sudo supervisorctl status

Elk proces dat getoond wordt zou de status RUNNING moeten hebben. Hangende of gecrashde processen kunnen herstart worden met:

sudo supervisorctl restart <name>
sudo supervisorctl restart dsmr_backend
sudo supervisorctl restart ...

Of herstart ze allemaal tegelijkertijd:

sudo supervisorctl restart all

Debug-informatiedump voor Github-issues

Je kunt extra debug-informatie aanleveren door het “dsmr_debuginfo”-commando uit te voeren en vervolgens de output daarvan te kopieren naar je issue op Github.

Notitie

HEt “dsmr_debuginfo”-commando is beschikbaar sinds DSMR-reader v4.4 en hoger.

Voer het volgende commando uit:

sudo su - dsmr
./manage.py dsmr_debuginfo

Kopieer de output naar je Github-issue.

Logging levels

Wanneer de processen lijken te draaien, maar je kunt geen fout vinden (bijvoorbeeld als telegrammen hangen of de verwerking traag lijkt), dan is er waarschijnlijk iets anders aan de hand.

DSMR-reader heeft DEBUG-logging, waarmee het systeem heel letterlijk logt wat het aan het doen is. Dit geldt specifiek voor het dsmr_backend proces.

Notitie

Fouten worden doorgaans altijd gelogd, ongeacht het logging niveau van DEBUG-level of niet. Debugging is alleen nuttig om het gedrag van DSMR-reader in meer detail te observeren.

De DEBUG-logging is standaard uitgeschakeld, om het aantal schrijfacties op het bestandssysteem te beperken. Je kunt het inschakelen door deze stappen te volgen:

  • Zorg ervoor dat je dsmr gebruiker bent door sudo su - dsmr uit te voeren.

  • Open .env en zoek de onderstaande code:

    ### Logging level.
    ###DSMRREADER_LOGLEVEL=DEBUG
    
  • Verwijder nu de ### uit de regel:

    ###DSMRREADER_LOGLEVEL=DEBUG
    
  • Het zou nu dit moeten zijn:

    DSMRREADER_LOGLEVEL=DEBUG
    
  • Na het bewerken van het bestand zul je alle processen moeten herstarten. Om dit te doen, voer het volgende uit:

    ./post-deploy.sh
    
  • Of ga terug naar de sudo gebruiker en voer dit uit:

    CTRL+D
    sudo supervisorctl restart all
    
  • Klaar!

Onverwerkte telegrammen

Heb je regelamtig last van onverwerkte telegrammen? Het kan zijn dat je een overvloed aan gegevens hebt opgeslagen, die inhakken op de performance. Meer informatie daarover kun je hier vinden.

Contact

Kom je er toch niet uit of heb je hulp nodig? Meer informatie kun je hier vinden.