FiveM-Logs: Wo Discord-Webhooks scheitern und was besser geht
Discord-Webhook-Logs laufen ins Rate-Limit, sind nicht pro Spieler durchsuchbar und verlieren Anhänge. So loggst du mit ox_lib und gewinnst Beweise.
Von Termi
- Logs
- ox_lib
- Discord
- Evidence
Auf dieser Seite
- Wo Discord-Logging an Grenzen stößt
- Strukturierte Logs mit ox_lib senden
- An FiveDock senden
- Von Logs zu Beweisen
- Wie lange Logs aufbewahren
- Häufige Fragen
- Wie logge ich Spieleraktionen auf einem FiveM-Server?
- Taugen Discord-Webhooks für FiveM-Logs?
- Wie lange sollte ein FiveM-Server Logs aufbewahren?
- Kann ich den Logger von ox_lib ohne Fivemanage nutzen?
Die meisten FiveM-Server loggen auf dieselbe Weise: ein Discord-Channel pro Kategorie, etwa Geld, Tode und Admin-Befehle, und in jedem Script eine Webhook-URL. Im ersten Monat klappt das. Dann kommt ein Entbannungsantrag zu etwas von vor drei Wochen, und jemand scrollt durch Tausende Embeds, um eine einzige Lizenz zu finden. Diese Anleitung zeigt, wo Discord-Logging an Grenzen stößt, wie du stattdessen strukturierte Logs mit ox_lib verschickst und wie daraus Beweise werden, die du dem Spieler zeigen kannst.
Wo Discord-Logging an Grenzen stößt
Strukturierte Logs mit ox_lib senden
ox_lib, das auf den meisten ESX-, QBCore- und Qbox-Servern ohnehin läuft, hat einen serverseitigen Logger. Ein Aufruf dort, wo die Aktion passiert, ersetzt den Webhook-Request:
RegisterNetEvent('bank:transfer', function(to, amount)
local src = source
if not Bank.transfer(src, to, amount) then return end
lib.logger(src, 'money.transfer', ('sent $%d to %s'):format(amount, to), 'amount:' .. amount, 'to:' .. to)
end)Die Argumente sind die Server-ID des Spielers, ein Event-Name, eine Nachricht und beliebig viele Tags im Format schlüssel:wert. ox_lib hängt Name und Identifier des Spielers selbst an jede Zeile, bündelt die Zeilen in Batches und schickt sie an den Dienst, der in einem Convar steht:
set ox:logger "fivemanage"
set fivemanage:key "fd_live_…"
set fivemanage:dataset "city"ox_lib bringt drei Dienste mit: Datadog, Grafana Loki und Fivemanage. Fivemanage speichert Logs im kostenlosen und im 8-$-Plan 15 Tage, bei Pro für 24 $ 90 Tage und bei Network für 79 $ 180 Tage.
An FiveDock senden
FiveDock nimmt die Batches an, die der Fivemanage-Logger von ox_lib verschickt, unverändert. ox_lib hat diese Adresse in einer Zeile von imports/logger/providers/fivemanage.lua. Richte sie auf FiveDock aus und nimm einen FiveDock-API-Token mit dem Scope logs:write als fivemanage:key:
endpoint = 'https://api.fivedock.dev/api/logs/batch',Ein Update von ox_lib ersetzt diese Datei. Ändere die Zeile deshalb nach jedem Update erneut oder pflege sie in einer eigenen Kopie von ox_lib.
Jede Zeile landet in der Black Box, mit Lizenz, Discord-ID und Namen des Spielers. Daneben liegt alles, was der FiveDock-Agent selbst aufzeichnet: Script-Fehler, Ingame-Reports und Screenshots.
Von Logs zu Beweisen
Mit Metro macht die Black Box aus diesen Zeilen eine Timeline pro Spieler: jede geloggte Zeile zu einer Lizenz, vom Beitritt über die Überweisung bis zum Screenshot, der Reihe nach und auf die Sekunde genau. Ein Klick macht aus einem Ausschnitt ein Beweispaket, einen Link, den du dem eben gebannten Spieler geben kannst.
Die Suche deckt alle Spieler ab, nach Lizenz, Kennzeichen oder Stichwort, und eine Suche, die du jede Nacht brauchst, kannst du speichern. Wirtschafts-Alarme überwachen dieselben Zeilen in jedem Plan: Eine Überweisung über einem Schwellenwert oder zu schnell wachsendes Geld wird an Discord gemeldet. Mit Metro legt der Alarm in derselben Sekunde auch ein Backup an, und Alarme für doppelte Items erkennen dieselbe Seriennummer in zwei Inventaren.
Die rollenbasierte Maskierung von Metro hält echte Adressen und Zahlungsdaten von Trainees fern, was ein Discord-Channel nicht kann.
Wie lange Logs aufbewahren
Entbannungsanträge kommen meist innerhalb weniger Wochen nach dem Bann. Bewahre mindestens 30 Tage auf. FiveDock City bietet das für 12 € im Monat. Free speichert 7 Tage, Metro 90 Tage plus Archiv.
Im Vergleich zu Fivemanage
Fivemanage speichert Logs fürs Geld länger: 90 Tage bei Pro für 24 $, 180 Tage bei Network. Ein FiveDock-Plan deckt aber auch Datei-Hosting, Datenbank-Backups, Reports und Team-Zugänge ab, vergleiche also die ganze Rechnung. Unser Hosting-Vergleich stellt beide nebeneinander.
Häufige Fragen
Wie logge ich Spieleraktionen auf einem FiveM-Server?
Rufe lib.logger aus ox_lib im Server-Script auf, in dem die Aktion passiert, mit der Server-ID des Spielers, einem Event-Namen und einer Nachricht. ox_lib hängt die Identifier des Spielers an und schickt Batches an den Dienst, der in ox:logger steht. FiveDock nimmt das Fivemanage-Format von ox_lib an und ordnet jede Zeile dem Spieler zu, sodass das Team den Verlauf eines Spielers der Reihe nach lesen kann.
Taugen Discord-Webhooks für FiveM-Logs?
Als Benachrichtigungsfeed für einen kleinen Server schon. Als Protokoll reichen sie nicht: Webhooks haben Rate-Limits, Anhangslinks laufen ab, nichts zeigt einen Spieler über mehrere Channels hinweg, und jeder, der eine Webhook-URL findet, kann darauf posten.
Wie lange sollte ein FiveM-Server Logs aufbewahren?
Mindestens so lange wie dein Einspruchsfenster, meist zwei bis vier Wochen. 30 Tage reichen für die meisten Server. Nimm 90, wenn du Erstattungsanfragen oder lange Untersuchungen bearbeitest.
Kann ich den Logger von ox_lib ohne Fivemanage nutzen?
Ja. Setze ox:logger auf datadog oder loki für diese Dienste, oder lass fivemanage stehen und ändere dessen Adresse auf die von FiveDock, das dieselben Batches annimmt.