Software Engineer

Jason Hancock

last update:

I’ve been dabbling with the Go programming language lately. I find that when learning a new programming language, I do better if I’m building something useful. I decided to build a prototype proxy server for Graphite’s Carbon service that authenticates metrics before passing them on to Carbon. You can find the code on Github.

announcement

My wife and I have a little announcement. Head over to baby.jasonhancock.com to check it out.

A new version of the VersionAssetManager has been produced that is compatible with Yii2. You can find it as an installable package on Packagist, or the source code on Github.

Update 2014-08-13: A new version of the VersionAssetManager has been produced that is compatible with Yii2. Read more about it here or find it as an installable package on Packagist, or the source code on Github. I’ve been playing with the Yii PHP framework for a while now. I evaluated several PHP frameworks and found that I liked Yii the best. I started building apps and ran into a problem with cache busting for images, css, javascript, etc.

redis_loading

I have been testing Redis at work getting familiar with the various modes of persistance. Usually I treat Redis like memcache and disable persistance, but we have a use case that requires us to persist the data. I started playing with the RDB and AOF files and stuff. One thing we wanted to test was how long it takes to load the files on startup with a large data set (large for us is 10GB or so).

puppetconf 2012

I’ve been at PuppetConf for the last couple of days. As usual, it has been an amazing experience and worth the price of admission. After seeing the presentations, I have a few things I’d like to explore when I get back to the office next week: Puppet 3.0 has been released (to the dev repos- hits prod repos on Monday apparently). Logstash rspec-puppet I want to get reinvigorated about the cloud Random tools Puppet3.

Let’s say you wanted to tie into Puppet’s inventory service from a PHP app. I wanted to do just that, so I started googling around to see if someone already done it. I found an Ubersmith plugin that had some code and a great writeup on generating the certificate, which I’ll paraphrase here. To generate a certificate called somecert on your puppetmaster, run this: puppet cert generate somecert cat /var/lib/puppet/ssl/private_keys/somecert.pem /var/lib/puppet/ssl/certs/somecert.

Inspired by this post from Oliver Hookins, I modified my puppetmaster’s apache configuration as described in the post (added the %D). Once I had some logs, I needed to parse them, but the script that Oliver wrote hasn’t been released. It isn’t pretty, but I threw together a quick perl script to get the job done. You can find it here.

I’m new to Graphite. From all the buzz on twitter and what I’ve gotten my hands on so far, it’s pretty cool. One of the problems (or features) is that Graphite has a great api, so quite a few third-party dashboards have popped up. Tasseo is one such dashboard. I like it for it’s minimalistic appearance that packs in just enough data to give you everything you need to know in a quick glance.