Beste Log Methode

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Morgen,


    bei mir ist es so, das Chats, Bank Einzahlungen/Auszahlungen etc. in den Scriptfiles nach Ordner, Datum und Uhrzeit einzelnt gelogt werden.
    Ich wollte fragen was die saubere und sparsame und bessere Methode wäre?
    Könnte diese Funktion die ich derzeit habe auch zu Server laggs führen??


    So ist es aufgestellt:






    Liebe Grüße

  • Normales Schreiben in Dateien:


    http://wiki.sa-mp.com/wiki/Category:File_Functions
    http://wiki.sa-mp.com/wiki/Fopen
    http://wiki.sa-mp.com/wiki/Fwrite


    Führt zu keinen Lags, da Du mit fopen und dem Modus io_append (Siehe fopen) ans Ende einer Datei springen kannst und deinen Inhalt dranklatschen kannst, ohne die Datei neu zu schreiben. Wegen der Zeit


    http://wiki.sa-mp.com/wiki/Gettime
    http://wiki.sa-mp.com/wiki/Getdate


    Gruss


    Edit: Iwie hast Du deinen Post grad überarbeitet xS

  • also ich nutze ein plugin filemanager.


    was er macht
    er erstellt automatisch täglich ein neun log ortner mit dem datum und die datein


    bei mir siet es zur zeit so aus


    und im script muss man nur eins machen und zwar wie er es loggen soll z.b.
    format(Query,sizeof(Query),"%s hat sich mit der Ip-Adresse %s eingeloggt.",SpielerInfo[playerid][sName],SpielerInfo[playerid][sIp]);
    EnterToLog("Einloggen",Query);



    fals du hilfe brauste sag bescheit


  • Wieso ? :huh:


    Du kannst das auch mit ganz normalen Funktionen von Pawn hinbekommen, dafür brauchste kein extra Plugin ^^


    mfg. :thumbup:



    ich/wir nutzen es aus ein guten grund damit wir nicht so viel machen müssen :)
    hört sich blöde an aber man erleichtert sich doch imemr die arbeit irgendwie :)


    ob ich jetzt datei erstelln lasse usw. oder wie jetzt nur im befehl rein hau entertolog ist ein kleiner utnerschied ^^

  • So ist die Funktion aufgebaut:


    stock LogDDealer(text[])
    {
    new File:LogFile, jahr, monat, tag, stunde, minute, sekunde, string[128], path[64];
    getdate(jahr, monat, tag);
    gettime(stunde, minute, sekunde);
    format(path, sizeof(path), "/Logs/DDealerLog/%02d-%02d-%d.txt", tag, monat, jahr);
    LogFile = fopen(path, io_append);
    format(string, sizeof(string), "[DDealer] [%02d:%02d:%02d] - %s\r\n", stunde, minute, sekunde, text);
    fwrite(LogFile, string);
    fclose(LogFile);
    return 1;
    }


    stock PayLog(text[])
    {
    new File:LogFile, jahr, monat, tag, stunde, minute, sekunde, string[128], path[64];
    getdate(jahr, monat, tag);
    gettime(stunde, minute, sekunde);
    format(path, sizeof(path), "/Logs/ZahlenLog/%02d-%02d-%d.txt", tag, monat, jahr);
    LogFile = fopen(path, io_append);
    format(string, sizeof(string), "[ZAHLEN] [%02d:%02d:%02d] - %s\r\n", stunde, minute, sekunde, text);
    fwrite(LogFile, string);
    fclose(LogFile);
    return 1;
    }


    stock BankLog(text[])
    {
    new File:LogFile, jahr, monat, tag, stunde, minute, sekunde, string[128], path[64];
    getdate(jahr, monat, tag);
    gettime(stunde, minute, sekunde);
    format(path, sizeof(path), "/Logs/BankLog/%02d-%02d-%d.txt", tag, monat, jahr);
    LogFile = fopen(path, io_append);
    format(string, sizeof(string), "[BANK] [%02d:%02d:%02d] - %s\r\n", stunde, minute, sekunde, text);
    fwrite(LogFile, string);
    fclose(LogFile);
    return 1;
    }


    stock AuszahlenLog(text[])
    {
    new File:LogFile, jahr, monat, tag, stunde, minute, sekunde, string[128], path[64];
    getdate(jahr, monat, tag);
    gettime(stunde, minute, sekunde);
    format(path, sizeof(path), "/Logs/AuszahlenLog/%02d-%02d-%d.txt", tag, monat, jahr);
    LogFile = fopen(path, io_append);
    format(string, sizeof(string), "[AUSZ] [%02d:%02d:%02d] - %s\r\n", stunde, minute, sekunde, text);
    fwrite(LogFile, string);
    fclose(LogFile);
    return 1;
    }


    stock EinzahlenLog(text[])
    {
    new File:LogFile, jahr, monat, tag, stunde, minute, sekunde, string[128], path[64];
    getdate(jahr, monat, tag);
    gettime(stunde, minute, sekunde);
    format(path, sizeof(path), "/Logs/EinzahlenLog/%02d-%02d-%d.txt", tag, monat, jahr);
    LogFile = fopen(path, io_append);
    format(string, sizeof(string), "[EINZ] [%02d:%02d:%02d] - %s\r\n", stunde, minute, sekunde, text);
    fwrite(LogFile, string);
    fclose(LogFile);
    return 1;
    }