Newcomer1989 / TSN-Ranksystem

A PHP Bot that assigns time based server groups on TeamSpeak3.
https://ts-ranksystem.com
GNU General Public License v3.0
144 stars 60 forks source link

Bot startet nicht mehr: Servergruppen fehlen in Rangsteigerung Definition #414

Closed mamayer closed 6 years ago

mamayer commented 6 years ago

Der Server startet nicht mehr, seit dem der TeamSpeak-Server auf Version 3.1.0 aktualisiert wurde.

Folgende Meldung behauptet, dass die Servergruppen nicht mehr existieren würden – auf dem TeamSpeak sind die Gruppen aber noch, habe ich überprüft.

2018-02-17 10:21:01.830506 CRITICAL Critical Config error! Shutting down! 2018-02-17 10:21:01.827028 ERROR Es ist die Servergruppe mit der ID 146 im Parameter 'Servergruppen-Ausnahmen' (Webinterface -> Kern) konfiguriert, jedoch ist diese Servergruppe nicht (mehr) auf dem TS3 Server vorhanden! Bitte korrigiere dies oder es können hierdurch Fehler auftreten! 2018-02-17 10:21:01.826948 CRITICAL Es ist die Servergruppe mit der ID 10 im Parameter 'Rangsteigerung Definition' (Webinterface -> Kern) konfiguriert, jedoch ist diese Servergruppe nicht (mehr) auf dem TS3 Server vorhanden! Bitte korrigiere dies oder es können hierdurch Fehler auftreten! 2018-02-17 10:21:01.826768 INFO Config check started... 2018-02-17 10:21:01.826698 DEBUG Using PHP Version: 5.5.9-1ubuntu4.22 2018-02-17 10:21:01.826619 DEBUG Running on OS: Linux 3.13.0-042stab127.2 2018-02-17 10:21:01.821496 INFO Initialize Bot...

monster010 commented 6 years ago

Das Problem das bei dir vorhanden ist, hat nichts mit der Version des TeamSpeak-Servers zu tun. Bei dir sind in den Einstellungen vom Bot Gruppen hinterlegt die nciht existierten, daher startet der Bot nicht mehr. Schau im Webinterface unter dem Menüpunkt Kern in den Servergruppen-Ausnahmen und in der Rangsteigerung Definition ob alle dort hinterlegten Gruppen auch auf dem TS-Server existierten, wenn nicht entfern diese in den Bot Einstellungen. Als Beispiel die Servergruppen mit der ID 146 und 10 existierten nicht auf dem TeamSpeak Server, dass kannst du daran sehn, das es im Log steht den du gepostet hast.

mamayer commented 6 years ago

Sind sie

auf dem TeamSpeak sind die Gruppen aber noch, habe ich überprüft.

TheChaosToast commented 6 years ago

Habe genau das gleiche Problem. Die Servergruppen sind vorhanden, aber ich bekomme den RankingBot nicht mehr gestartet. Serverversion ist 3.0.13.8 Ranking Version 1.2.4

Bekomme übrigen genau die gleiche Fehlermeldung wie mamayer

Und noch etwas ist mir aufgefallen - wenn ich auf KERN gehe und dort etwas speichern möchte bekomme ich noch die folgende Fehlermeldung: Your changes were not saved to the database due errors occured. Please fix the problems and save your changes after!

Schreibrechte für Dateien und Datenbanken wurden nicht geändert :)

Newcomer1989 commented 6 years ago

Bitte überprüfe, ob die Servergruppen auch in der Tabelle groups des Bots vorhanden sind.

Dies kannst du auf deiner Datenbank mittels des folgenden SQL-Statements: SELECT * FROM groups;

Um den Bot zunächst gestartet zu bekommen, kann die Tabelle vollständig geleert werden. DELETE FROM groups;

Danach den Bot starten und laufen lassen, bis alle Servergruppen heruntergeladen und in der Datenbank gespeichert wurden. Hiernach sollte alles wieder ohne Probleme funktionieren.

mamayer commented 6 years ago

In der Tabelle gab es nur einen Eintrag:

mysql> SELECT * FROM groups;
+------+------------+-----------+------------+
| sgid | sgidname   | iconid    | icondate   |
+------+------------+-----------+------------+
|    0 | ServerIcon | 796449946 | 1495041524 |
+------+------------+-----------+------------+
1 row in set

Nach dem Löschen startete der Bot ohne Probleme und hat die Gruppen neu heruntergeladen. Vielen Dank für die Hilfe, hat alles geklappt.

Gibt es eigentlich eine Möglichkeit, das Auto-Update abzuschalten? Ich bin ein großer Freund von automatischen Aktualisierungen, mag es aber nicht so gerne, wenn dann was schiefläuft, wenn man sich gerade nicht drum kümmern kann. Da würde ich die Updates lieber manuell, z.B. über einen Button auslösen.

bykidi commented 6 years ago

Can someone explain in english? Ranksystem is on high drugs for me since last restart

default

Newcomer1989 commented 6 years ago

The screenshot is cut, but it seems to be, you wanted to save a new rankup definition, right!?

Like it stands there.. Your changes are not be saved.

You should have a look to your database and there inside the table groups: SELECT * FROM groups;

Are all ts3 servergroups stored inside this table? If not, you are still using special characters inside your servergroup names? This problem will be fixed with version 1.2.5. In version 1.2.4 it bring problems on saving the groups.

If the Ranksystem is still stopped and you are not able to restart it, delete the values inside the table and try to start the Bot again: DELETE FROM groups;

bykidi commented 6 years ago

Seems like fine right now. Thank you!

mamayer commented 6 years ago

Der Fehler tritt erneut auf:

2018-03-08 20:48:02.026164 CRITICAL Critical Config error! Shutting down! 2018-03-08 20:48:02.020037 ERROR Es ist die Servergruppe mit der ID 146 im Parameter 'Servergruppen-Ausnahmen' (Webinterface -> Kern) konfiguriert, jedoch ist diese Servergruppe nicht (mehr) auf dem TS3 Server vorhanden! Bitte korrigiere dies oder es können hierdurch Fehler auftreten! 2018-03-08 20:48:02.018056 CRITICAL Es ist die Servergruppe mit der ID 10 im Parameter 'Rangsteigerung Definition' (Webinterface -> Kern) konfiguriert, jedoch ist diese Servergruppe nicht (mehr) auf dem TS3 Server vorhanden! Bitte korrigiere dies oder es können hierdurch Fehler auftreten! 2018-03-08 20:48:02.017663 INFO Config check started... 2018-03-08 20:48:02.017538 INFO Ranksystem Version: 1.2.5 2018-03-08 20:48:02.017299 INFO Check files permissions [done] 2018-03-08 20:48:01.970718 INFO Check files permissions... 2018-03-08 20:48:01.970250 INFO No newer version detected; Database check finished. 2018-03-08 20:48:01.970113 INFO Check Ranksystem database for updates. 2018-03-08 20:48:01.969983 DEBUG Database Version: 5.5.59-0ubuntu0.14.04.1 2018-03-08 20:48:01.969843 DEBUG Using PHP Version: 5.5.9-1ubuntu4.23 2018-03-08 20:48:01.969578 DEBUG Running on OS: Linux 3.13.0-042stab127.2 2018-03-08 20:48:01.961250 INFO Initialize Bot...

Ich möchte jetzt aber nicht nach jedem Disconnect des Bots erst die Tabelle leeren müssen.

mamayer commented 6 years ago

Ergänzung zum aktuellen Zustand:

Der TeamSpeak-Server ist abgestürzt, wodurch der Bot die Verbindung verlor. Der TS ist mittlerweile wieder online, der Bot zeigt seitdem an, dass seine Daten veraltet sind. Also bin ich ins Protokoll gegangen und habe o.g. Fehlermeldung vorgefunden. Diese bekomme ich auch bei jedem erneuten Versuch den Bot manuell zu starten.

Die Gruppen-Tabelle sieht aktuell wie folgt aus:

mysql> SELECT * FROM groups;
+------+------------+-----------+------------+
| sgid | sgidname   | iconid    | icondate   |
+------+------------+-----------+------------+
|    0 | ServerIcon | 796449946 | 1495041524 |
+------+------------+-----------+------------+

Zudem gibt es eine Backup-Tabelle, in der ist noch alles "ok":

mysql> SELECT * FROM bak_groups;
+------+---------------------+------------+------------+
| sgid | sgidname            | iconid     | icondate   |
+------+---------------------+------------+------------+
|    0 | ServerIcon          |  796449946 | 1495041524 |
|    1 | Guest Server Query  |          0 |          0 |
|    2 | Admin Server Query  |        500 |          0 |
|    3 | Server Admin        |        300 |          0 |
|    4 | Normal              |          0 |          0 |
|    5 | Guest               |          0 |          0 |
|    6 | Server Admin        |        500 |          0 |
|    7 | Normal              |          0 |          0 |
|    8 | Guest               |  531920204 | 1495041524 |
|   10 | Standard            |          0 |          0 |
...

Nachdem ich die Tabelle groups geleert habe...

mysql> DELETE FROM `groups`;

... startet der Bot ganz normal.

Abstürze des TeamSpeak-Servers / Unerreichbarkeit scheinen zu der defekten Tabelle zu führen, die dann anschließend den Start verhintert.

Leider scheint das Problem somit doch nicht nur eine Ausnahme gewesen zu sein. Irgendwelche Ideen, warum die Tabelle so halb-leer hinterlassen wird?

Newcomer1989 commented 6 years ago

Das Problem sollte mit der aktuellen Version 1.2.6 behoben sein.