To Fix a Script


Danger, Danger Will Robinson!

I monitor a lot of things about our server, however, the one I'm always most concerned about is disk space. I noticed that our space was getting low for what I like to keep so, priorities shifted and I got to work on redoing all of our scripts. Nobody likes it when a server runs out of disk space.

Keepin' it Real

We keep an awful lot of data on hand to be sure we can always roll back if needed. The real question was - how much of it did we actually need to keep? I looked over e-mail records from the last year or so and realized that 99% of the time if we are needing a backup it's either a player's file got corrupted or their EQ threading got broken. This means I could throw away a good portion of what we have traditionally saved and still provide the same level of service and save that space for more useful stuff.

Ready, Set, Wait

The plan going in was to do some small modifications to the scripts, however, as I examined the current backups I noticed that every so often a backup would fail. This isn't a problem in itself - it happens - but what bothered me was that the mechanism was no longer verbosely logging its actions due to a change in how our host operating system executes tasks. This needed to change.

We're Going to Need a Bigger Boat

The scripts turned from a roughly 20-30 line affair to just shy of 1000 lines after finishing my tests and refactoring to make them a little more clean. We get the benefit now of a couple exciting things.

  • Backups are now much smaller in size because of a better compression format
  • Player Data & Threaded EQ data is available for the past 14 days
  • Backups now give us not just a failure notice, but also WHY they failed
  • Certain data that was archived but never compressed is now compressed based on business rules over time saving us a lot of space
  • All backups use a common set of facilities which means easy addition and maintenance over time

RetroEQ: Users & Issues

For folks who may have issues with RetroEQ - what seems to fix it for most is clearing cache and cookies. All reported player issues that were not traced to site code were resolved by those quick and easy steps. If for whatever reason you still have issues with the site please target your bugrep to website and mention your operating system version, web browser version, and any pertinent add-ons like AdBlock, NoScript, and similar things.

Great Stuff, but it's not Channeler - what about Channeler?

You're right, it's not channeler, but it is something that needed to be done sooner rather than later. Channeler work will now resume and there will be a post update at some point later this coming weekend.