Page 1 of 2

Hohe Prozessorauslastung

Posted: Tue Jul 11, 2017 9:08 am
by christian-dsh
Hallo,

ich habe aktuell das Problem, dass ein einziger Bot der einen Radiostream abspielt eine sehr hohe CPU Auslastung verursacht, ein anderer Bot, der auch Musik spielt verursacht hingegen keine CPU Auslastung.

Image

(alle 5 Prozesse sind von ein und dem selben Musikbot)

Im Log konnte ich keinen Fehler sehen, hier sehe ich nur das er seinen Avatar nicht setzen kann.
Code: Select all
2017-07-10 22:43:08START_INFOTeamSpeak mode enabled
2017-07-10 22:43:08START_INFO=============================================================
2017-07-10 22:43:43COMMANDGot command from Chris: !bothelp
2017-07-10 22:46:41START_MODTS3MusicBot "TS3MusicBot" starts now
2017-07-10 22:46:42START_INFO=============================================================
2017-07-10 22:46:42START_INFOTeamSpeak mode enabled
2017-07-10 22:46:42START_INFO=============================================================
2017-07-10 22:47:45COMMANDGot command from Chris: !bothelp
2017-07-10 23:04:49START_MODTS3MusicBot "TS3MusicBot" starts now
2017-07-10 23:04:49START_INFO=============================================================
2017-07-10 23:04:49START_INFOTeamSpeak mode enabled
2017-07-10 23:04:49START_INFO=============================================================
2017-07-11 02:47:30START_ERRORPlayer instance freeze detected. Restarted. Restarting last playback: 
2017-07-11 10:30:02COMMANDGot command from Chris: !bothelp
2017-07-11 10:38:02START_ERRORCould not set avatar. Make sure the client has the permissions to set an avatar.
2017-07-11 10:43:44START_ERRORAvatar set Exception: java.net.SocketTimeoutException: Read timed out

Re: Hohe Prozessorauslastung

Posted: Tue Jul 11, 2017 11:25 am
by Crypto90
Das einzig auffällige hier ist
Code: Select all
java.net.SocketTimeoutException: Read timed out
Was bedeutet, dass eine Netzwerkverbindung (in dem Fall bei der Avatar Funktion) aufgetreten ist.
Wie sieht die CPU Last nach einem Neustart des Bots aus?

Re: Hohe Prozessorauslastung

Posted: Tue Jul 11, 2017 1:28 pm
by christian-dsh
Nach einem Neustart ist sie wieder gering, aber nach einem halben Tag - Tag taucht es wieder auf.

Re: Hohe Prozessorauslastung

Posted: Tue Jul 11, 2017 1:47 pm
by Crypto90
Wir schreiben aktuell doppelt stimmts? ^^ Hier im Forum und im Ticket-System.
Lass uns bitte an einem Ort schreiben, da es den Support beschleunigt ;)

Siehe letzte Antwort per Email.

Re: Hohe Prozessorauslastung

Posted: Tue Jul 11, 2017 9:48 pm
by philippe
Moin,

hab mal grad auch bei meinem Server geschaut und hab das Selbe Problem:
Image
Hier der Komplette Baum:
https://abload.de/img/music_bot_hohe_auslasxyscc.png

Das Einzige auffällige ist:
Code: Select all
Exception in thread "Timer-5" java.lang.IndexOutOfBoundsException: Index: 1388, Size: 0
        at java.util.ArrayList.rangeCheck(ArrayList.java:635)
        at java.util.ArrayList.get(ArrayList.java:411)
        at c.w.g(Unknown Source)
        at c.A.run(Unknown Source)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)

Re: Hohe Prozessorauslastung

Posted: Wed Jul 12, 2017 3:29 pm
by christian-dsh
Es freut mich zu wissen, dass ich nicht der Einzige bin mit dem Problem ..
Habe schon alles probiert, updaten, Musikbot Rechte für den Avatar setzen etc ...

Auslastung kommt trotzdem immer wieder, zwar nicht von allen Bots, aber immer wieder den gleichen ... welche eigentlich nur Radiostreams abspielen.

Re: Hohe Prozessorauslastung

Posted: Wed Jul 12, 2017 8:24 pm
by Crypto90
Früher gab es mal das phänomen, dass gewisse Ports angegriffen wurden durch Bot-Netze die wild drauf los exploits auf verschiedene IP Netze schießen.

Worauf das Webinterface der Bots reagiert hat und hohe CPU Auslastung bekam. Vielleicht ist dies wieder der Fall.

Laufen die Bots zufällig auf Ports wie 8080?
Ändert diese mal auf welche, die nicht irgendwo anders als Standard gesetzt wurden sein können.
Also keine 8080, 9090, 80 etc.

Falls eure Bots über das Webinterface mittels Exploit-Brutforce angegriffen werden, würde sich das Problem damit lösen.

Was ihr zusätzlich oder vorher noch tun könnt, ist den access log für das webinterface mittels start Parameter zu aktivieren.

-web-log-dir /pfad/zu/einem/acceslog/ordner/

Stellt sicher, dass der java Prozess auf den access log Ordner zugreifen (schreiben) kann. So würde man evtl sehen wenn das Webinterface mittels URL attacken angegriffen wird.

Der access Log parameter soll aber kein standard sein, da er schnell viele logs produziert -> Speicherplatz.

Re: Hohe Prozessorauslastung

Posted: Wed Jul 12, 2017 10:06 pm
by christian-dsh
Meine Bots laufen leider ab 9000 .

Re: Hohe Prozessorauslastung

Posted: Thu Jul 13, 2017 9:29 pm
by philippe
Hallö,

meine Bots laufen auch nicht aufm Standard Port (Bei mir 1551,1552,1553).
Hatte Alle Bots gestoppt und dann mit:
Code: Select all
-web-log-dir /pfad/zu/einem/acceslog/ordner/
gestartet.
In der Datei stehen nur zugriffe mit einer IP Adresse von mir.

Habe die Bots am 13.07 um 00:03 Uhr gestartet.
Um 11 Uhr und um 12 Uhr hatte ich einmal aufm Server geschaut da Lief alles Normal ohne hohe Auslastung. Musik Lief bei Allen Drei Bots.
Jetzt (also um 23:20 Uhr) habe ich wieder eine Hohe Auslastung bei Allen Bots. Aufm Discord Server kommt von allen drei Bots kein Ton mehr auch wenn ich das Radio erneut auswähle.
In den Logs ist nichts Auffälliges.

Re: Hohe Prozessorauslastung

Posted: Thu Jul 13, 2017 10:58 pm
by Crypto90
Wir sollten ggf. mal festhalten, in welchem Mode die CPU Last erscheint.
TeamSpeak oder Discord, das kann durchaus einen Unterschied geben, da die Discord Funktion ja nachträglich dazu kam.
Sonst wird die Bug-Suche wirklich mühsam.

@philippe
Wenn deine Bots wieder laufen, schau ich selbst mal ins Webinterface und alle Logs durch, vielleicht fällt mir etwas auf.
Aktuell sind sie jedoch gestoppt.