So I’ve been very lax in posting. I’m very busy lately with rock climbing and work and other social things.
I have so many things to talk about like the awesomeness of OS X Server, MCX, LDAP and other nifty things. I haven’t been doing much Ruby development lately since I have other priorities. Reve is moved over to github.
I will no longer be updating svn here at crudvision.com. I want to move Reve to git (at github). I won’t do it if I can fall back to svn, so I’m jumping ship.
Moving to github will also mean I can dump dreamhost as a host and move crudvision.com to my colocated machine to save money each month.
I’m sorry for the complete void in posting. I’ve been very busy with life, work and rock climbing. Yes, that’s right, rock climbing.
In early March I started a new job in Toronto for a gaming company (I’m not really allowed to talk about it much, unfortunately). I’m a sysadmin there and I love it. It’s much better than developing the same web applications over and over. I’m almost ready to resume programming for a hobby now that I don’t do it all day every day for pay.
And the rock climbing. My partner and I started climbing recently. We’ve noticed an unusual number of IT professionals that climb! It’s cool and odd at the same time.
I hope to post more, but the real goal of the post is to say that I’m ditching subversion, trac and intend to use github as the only source of documentation for Reve. (I just hope I can get traffic from github to this blog to pad my ego.)
James Harrison brought to my attention a couple of bugs in Reve and I’ve released a new gem of Reve to resolve the issues.
The fixes are:
* Soverignty now casts constellation_sovereignty to an integer (Fixnum)
* Conquerable Stations method now reports fields correctly.
* RDOC updated for the above
I’ve begun playing with git over at github by importing Reve’s source.
Eventually I will do away with subversion and trac and move to github for Reve completely. Trac is not very good and often locks up.
As I’m still new with git and github I’ll have to keep contributions to a minimum since I don’t know exactly what I’m doing.
There’s a new revision of Reve that has just been uploaded to Rubyforge: Revision 99.
This includes a major change – Reve is now licensed under a proper license: the MIT License. The terms of the license are now distributed with the package and are.
There is also a fix for the character_id that came back from a market order request.
Why a new license now? Simply because I think it’s important to realise that it’s unlikely that anyone will use Reve to create some billion dollar enterprise that I could have got in on. Yeah, not everyone can be Delicious, Flickr or Facebook. ha ha.
So go forth, ye multitudes and fix, hax, and use. Ruby and Rails both use the MIT license so now Reve should be at home.
Here’s a quick announcement to let people know that Reve (0.0.96) now supports Factional Warfare.
The cool new things are:
I know the documentation may not be the best, but I’ll do my best to improve it for the next release.
Grab the new gem (0.0.96) and give it a whirl!
Just a quick note. There’s a new Reve gem out as of June 7th. This one’s release notes are:
- Typo fix in Reve::Classes::MapKill – shipJills -> shipKills
- Resolve trac ticket 3 (lowercase field names in postfields method)
- Update documentation to make ‘charid’ more consistantly ‘characterid’
- Resolve trac ticket 2 (Reve does not use @charid, but takes it as an argument in initialize)
- Be strict about currentTime’s casing.
The code changes can be seen At the Reve Trac.
Last month I made a post about using rrdtool and ruby to graph hard disk temperatures. I recently had some hardware trouble and something with permissions went crazy. Today I took the time to look into the problem and fix it.
The /dev/hd[egik] device nodes were owned by root:disk and 660. However, the hddtemp binary was trying to do some restricted ioctl operations. Even though the binary was setuid and my non-root user was in the disk group I couldn’t access the disk to get the temperatures.
I found out that there is a hddtemp daemon which can query the disks for my unpriveleged user.
The daemon listens on a TCP port and provides output like this:
|/dev/hde|ST3160811AS|39|C||/dev/hdg|ST3160811AS|40|C||/dev/hdi|ST3160811AS|38|C||/dev/hdk|ST3160815AS|39|C|
Should be easy to modify my disk_temperature.rb to connect to that port and parse the data.
Now my temperature graphs will have new data (as soon as the change is made).
Since I got to North America I have wanted to put my system under better monitoring. It’s got four active hard disks (and a fifth powered, not active) hard disk in an IcyDock MB-455SPF 5-Bay Internal SATA Drive Enclosure (Manufacturer site, icydock.com, seems offline so link to where I bought it!) with the four active disks plugged into a HighPoint RocketRaid 1640 SATA controller.
I can easily use S.M.A.R.T. to monitor the temperature and the hddtemp Linux utility to get the temperatures of the disks.
It’s easy to use a crontask to poll the disks and to stuff the temperatures into an rrdtool database. I drew much inspiration from Martin Pot’s Perl script to do the same thing but implemented my own in a Ruby Rake task using the woefully undocumented RubyRRDtool gem and a custom hddtemp wrapper class to get the temperatures.
The similarities between my Rake task and Martin’s RRDtool-fu is obvious, however I wanted an hour graph too and so I added it in on line 17.
My next task is to combine the temperatures (lines) of all four disks into a single graph to get a feel for the overall temperature of the disks on one image.
The graphs can be seen at my personal website.
Another Reve release, 86. This time I’m fixing a bug with the strict XML parsing not picking up cachedUntil. Tests and test XML have been fixed. Check trac for specific changes.