Eigene Projekte
@RollButler
Rund einen Monat lang habe ich nur Kleinigkeiten am @RollButler gefixt, mich aber über das größte Problem, dass er immer wieder Verbindungsabbrüche auf der Discord Schnittstelle zeigt geärgert. Alle Versuche dies in den Griff zu bekommen haben nur minimale Verbesserungen gebracht.
Also habe ich ein massives Logging aktiviert, analysiert und dann tatsächlich in dieser Woche die Ursache gefunden. Diese zu beseitigen war dann auch nicht weiter schwer, sodass der Bot nun so läuft wie er soll … ununterbrochen, diensteifrig und unermüdlich.
Die Ursache liegt zwar auf meiner Seite, ist aber vor der Corona Zeit nicht aufgefallen. Gegenwärtig, bzw. seit den “Lockdowns” ist auch Discord stark gefragt und scheint alle rund zwei Stunden ihre Server neu zu starten. Das wird über die API Schnittstelle den Clients und Bots kurzfristig angekündigt, sodass diese sich darauf einstellen können. Und eben dies hatte ich seinerzeit bei der Implementierung wohl vernachlässigt. Mea culpa.
Jetzt dauert die Unterbrechung in der Regel weniger als eine Sekunde und es gehen auch keine Anfragen mehr verloren, da Discord diese nachreicht.
2020.08.26 17:29:00 Discord Agent 2: Reconnect Request received {"t":null,"s":null,"op":7,"d":null} 2020.08.26 17:29:00 Discord Websocket Agent 2: closed after 35212.65 seconds 2020.08.26 17:29:00 Discord WebSocket Agent 2: open (Resource id #157) 2020.08.26 17:29:00 Discord Handshake Agent 2: HELLO received{"t":null,"s":null,"op":10,"d":{"heartbeat_interval":41250,"_trace":["[\"gateway-prd-main-532v\",{\"micros\":0.0}]"]}} 2020.08.26 17:29:00 Resuming 2: 2020.08.26 17:29:00 Discord Write Agent 2: {"op":6,"d":{"token":"Mz...TU","session_id":"e1...6c","seq":1237}} to Resource id #157 2020.08.26 17:29:01 Discord Handshake Agent 2: RESUMED {"t":"RESUMED","s":1238,"op":0,"d":{"_trace":["[\"gateway-prd-main-532v\",{\"micros\":1486,\"calls\":[\"discord-sessions-prd-2-15\",{\"micros\":18}]}]"]}}