Benutzer-Werkzeuge

Webseiten-Werkzeuge


howto:debug

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
howto:debug [2016/03/24 08:27] – [Schrittweise Fehlersuche] udo1howto:debug [2019/12/25 14:49] – Logfile falsch jau
Zeile 1: Zeile 1:
-===== Fehlersuche =====+====== Fehlersuche ======
  
- +===== Prinzipielles =====
-==== Prinzipielles ====+
 <note> <note>
-Daten nehmen bei Volkszähler einen klar definierten Weg durch das System. Dieser führt vom Zaehler über Lesekopf, vzlogger und Middleware zum Frontend. \\+Daten nehmen bei Volkszähler einen klar definierten Weg durch das System. Dieser führt vom Zähler über Lesekopf, vzlogger und Middleware zum Frontend. \\
  
 Wenn irgendwo am Ende nichts, oder nicht das Erwartete ankommt, gilt es den Weg der Daten zurück zu verfolgen und die Stelle zu finden aber der das Verhalten unerwartet ist. \\ Wenn irgendwo am Ende nichts, oder nicht das Erwartete ankommt, gilt es den Weg der Daten zurück zu verfolgen und die Stelle zu finden aber der das Verhalten unerwartet ist. \\
Zeile 12: Zeile 11:
  
  
-==== Schrittweise Fehlersuche ====+===== Schrittweise Fehlersuche =====
  
 Verlauf in Reihenfolge der Daten am Beispiel eines Zählers mit Infrarotschnittstelle. Verlauf in Reihenfolge der Daten am Beispiel eines Zählers mit Infrarotschnittstelle.
  
-  * Zaehler+  * Zähler
     * werden Daten überhaupt gesendet (Digitalkamera, vorher mit Fernbedienung testen ob diese IR-Impulse sichtbar machen kann)     * werden Daten überhaupt gesendet (Digitalkamera, vorher mit Fernbedienung testen ob diese IR-Impulse sichtbar machen kann)
   * IR-Kopf   * IR-Kopf
-    * werden Daten empfangen (Einfacher Test: IR-Kopf 1-2 cm ueber eine weiße Fläche halten, mit HTerm Daten senden, diese sollten sofort wieder empfangen werden da reflektiert)+    * werden Daten empfangen (Einfacher Test: IR-Kopf 1-2 cm über eine weiße Fläche halten, mit HTerm Daten senden, diese sollten sofort wieder empfangen werden da reflektiert)
   * serielle Schnittstelle   * serielle Schnittstelle
     * werden Daten empfangen (Terminal-Programm)     * werden Daten empfangen (Terminal-Programm)
-    * sind die Daten gueltige Daten fuer ein bekanntes Protokoll? +    * sind die Daten gültige Daten für ein bekanntes Protokoll? 
-      * Port-Parameter korrekt? Baudrate, Frameformat (SML, Binaer, beginnt mit 1b1b1b1b) (D0, Ascii-Text mit Obis-IDs).+      * Port-Parameter korrekt? Baudrate, Frameformat (SML, Binär, beginnt mit ''1b1b1b1b'') (D0, Ascii-Text mit Obis-IDs).
       * Braucht der Zähler evtl. einen Stubs um Daten zu senden (pullseq)?       * Braucht der Zähler evtl. einen Stubs um Daten zu senden (pullseq)?
       * Im Wiki nach Zähler und Konfiguration recherchieren.       * Im Wiki nach Zähler und Konfiguration recherchieren.
   * vzlogger   * vzlogger
-    * welche Version ist installiert (vzlogger -v+    * welche Version ist installiert (''vzlogger -V''
-    * laeuft er ueberhaupt, oder stuerzt er wegen Bugs ab (z.B. mit top oder ps aux | grep vzlogger bzw. mit 'systemctl status vzlogger' überprüfen) +    * läuft er überhaupt, oder stürzt er wegen Bugs ab (z.B. mit ''top'' oder ''ps aux | grep vzlogger'' oder ''systemctl status vzlogger'' überprüfen) 
-    * ist die Konfiguration korrekt (/etc/vzlogger.conf)+    * ist die Konfiguration korrekt (''/etc/vzlogger.conf'')
     * sind- im Fall von SML Zählern- die Identifier korrekt (z.B. "1-0:1.8.0" und nicht "1-0:1.8.255*255")     * sind- im Fall von SML Zählern- die Identifier korrekt (z.B. "1-0:1.8.0" und nicht "1-0:1.8.255*255")
     * stimmen die UUID von Frondend und vzlogger.conf überein?     * stimmen die UUID von Frondend und vzlogger.conf überein?
-    * was steht im logfile (/var/log/vzlogger.conf bzw. /tmp/vzlogger.log) +    * was steht im logfile (''/var/log/vzlogger.log'' bzw. ''/tmp/vzlogger.log''
-    * ist das Logging überhaupt eingeschaltet (loglevel: 15 für die Fehlersuche)+    * ist das Logging überhaupt eingeschaltet (''"verbosity": 15'' für die Fehlersuche)
     * werden die Daten korrekt dekodiert? ("Got <n> new readings from meter")     * werden die Daten korrekt dekodiert? ("Got <n> new readings from meter")
-    * werden die Werte Kanaelen zugeordnet? ("Reading: id=... value=... ts=..."+    * werden die Werte Kanälen zugeordnet? ("Reading: id=... value=... ts=..."
-    * werden die Werte zur middleware gesendet? ("CURL: *")+    * werden die Werte zur middleware gesendet? ("CURL: *" im logfile)
   * Middleware   * Middleware
-    * welche Version ist installiert (git log -n 1 im Ordner /var/www/volkszaehler.org ausführen) +    * welche Version ist installiert (''git log -n 1'' im Ordner ''/var/www/volkszaehler.org'' ausführen) 
-    * kommen die Requests an (webserver access_log) +    * kommen die Requests an (Webserver access_log) 
-    * werden die Werte in die Datenbank geschrieben (mysql-client)+    * werden die Werte in die Datenbank geschrieben (MySQL-Client)
   * Frontend   * Frontend
     * ist die richtige UUID ausgewählt (gleiche UUID wie in der vzlogger.conf)     * ist die richtige UUID ausgewählt (gleiche UUID wie in der vzlogger.conf)
     * ist der Kanal richtig konfiguriert (Typ und Auflösung)     * ist der Kanal richtig konfiguriert (Typ und Auflösung)
     * werden überhaupt Daten angezeigt     * werden überhaupt Daten angezeigt
-    * welche Requests werden an die middleware gestellt und wie sieht die JSON Antwort aus? (firebug, 'network' tab) {{:howto:webconsole.png?linkonly|}}+    * welche Requests werden an die middleware gestellt und wie sieht die JSON Antwort aus? (firebug, 'network' tab
 +    * gibt es Fehlermeldungen im Webserver Log? (''tail -f /var/log/apache2/error.log'') {{ :howto:webconsole.png?linkonly|}}
     * werden korrekte Daten angezeigt     * werden korrekte Daten angezeigt
     * wenn Daten inkorrekt angezeigt werden: wie sehen die Rohdaten aus (gleiche URL wie zur Abfrage der Daten mit &options=raw angehängt)     * wenn Daten inkorrekt angezeigt werden: wie sehen die Rohdaten aus (gleiche URL wie zur Abfrage der Daten mit &options=raw angehängt)
  
  
-==== Weitere Hilfe ====+===== Weitere Hilfe =====
  
-Wenn das alles nicht hilft bitte eine konkrete Fehlermeldung an die Mailingliste [[/contact]] schicken (statt "hilfe! es funktioniet nicht!" dann zB.: "middleware schreibt nichts in die datenbank").+Wenn das alles nicht hilft bitte eine konkrete Fehlermeldung an die [[/contact|User Mailingliste]] schicken (statt "hilfe! es funktioniet nicht!" dann zB.: "Middleware schreibt nichts in die Datenbank").
  
 Folgende Angaben sind für die weitere Unterstützung Pflicht: Folgende Angaben sind für die weitere Unterstützung Pflicht:
Zeile 59: Zeile 59:
   * Plattform (welche Hardware (Raspi? Version?), welche Software- offizielles VZ Image oder Selbstbau)   * Plattform (welche Hardware (Raspi? Version?), welche Software- offizielles VZ Image oder Selbstbau)
   * vzlogger Version   * vzlogger Version
-  * vzlogger.conf +  * ''vzlogger.conf'' 
-  * vzlogger.log mit Loglevel 15 +  * ''vzlogger.log'' mit höchstem Loglevel ''"verbosity": 15'' 
-  * Middleware/ Frontend Version (git log -n 1 im Ordner /var/www/volkszaehler.org)+  * Middleware/ Frontend Version (''git log -n 1'' im Ordner ''/var/www/volkszaehler.org'')
  
 Im Fall von Crashes, v.a. des vzloggers, bitte auch folgende Informationen ergänzen: Im Fall von Crashes, v.a. des vzloggers, bitte auch folgende Informationen ergänzen:
Zeile 67: Zeile 67:
   * wann/wie wurden die letzten Updates gefahren   * wann/wie wurden die letzten Updates gefahren
   * was ist alles (am Raspi) angeschlossen, v.a. welche Erweiterungen, wie erfolgt die Stromversorgung (wieviel Ampere)   * was ist alles (am Raspi) angeschlossen, v.a. welche Erweiterungen, wie erfolgt die Stromversorgung (wieviel Ampere)
-  * wie sieht die rc.local aus+  * wie sieht die ''rc.local'' aus
  
howto/debug.txt · Zuletzt geändert: 2022/04/21 19:54 von jau