README - stats ============== Diese Skripte bilden das Herzstueck des Statistiksystems. Sie _sind_ das Statistiksystem. foreverstats - Die ewigen Statistiken Version 2, die aktuell laeuft Version 3, die neue (schoenerbesserbunter), mit Suchfunktion in der Datenbank und Template- Unterstuetzung (wer hat da "PHP" gerufen?) WAP-Version. dailystats - Die Tagesstatistiken HTML und WAP. playerstats - Statistiken fuer einzelne Spieler. Von den dailystats und foreverstats gelinkt. makedb Macht aus gs_analyze-Ausgaben SQL makerank Berechnet die Raenge in der ewigen Bestenliste databasectrl Ein Shellscript, das makedb und makerank aufruft. Der Lauf der Daten vom Quake-Server zur Webseite laeuft ueber verschiedene Stufen. Die vom Server erzeugten Logs werden von gs_analyze in ein Zwischenformat gewandelt, und dann per FTP-Upload auf den Webserver geschoben. Hier kommt ein Synchronisationsproblem ans Licht. Der Quakeserver rotiert (in unserem Fall) taeglich um 6 seine Stats, und wertet sie danach mit gs_analyze aus. Dann kommen die Zwischenlogs auf den Webserver. Nun weiss der Webserver leider nicht, wann es beim Quake- server 6 Uhr ist. Da wir uns Konstukte wie rsh gerne ersparen wollten, haben wir einen anderen Weg gewählt. Der Quakeserver uebertraegt neben dem Logfile noch eine Datei namens first.run. Diese enthaelt nur eine 1. Jedesmal wenn entweder foreverstat oder dailystats aufgerufen wird, wird der Inhalt dieser Datei ueberprueft. Ist er 1, so wird databasectrl.sh aufgerufen, das wiederum das Logfile in die Datenbank ueberfuerht. Dann wird der Inhalt von first.run auf 0 gesetzt. Solange, bis ein neues Logfile vom Quakeserver kommt. In allen Skripten, die auf die Datenbanken zugreifen, gibt es Variablen, die den Benutzernamen und das Passwort setzen, mit denen auf die Datenbank zugegriffen wird. Im Moment sind diese beiden Felder leer. Der Name der Datenbank wird mit "stats" angenommen. Die Datei "stats.sql" enthaelt die SQL-Aufrufe, die die von den Skripten benoetigten Tables erstellen. In allen Skripten, die auf die Datenbanken zugreifen, gibt es In allen Skripten, die auf die Datenbanken zugreifen, gibt es Variablen, die den Benutzernamen und das Passwort setzen, mit denen auf die Datenbank zugegriffen wird. Im Moment sind diese beiden Felder leer. Der Name der Datenbank wird mit "stats" angenommen. Die Datei "stats.sql" enthaelt die SQL-Aufrufe, die die von den Skripten benoetigten Tables erstellen. Variablen, die den Benutzernamen und das Passwort setzen, mit denen auf die Datenbank zugegriffen wird. Im Moment sind diese beiden Felder leer. Der Name der Datenbank wird mit "stats" angenommen. Die Datei "stats.sql" enthaelt die SQL-Aufrufe, die die von den Skripten benoetigten Tables erstellen.