• If you need help or want to discuss things, you now can also join us on our Discord Server!
  • A first preview of the unlimited version of SinusBot can be found in the Upcoming Changes thread. A version for Windows will follow, but we don't have a release date, yet.

Solved CPU überlast durch sinusbot / CPU overload through sinusbot

Englisch:

Hello bot community,

Unfortunately I have not yet found a suitable thread for my problem and therefore I will open this one. I hope I have not missed anything.

At the moment I have the problem, that when the Sinusbot is running, my CPU deflects in irregular intervals up to 80 - 90 %, the music hacks and other applications

My system:

- KVM Root Server with 8 GB Ram and 6 core CPU
- Ubuntu 18.04.4 Kernel 5.3 (all updates are done)
- TS Server 3.12.1 Linux
- SinusBot (1.0.0-beta.10-202ee4d)
-TS Client Sinusbot 3.5.2
- Channel setting for the channels in which the bots are running OPUS music >>10

The two bots that are running transmit one radio station each. Unfortunately it makes no difference if the bots are on or off. The service alone makes the problem and I do not find out why.

The sinus bot doesn't give out errors in the logs, so I don't attach any.

Unfortunately, I'm a little desperate. Could limit the problem to the Sinusbot, otherwise I have already shut down all services and the Sinusbot is indeed the culprit.

Google and the forum have not given me any accurate results so I hope someone can help me. Maybe I have not found an entry.

Many thanks in advance

PS: I am writing this thread in German and English, because this forum is heavily visited in German, but other languages are also represented.


DEUTSCH:

Guten Tag liebe Bot gemeidne,

ich habe leider zu meinem Problem noch keinen passenden Thread gefunden und deshalb mache ich diesen mal auf. Ich hoffe ich hab nichts übersehen.

Ich habe momentan das Problem, dass wenn der Sinusbot läuft, meine CPU in unregelmäßigen abständen einfach mal bis zu 80 - 90 % ausschlägt, die Musik hackelt und auch andere Anwendungen

Mein System:

- KVM Root Server mit 8 GB Ram und 6 Kern CPU
- Ubuntu 18.04.4 Kernel 5.3 (updates durchgeführt)
- TS-Server 3.12.1 Linux
- SinusBot (1.0.0-beta.10-202ee4d)
-TS Client Sinusbot 3.5.2
- Channeleinstellung für die Channel in denen die Bots Laufen OPUS Musik >>10

Die beiden Bots die laufen übertragen jeweils einen Radiosender. Es macht leider auch keinen unterschied ob die Bots an oder aus sind. Der Dienst allein macht das Problem und ich finde nicht herraus wieso.

Der Sinusbot gibt keine Fehler in den Logs aus, daher hänge ich keine an.

Ich bin leider ein wenig am verzweifeln. Konnte das Problem auf den Sinusbot eingrenzen, da ich sonst bereits alle Dienste abgestellt habe und der Sinusbot tatsächlich der Schuldige ist.

Google und das Forum haben mir bisher keine zutreffenden Ergebnisse gegeben daher hoffe ich mir kann jemand helfen. Vielleicht hab ich ja auch einen Eintrag nicht gefunden.

Vielen dank vorab

PS: Ich schreibe diesen Thread auf Deutsch und Englisch, da dieses Forum ja stark deutsch besucht ist, jedoch auch andere Sprachen vertreten sind.
 
Mache ich, sobald er das nächste Mal wieder ausschlägt. Grad läuft er stabil. Ist irgendwie immer unregelmäßig
 

Jniklas2

Donor
is awesome!
Insider
Erstmal top, dass du schon vorab wirklich viele Infos mit rein packst.

Logs sowie das Diag Script könnten noch praktisch sein (Anweisungen zu beidem findest du auch in den deutschen bzw englischen Threads).

Zusätzlich noch die Frage: Hast du die VM selbst erstellt oder hast du die direkt beim Hoster gemietet? Und hast du auch mal versucht die Scripts alle zu prüfen, ob das Problem auch noch dann auftritt, wenn die jeweils deaktiviert sind?
 
Moin.
Danke schonmal für die Antworten. Ich hänge hier jetzt mal nen Screenshot von htop mit dran. Es sei dazu gesagt, root nimmt angeblich auch 80 % neben dem Sinusbot. Allerdings tritt das immer nur auf mit laufendem Sinusbot. hab im moment als root noch meinen Spigot laufen, weil ich da noch probleme mit meinem Nutzer habe.

Der Server ist bei 1 Fire gehostet. also nicht selbst aufgesetzt.

Welche Logs / Diag Script meinst du?

Hab jetzt langsam wirklich alles durch, von wechseln auf größeren Server, bis neuen Kernel.... Scripte deaktivieren probiere ich die nächsten 24 stunden mal aus. Läuft aber eigentlich nur der Alone Mode
 

Attachments

  • Unbenannt1.PNG
    Unbenannt1.PNG
    53.8 KB · Views: 27

Jniklas2

Donor
is awesome!
Insider
Welche Logs / Diag Script meinst du?
Guck mal in meinen vorherigen Post und klick auf deutsch bzw. englisch ;) Da sind Links hinterlegt. Genauer gesagt die jeweiligen READ ME BEFORE YOU POST Threads, wo alles beschrieben ist. Darin ist auch ein Link zum Diag Script sowie zu einer Anleitung dazu.

Zusätzlich solltest du mal in der Config ne Log File definieren und den Log Level temporär auf 10 erhöhen, dann bekommt man viele Infos, eventuell auch, woran es liegt.

Desweiteren habe ich die Vermutung, dass dein Hoster eventuell seine Hostsysteme überlastet und deswegen dein Server ab und zu mal nicht genug CPU Zeit abbekommt. Das sollte man eventuell mal prüfen.
Sowas kannst du anhand der Steal Time sehen. Die kannst du bspw. mit top sehen. Da wird dann in der CPU Zeile bei X,X st angezeigt (X,X ist die jeweilige Prozentzahl).

BTW: Lasse bitte nichts bzw. so wenig wie möglich mit root Rechten laufen. Das sieht aus, als würde da nen Minecraft Server laufen und dadurch könnte eventuell, wenn man Bugs in der Software ausnutzt, Zugriff auf den Server bekommen. Und wenn der jeweilige Prozess als Root läuft, dann kann derjenige direkt mit root Rechten auf deinem Server agieren.
 
Ja Multitasking.... Seite war schon in neuem Tab offen. Hab das LogLevel hochgesetzt und Plotte mal 24 Stunden mit, bevor ich es reinstelle.

Rootploblematik ist mir bekannt. Trotzdem danke. Wie vorhin schon geschrieben, hab ich da noch ne kleine diskrepanz bei Rollen Rechte....

Danke schonmal, morgen Abend kommt der Log

Hier schonmal der diag

Code:
==========================================================
SINUSBOT RELATED
SYSTEM INFORMATION
 - Operating System: Ubuntu 18.04.4 LTS
 - Kernel: Linux 5.3.0-51-generic x86_64
 - Load Average: 0.65 0.99 0.75
 - Uptime: 1 days, 20 hours, 53 minutes, 58 seconds
 - OS x64 check: OK
 - OS Updates: 0 (well done!)
 - OS Missing Packages: None
 - OS APT Last Update: 09.05.2020 03:33:03 CEST +02:00:00
 - Shell Locale: en_US.UTF-8
 - Bot Start Script: not found
 - CPU:
    Architecture:        x86_64
    CPU(s):              6
    Thread(s) per core:  1
    Core(s) per socket:  1
    Socket(s):           6
    Model name:          Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz
    CPU MHz:             2397.222
    Hypervisor vendor:   KVM
    Virtualization type: full
 - RAM: 3.86 GB/7.77 GB in use (49%)
 - SWAP: 0 B/3.99 GB in use (0%)
 - DISK: 11.91 GB/389.91 GB in use (3%)
 - Package versions:
   - libglib: 2.56.4-0ubuntu0.18.04.6

BOT INFORMATION
 - Status: running (PIDs: 667 659, User: sinusbot)
 - Webinterface: port locally reachable (Port: 8087)
 - Binary: /opt/sinusbot/sinusbot
 - Binary Info: MD5 Hash: 224b687db910b732fe5a7cfec4f6c78e, Perms: 755, User: sinusbot
 - Version: 1.0.0-beta.10-202ee4d
 - TS3 Plugin: installed (md5 hash match)
   - Bot Plugin: aa483aea105cb62033392b1ce6d317ab
   - TS3 Client: aa483aea105cb62033392b1ce6d317ab
 - Config:
   - LogLevel = 10 (debug log active)
   - TS3Path = /opt/sinusbot/TeamSpeak3-Client-linux_amd64/ts3client_linux_amd64 (Version 3.5.2)
   - YoutubeDLPath = not set
 - Installed scripts: advertising.js; alonemode.js; bookmark.js; command.js; defaultChannel+.js; Default-Channel.js; followme.js; norecording.js; rememberChannel.js; sinusbot-commands.js; welcome.js

BOT TECHNICAL INFORMATION
 - File exists:
   - TS3Client/libqxcb-glx-integration.so: no
 - LDD output:
    linux-vdso.so.1 (0x00007ffc615bf000)
    libswresample.so.2 => /opt/sinusbot/libswresample.so.2 (0x00007f697844d000)
    libavfilter.so.6 => /opt/sinusbot/libavfilter.so.6 (0x00007f69780f5000)
    libavformat.so.57 => /opt/sinusbot/libavformat.so.57 (0x00007f6977cf4000)
    libavcodec.so.57 => /opt/sinusbot/libavcodec.so.57 (0x00007f697738f000)
    libavutil.so.55 => /opt/sinusbot/libavutil.so.55 (0x00007f697711b000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6976f17000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6976b79000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f697695a000)
    libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f69765d1000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f69763b9000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6975fc8000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f6975dab000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f6975ba3000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f6978667000)

REACHABILITY CHECKS
 - HTTPS check with IPv4 mode: SUCCESS [Connection established to www.sinusbot.com, CODE #200]
 - HTTPS check with IPv6 mode: IGNORED [Disabled]
 - DNS resolution check: SUCCESS [www.sinusbot.com resolved to 104.28.15.74]
 - Update server checks:
    update01.sinusbot.com -> 104.28.14.74: SUCCESS [CODE #404]
    update02.sinusbot.com -> 104.28.15.74: SUCCESS [CODE #404]
    update03.sinusbot.com -> 104.28.15.74: SUCCESS [CODE #404]

TIME INFORMATION
 - Time (local): 11.05.2020 01:07:45 CEST +02:00:00
 - Time (remote): 11.05.2020 01:07:45 CEST +02:00:00
 - Time (difference): 0 secs (Time diff less than 2 secs. Good.)
 - Timezone: Europe/Berlin

OTHER INFORMATION
 - TeamSpeak3 Version: 3.5.2
 - youtube-dl Version: unknown
 - DiagScript Version: 0.8.0
==========================================================
 
Last edited:

Jniklas2

Donor
is awesome!
Insider
Danke schonmal, morgen Abend kommt der Log
Kein ding, helfe gerne, solange ich kann und man Nett bleibt (ist heute leider keine Selbstverständlichkeit mehr :/)
In der Zwischenzeit kannst du ja schon mal das Diagscript posten. Bevorzugt entweder auf Pastebin (oder ähnliches) oder hier in einem Spoiler (dafür wird übrigens der Output auch schon direkt vorbereitet).
 
Kein ding, helfe gerne, solange ich kann und man Nett bleibt (ist heute leider keine Selbstverständlichkeit mehr :/)
In der Zwischenzeit kannst du ja schon mal das Diagscript posten. Bevorzugt entweder auf Pastebin (oder ähnliches) oder hier in einem Spoiler (dafür wird übrigens der Output auch schon direkt vorbereitet).
Im vorherigen Post drin.....

Und ein gescheites miteinander sollte auch in der digitalen zeit selbstverständlich sein. Schließlich suche ich ja nach hilfe ;)
 
So, also ich hab den Log auf Loglevel 10 mit laufen lassen. Tatsächlich ist nichts hinzugekommen, ausser halt das er die Track-Infos der Musik mit geplottet hat. Ansonsten keine Fehlermeldungen. Auch das rausnehmen der Skripte hat nichts daran geändert, das er in unregelmäßigen abständen laggt, was halt passiert wenn die CPU ausgelastet wird.

Hab es jetzt nochmal auf nem anderen V-Server (selber Hoster, selbes OS) probiert, das gleiche Problem. Hab alle Schritte nochmal nach der Anleitung gemacht https://sinusbot.github.io/docs/installation/linux/. Verwundern tut mich, dass es Anfangs einwandfrei lief. Der andere V-Server war mein Alter, wo es vorher schon drauf lief und bis vor kurzem auch keine Probleme waren. Hab den Server komplett neu aufgesetzt und nur Sinusbot (auch kein TS Server, der läuft aufm normalen server weiter) istalliert. Trotzdem laggen.... Vielleicht etwas seltener, aber nach wie vor laggen in unregelmäßigen Abständen.

Noch jemand ne Idee? Ich bin etwas ratlos. Vielleicht fehlt mir ja auch nen Schritt bei der Installation
 

TwentyFour

BinusSot Junkie
V.I.P.
Contributor
Insider
Es würde mich stark wundern, wenn ein Standard installierter SinusBot, derartige Probleme hätte... allein schon weil es dann dort sicher viel mehr Reaktionen zu solch Problemen gäbe.
Hab es jetzt nochmal auf nem anderen V-Server (selber Hoster, selbes OS) probiert, das gleiche Problem.
Dieser Punkt spricht m.M. sogar eher gegen den SinusBot, statt Reproduzierbarkeit zu untermauern. Ich würde vorschlagen, du trackst einfach generell mal deine CPU Auslastung, z.B. mit sar bzw. sysstat. Auch gerade so Werte wie Steal-Time mal beobachten. Viele Hoster oversellen ihre Produkte, gerade in den kleinen V-Server, sodass du mal durchaus Spikes bekommst.
Der TS-Server ist sehr genügsam, der leider eher unter den Spikes, als Ursache davon zu sein.
Hier eine kleine Anleitung, falls dir nicht geläufig.

Wichtig ist dieser Punkt:

sar Aufzeichnung in Debian aktivieren: Um die automatische Aufzeichnung unter Debian zu aktivieren, muss zuerst der Parameter "ENABLED" in der Datei /etc/default/sysstat auf "true" gesetzt werden. Dieser ist per Default auf "false" gesetzt.
 
Es würde mich stark wundern, wenn ein Standard installierter SinusBot, derartige Probleme hätte... allein schon weil es dann dort sicher viel mehr Reaktionen zu solch Problemen gäbe.

Dieser Punkt spricht m.M. sogar eher gegen den SinusBot, statt Reproduzierbarkeit zu untermauern. Ich würde vorschlagen, du trackst einfach generell mal deine CPU Auslastung, z.B. mit sar bzw. sysstat. Auch gerade so Werte wie Steal-Time mal beobachten. Viele Hoster oversellen ihre Produkte, gerade in den kleinen V-Server, sodass du mal durchaus Spikes bekommst.
Der TS-Server ist sehr genügsam, der leider eher unter den Spikes, als Ursache davon zu sein.
Hier eine kleine Anleitung, falls dir nicht geläufig.

Wichtig ist dieser Punkt:

sar Aufzeichnung in Debian aktivieren: Um die automatische Aufzeichnung unter Debian zu aktivieren, muss zuerst der Parameter "ENABLED" in der Datei /etc/default/sysstat auf "true" gesetzt werden. Dieser ist per Default auf "false" gesetzt.

Okay, danke für die Anwort. Allerdings finde ich schon, das es damit reproduziert ist. Gleicher Bot auf nem leeren OS und ohne andere Dienste und gleiches Problem.... Also die Quelle des Problems ist defenitiv der Sinusbot. Das warum belastet mich nur. Wenn ich Probleme seitens des Hosters hätte, würden meine anderen Dienste, die noch laufen weiterhin Probleme haben. Ist aber nicht der Fall.....

Danke für die Info mit der Aufzeichnung. Bei mir läuft allerdings UBUNTU... ;) Aber das war jetzt mehr für die Detailgenauigkeit.
 

TwentyFour

BinusSot Junkie
V.I.P.
Contributor
Insider
Also die Quelle des Problems ist defenitiv der Sinusbot.
Gleiche Software auf gleicher Hardware beim gleichen Hoster ist keine eindeutige Reproduzierbarkeit, die auf die Software schließen lässt.
Denn ich nutze ja zB. auch die gleiche Software, auf anderer Hardware mit anderem Hoster.
Und hier ist eben keinerlei Einschränkung zu beobachten.
Danke für die Info mit der Aufzeichnung. Bei mir läuft allerdings UBUNTU... ;) Aber das war jetzt mehr für die Detailgenauigkeit.
Funktioniert genauso unter Ubuntu. ;)
Versuch mal da wie gesagt, solche Werte wie Steal-Time zu beobachten.
Deine anderen Dienste können ja dennoch betroffen sein, wenn der Sinusbot nicht aktiv ist, lediglich bemerkst du keine Symptome, und eben nur in Summe "läuft das Fass über".
 
Gleiche Software auf gleicher Hardware beim gleichen Hoster ist keine eindeutige Reproduzierbarkeit, die auf die Software schließen lässt.
Denn ich nutze ja zB. auch die gleiche Software, auf anderer Hardware mit anderem Hoster.
Und hier ist eben keinerlei Einschränkung zu beobachten.

Funktioniert genauso unter Ubuntu. ;)
Versuch mal da wie gesagt, solche Werte wie Steal-Time zu beobachten.
Deine anderen Dienste können ja dennoch betroffen sein, wenn der Sinusbot nicht aktiv ist, lediglich bemerkst du keine Symptome, und eben nur in Summe "läuft das Fass über".

Na das du keine Probleme hast, glaub ich dir ja.

Der zweite Server läuft, aufgrund der geringeren Performance beim Hoster in nem anderen HW Cluster. Also von daher hab ich auch die Trennung der HW. Nutzt du Ubuntu oder Debian?
 

TwentyFour

BinusSot Junkie
V.I.P.
Contributor
Insider
Hab Debian 10 in Betrieb. Hast du zufällig Ubuntu 20.04? Da gab's mal Probleme mit dem TS-Client, aber wenn es die Steal-Time nicht ist, dann weiß ich auch nicht...
(ist halt immer leichter zu glauben mit einem Screenshot ... du glaubst gar nicht wie viel man sich als manchmal anhört und schreibt, und am Ende sagt der Screenshot mehr aus als alles andere)
 
Hab Debian 10 in Betrieb. Hast du zufällig Ubuntu 20.04? Da gab's mal Probleme mit dem TS-Client, aber wenn es die Steal-Time nicht ist, dann weiß ich auch nicht...
(ist halt immer leichter zu glauben mit einem Screenshot ... du glaubst gar nicht wie viel man sich als manchmal anhört und schreibt, und am Ende sagt der Screenshot mehr aus als alles andere)
Doch doch, das glaub ich gern. Verstehe ich auch. Aber ich bin zwar kein Ass was Linux/Unix Platformen angeht, allerdings bin Fachinformatiker und hab daher auch schon das ein oder andere ausprobiert. Ne hab 18.04 laufen. Hab aber länger schon über Debian nachgedacht. Mal schauen, vielleicht nehme ich mir morgen mal die Zeit. Werd denke ich einmal das OS sauber und frisch aufsetzen, hab da eh noch nen User Problem, das ich lösen muss.
 

fabm3n

Well-Known Member
Tier II
Tier III
Tier I
is awesome!
Insider
Ich hab auf 18.04 die Probleme nicht, auch auf einem frisch installierten Ubuntu 18.04 bei Hetzner nicht. (So viel zum Thema Reproduzierbar)
 
Ich hab auf 18.04 die Probleme nicht, auch auf einem frisch installierten Ubuntu 18.04 bei Hetzner nicht. (So viel zum Thema Reproduzierbar)
Das freut mich schonmal, das du die Probleme nicht hast. Aber geholfen hat es jetzt nicht.

Mal schauen, wie es sich jetzt auf Debian 10 macht. Hab meinen Lab-Server mal mit Dbian aufgesetzt und lasse jetzt mal nur den Bot ein wenig laufen. Mal schauen was bei rauskommt.
 
So, woran es auch nun immer gelegen hat, unter Debian 10 ist das Problem nicht mehr vorhanden..... Kein laggen mehr und keien Ausbrüche mehr. Egal in welcher form ich das System belaste, problem ist weg, sowohl auf Lab-Server als auch auf Produktiv.... Und bevor die Frage kommt, ja auch Ubuntu 18.04 hatte ich zwischendurch einmal komplett neu gemacht um andere Fehler auszuschließen.

Ich bedanke mich für die gegebene Unterstützung.
 
Top