Tracker documentation

This documentation is intended for admins running the MoE / LFS-Tracker, created by Wolfgang Tom (WolleT) and modified by Michael Booth (boothy). This page provides general information and help for the tracker, while the other two pages linked about provide more in-depth help with the admin side of the web tracker, and the local tracker respectively.

This tracker and the accompanying documentation are released under the "DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE" - view the licence text.

You may post in the LFS forum thread with any issues you have, or contact me via email or on msn - however if you clearly have not read these documentation pages then you will simply be ignored.

Contents

  1. Setup Guide
    1. Requirements
    2. Installation
    3. Best practices
  2. General tracker information
    1. Specifications
    2. History
    3. Development
    4. Known issues

Setup guide

The tracker consists of two parts:

  1. recording insim data from LFS servers and storing it into a MySQL database (local tracker);
  2. running a PHP web page which connects to the database, manipulates the data and then produces the HTML pages on the web server (web tracker).

Requirements

The web tracker requires PHP (5+ preferably) and access to the MySQL database in which the data is being stored. The ability to utilise .htaccess files is also desirable to aid caching, enable gzip compression and to set a password on the /admin directory. Also, to maintain interoperability with others running this tracker, the following database information should be used:

databasevalue
namemoetracker
usermoesite
passwordmoepassword

The password may need to be MySQL 4.0 compatible if you experience problems. In addition, the db.sql tables supplied with the local tracker should be used to produce the data and race database tables. You will probably also need to ensure the default MySQL port, 3306, is open on your router/computer.

You will also need the details of the LFS server(s) - with the language set to english to ensure all of the tracker features work. A decent knowledge of how to run a website, and some database/phpmyadmin knowledge would be advantageous, especially if things go tits up!

Installation

Quick start guide

  1. Extract the web tracker files and upload onto the web server, and the local tracker files somewhere on your computer
  2. Edit the team data & config files, set the track status and database server, and create any images and/or edit the css/.htaccess files
  3. Create the database and user, import the db.sql file, and set the server details in conf/server.txt
  4. OPTIONAL: edit lines 6-8 of insim/vr.php to enable qualifying or practice tracking - race is enabled by default
  5. Start the localtracker before the race (preferably in the end race screen)
  6. Run the update page and allow it to continously refresh

For the longer start guide, please feel free to delve into the PHP files!

Best Practices

Any new images should be run through Yahoo's Smush.it

Tracker performance

Also, before each race the hour_xx.html files should be deleted so that for the next race, new files are produced.

And after each race, the .html files, along with config.php and teams.yaml/.csv should be downloaded into their own folder to allow archiving of the results. This should be complimented with an export of the database, so that the tracker can be recreated at a later data if required.

General tracker information

Specifications

History

The tracker was originally developed by Wolfgang Tom (WolleT) and used for Masters of Endurance in 2007. Before the 2008-09 season he stopped development and running of the MoE tracker, but handed it over to Casper Roescher (Kaspur). The image to the right is the final time the WolleT tracker was used on the MoE server - the original source of this tracker can be downloaded from my dropbox (987KB).

I first got my hands on the WolleT tracker in July 2009, when dekojester became involved in the running of GTAL. Having seen it being used for Masters of Endurance, IGTC and GTAL, I thought it would be interesting to see how it worked, and more importantly, to improve it's functionality and also visual appearance. It was from far an easy task - there was no documentation and at first it was just a case of understanding how all of the files came together to produce what you see on the screen, with my basic PHP knowledge. I stripped the web pages down - removed the CSS and redundant HTML, and began testing different things out under the hood.

We first ran the tracker publicly in IGTC 2009's penultimate round, and while the web tracker worked well, the PHP page recording the data from the server timed out after 2 hours (we were running it in a web browser...!) However Kaspur sent us the local tracker he had been using, first created by WolleT and Frankmd a few years previously for MoE. This ran the PHP recording page from the command line, and meant very few time outs, if none at all!

Further improvements were made before the start of the 09/10 MoE season, and have continued ever since, with more features, easier admin controls and better CSS. Since then it has continued to be used for MoE, as well as IGTC, GTAL, and other events. However just like LFS development, it is extremely hard to achieve perfection, as most of the easy stuff has already been done, and essentially the initial design is the limiting factor of any further improvements without it taking ages to make them.

Development

The tracker is in constant development, so if you have an idea or have code that you would like something added, please let me know. Some things on the to do list include:

Although the original creator has described the code of the tracker as "very shitty" - using a massive array to service all of the data - it is still very much usable and fit for purpose. However I am sure there are better and more efficient ways of doing the same job, e.g. object oriented programming, however I do not have the time or inclination to recreate the tracker in a different way, but if you want to, go ahead and be my guest.

Known issues