Where is the money going? That was the question on my mind in 2006. I wanted a way to track my expenses. That’s how MoneyTracker was born. In the beginning, there was a text file. “Wait, a text file?” I hear you ask. Well, yes. I wanted something simple. I still do. Everyone does - at first. But complexity tends to grow with our needs. I can’t count the number of times I was commissioned to build a “super simple” system only to dig into the details and you know what lies there, don’t you?
After many years of private development, I have decided to publish the source code for Money Tracker, my personal finance manager. The story of how it came to life is another post I am still working on but it’s been online for quite a while. With that, I am hoping to publish a release blog post whenever there is something substantial to share about the new release. A lot of work went into this release though most of it is not visible to the end user.
In the previous blog post, I set up Telegraf instances to push host metrics to an InfluxDB instance that was set up within my home network. But there’s a problem. One of the machines that I also want to keep an eye on is a Linode VPS that I run my projects on. But to do that, the Telegraf instance running on the VPS should be able to reach the InfluxDB instance inside my network.
I was on the lookout for a simple monitoring solution to keep an eye on a few servers that I am managing. There’s no shortage of monitoring solutions to choose from these days. However, I got lost in a sea of complexity. Most of them were meant for the enterprise. Meaning they were slow, complex and expensive. Not surprising, I guess, considering that’s where the money is. The solutions also seemed like they were meant for monitoring 100s(1000s?
When working as part of a team on a Django project, it is often useful to have a per-host settings file. There are many ways to do this but the approach that I liked most is creating a local_settings.py file in each environment. I’m often the only programmer on web projects, but even then I still find it helpful to have a local_settings.py file on my local host. In it I include things such as debug-related settings, test keys for the different API providers, a modified logger configuration and flags that turn off any added security measures.