Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tibber Pulse: fix server going silent #7575

Merged
merged 7 commits into from
Jun 17, 2023
Merged

Tibber Pulse: fix server going silent #7575

merged 7 commits into from
Jun 17, 2023

Conversation

andig
Copy link
Member

@andig andig commented Apr 20, 2023

Fix #7314

@andig andig requested a review from naltatis April 20, 2023 16:08
@andig
Copy link
Member Author

andig commented Apr 20, 2023

Das müsst ihr bitte ausprobieren- der Code ist nicht schön...

@andig andig added the bug Something isn't working label Apr 20, 2023
@naltatis
Copy link
Member

Irgendwas passt da noch nicht. Ich habe gerade zwei Effekte festgestellt nachdem ich das Netzwerk getrennt und nach einigen Minuten wieder angeschaltet habe.

Erstens: Doppelte Anzahl Reconnects aus der GraphQL Libary:

[pulse ] TRACE 2023/04/20 19:31:34 failed to WebSocket dial: failed to send handshake request: Get "https://websocket-api.tibber.com/v1-beta/gql/subscriptions": dial tcp: lookup websocket-api.tibber.com: no such host. retry in second... client
[pulse ] TRACE 2023/04/20 19:31:34 failed to WebSocket dial: failed to send handshake request: Get "https://websocket-api.tibber.com/v1-beta/gql/subscriptions": dial tcp: lookup websocket-api.tibber.com: no such host. retry in second... client
[pulse ] TRACE 2023/04/20 19:31:35 failed to WebSocket dial: failed to send handshake request: Get "https://websocket-api.tibber.com/v1-beta/gql/subscriptions": dial tcp: lookup websocket-api.tibber.com: no such host. retry in second... client
[pulse ] TRACE 2023/04/20 19:31:35 failed to WebSocket dial: failed to send handshake request: Get "https://websocket-api.tibber.com/v1-beta/gql/subscriptions": dial tcp: lookup websocket-api.tibber.com: no such host. retry in second... client

Hier liefen zwei pro Sekunde. Normalerweise probiert die Library sekündlich neu zu verbinden.
Idee: Vielleicht können wir den Reconnect der Library auch abschalten wenn wir sowieso unseren eigenen haben?

Zweitens: Nach erfolgreichen Reconnect (ich sehe Pulse Antworten im Log - übrigens nicht doppelt), scheint die 10s Regelschleife nicht mehr zu laufen. Ich sehe bei mir noch Easee und Pulse Logeinträge aber nichts mehr aus der Site.

@foto-andreas
Copy link
Contributor

Kann gerade nicht testen und habe auch nicht in den Code geschaut. Wenn der eigene Reconnect gestartet wird, muss aber auf alle Fälle der alte Connect vom Client beendet werden, soweit ich die API verstehe.

@andig andig marked this pull request as draft April 21, 2023 16:04
@andig
Copy link
Member Author

andig commented Apr 21, 2023

Idee: Vielleicht können wir den Reconnect der Library auch abschalten wenn wir sowieso unseren eigenen haben?

Wenns vorher einen Timeout gab sollte das Close() den ersten beendet haben. Keine Ahnung ob das funktioniert.

@github-actions github-actions bot added the stale Outdated and ready to close label May 12, 2023
@github-actions github-actions bot closed this May 17, 2023
@naltatis naltatis removed the stale Outdated and ready to close label May 17, 2023
@naltatis
Copy link
Member

Ich hattest gestern wieder einen Hänger und musste evcc neu starten 😔

@andig magst du dir das Thema noch mal anschauen?

@foto-andreas
Copy link
Contributor

Ich glaube "closed" für den PR ist doof, oder? War nicht der letzte Stand von @naltatis, dass doppelte Verbindungen auftraten?

@naltatis naltatis reopened this May 17, 2023
@naltatis
Copy link
Member

@foto-andreas ja, ich wollte den wieder öffnen, hab aber nur das Stale Tag gelöscht.

@andig andig closed this May 18, 2023
@foto-andreas
Copy link
Contributor

Ich verstehe aus meiner Entwickler-Sicht das Konzept des Öffnens und Schließen von Tickets hier noch nicht. @andig bist du prinzipiell dagegen, hier etwas in evcc zu fixen? Ich würde erwarten, dass wir hier gemeinsam nach einer Lösung suchen und dann was funktionierendes in evcc einbauen.

@andig
Copy link
Member Author

andig commented Jun 11, 2023

Hier wurde kein Ticket geschlossen sondern ein nicht funktionierender PR. Mangels Tibber kann ich das nicht weiter voran treiben.

Ich würde erwarten

Das ist meine absolute Lieblingsformulierung :) Wenn jemand eine Idee für einen funktionierenden Fix hat sehr gerne.

@foto-andreas
Copy link
Contributor

Alles klar, das Statement ist für mich völlig ok. Dann schaue ich mir das die Tage mal an und übe mich etwas in go.

@andig andig reopened this Jun 15, 2023
@andig
Copy link
Member Author

andig commented Jun 16, 2023

PR kann getestet werden.

@naltatis
Copy link
Member

Meine ersten Tests sehen gut aus. Reconnect bei unterbrochenem Netzwerk funktionieren weiterhin wie erwartet. Den Fall "Verbindung steht, aber es kommen keine Daten mehr" kann ich natürlich nicht einfach nachstellen. Ich lass das jetzt mal über Nacht laufen und meld mich. Im Zweifelsfall probieren wir das mit dem Fix erstmal.

@foto-andreas
Copy link
Contributor

Ihr seid ja schneller als die Polizei erlaubt...

Copy link
Member

@naltatis naltatis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ist bei mir jetzt die Nacht durchgelaufen und hat alle erzwungenen Verbindungsabbrüche erfolgreich wiederhergestellt. Ich würde sagen Todos und auskommentierten Code rausnehmen und ab in den Master.

@naltatis naltatis marked this pull request as ready for review June 17, 2023 07:35
@andig andig merged commit 795ac2e into master Jun 17, 2023
6 checks passed
@andig andig deleted the fix/tibber branch June 17, 2023 08:25
@foto-andreas
Copy link
Contributor

foto-andreas commented Jul 1, 2023

Super. Bei mir ist seit dem Merge alles problemlos durchgelaufen. Vielen Dank!

@naltatis
Copy link
Member

naltatis commented Jul 2, 2023

Ja bei mir ebenfalls!

@evcc-io evcc-io locked as resolved and limited conversation to collaborators Jul 2, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Tibber Pulse Grid meter timeout
3 participants