High Availability Rails Cluster

Tuesday, 08. 19. 2008  –  Category: all, sw, web

I’ve been asked about this a few times, so I figured I’d post here. This is a brief description of a highly available Rails cluster I’ve built. Some preliminaries:

There’s no invention here, I believe this setup is very common.
High availability isn’t the same thing as load balanced. There is nothing here to intelligently shared load [...]

Javascript Trac Bookmark

Friday, 07. 11. 2008  –  Category: all, web

Substitute https://trac.example.com for your Trac instance and drop into a Firefox bookmark, perhaps on the toolbar:
javascript:q=’%s’;if(q==’%'+’s’)void(q=prompt(‘Trac%20#’,”));if(q)location.href=’https://trac.example.com/trac/ticket/’+escape(q);else%20location.href=’https://trac.example.com/trac/report/1′
Click / select the bookmark to be prompted for a Trac issue number, which you can leave blank to just load /report/1
Extra credit for assigning a keyword (eg ‘ktx’) in the bookmark properties, allowing you to just type, eg, ‘ktx [...]

rotatelogs

Thursday, 10. 20. 2005  –  Category: todo, web

I’m basically a fan of rotatelogs(1) for Apache logging: no need to gracefully restart, easy filenames to script with, encourages log ageing.
I do however find myself forever doing stuff like
$ ls -tr /a/log/dir | tail
error_log.1129593600
error_log.1129680000
error_log.1129766400
$ tail -f error_log.1129766400 to diagnose a problem.
What would be cool was if rotatelogs linked, say, error_log.current to the, er, current [...]