December 9th 2021

Update Log #1

TLDR

LVKSH/Logger

Yes, another package, what can I say, I love writing packages 🤷. No but to be forreal, over the course of years I and a lot of the people around me have I have seen/caught implementing logging functionality in a variety of ways. And let’s be real, its very understandable, there is no (as far as I know) reasonable/understandable logging library out there, and obviously noone wants their logs to end up looking like this:

Bad Log Example

So let’s fix that! I will be writing another article on this soon but the gist is pretty simple. Install the package, set it up the way you prefer to log and yeet, it works.

Bad Log Example

Much better. Multi-line, Util-Inspect, Colors, just click here

Grafana

So recently logging and other fun information stuff has come to light. Not just, in an stdout/console sense, but in a data sense. To summarize: Me wants graphz. In order to do so I’ve setup a seperate k3s clustert to do all the monitoring. This cluster is located in a different datacenter and should always be online to be able to keep track of things. Grafana is a piece of software that allows you to import datasources (Prometheus, InfluxDB, etc)

Yes, eventhough the database got wiped a few minutes before this picture was taken, I am still posting it here!

Prometheus

So although Grafana is an awesome tool for visualizing data, the data needs to come from somewhere, that is where Prometheus comes in, prometheus keeps track of all the awesome data we collect. Prometheus has the concept of exporters which are essentially applications that run on the target you are trying to monitor, and they expose an endpoint for prometheus to scrape with all the metrics.

InfluxDB

InfluxDB takes another approach to the issue of data collection. In contrast to Prometheus, InfluxDB doesn’t scrape the data but rather lets services push data to it. It is essentially a fast timeseries database to which you can push all your metrics ranging from cpu-usage to website visits.

Plausible

So collecting analytics on your systems is fun, but hear me out, the frontend. Traditionally we would use something like Google Analytics in this scenario to make life easier. But from a completely realistic perspective, I care about privacy, and I hope so do you. And with the monopoly that greater services like Google have nowadays in addition to my selfhosted mentality, I would prefer to opt for the self-hosted alternative. Thus Plausible came on the radar. Originally I first saw Plausible in use at a Blog ( found here ) by Jake HowardJake Howard .

Selfmade Analytics

With the above in mind, plausible seems like a great solution. However, there is one issue. For somebody (me) who creates tech/privacy/random person-related content, A large majority of my audience/userbase makes use of privacy-protecting tools such as adblocker extensions, brave, etc. The downside to this is that for most of these users’ plausible is unable to track them. Therefore, I am hereby putting on the roadmap, creating a simple, privacy-friendly, plausible alternative, that should/might bypass protective measures like the above mentioned.

Promcord

Last but not least we have Promcord. Promcord is a little application written in Java that connects the Discord and exports all its data as a Prometheus Exporter. This means that Prometheus can easily scrape Promcord every few seconds and collect metrics on your discord server. As already shown in the screenshot above, it keeps track of some interesting statistics like how many people are in Voice Channels, how many messages have been sent, by who, and in what channel/guild. And so much more. Definitely worth a look.

FINAL

That was about it for what I did recently. I thought I’d write a little post about it seeing as I tend to have a lot of people ask what I am up to and show interest in those kind of things. If you want to see more highlights like this, shoot me a message! I’m looking forward to the feedback. Might do one again sometime soon! Until then, Cya!

~Luc