About
This is a technology blog by Matthias Friedrich, a software developer and architect from Karlsruhe, Germany. more ...-
Recent Posts
Tags
- android
- backup
- best practices
- books
- build systems
- c/c++
- computer science
- databases
- deployment
- distributed systems
- django
- docker
- documentation
- go
- hadoop
- java
- java python
- kubernetes
- libraries
- linux
- machine learning
- maven
- meta
- monitoring
- music
- musicbrainz
- networking
- opinion
- oracle
- process
- productivity
- prometheus
- python
- quality
- quick tips
- rcs
- scalability
- scheme
- scripting
- security
- server
- shell
- standards
- testing
- tools
- ubuntu
- web
- xml
Author Archives: Matthias
Testing Alertmanager
When a Prometheus alerting rule fires, the Prometheus server sends a notification to the Alertmanager, which is then responsible for processing that alert further, i.e. by routing it to an appropriate alerting channel (e-mail, Slack, …). In order to test … Continue reading
Playing with WebAuthn
On the internet today, our online accounts are exposed to a lot of risks. Leaked passwords from break-ins at major Internet properties or phishing attacks have lead to many account breaches. In order to protect my high-value accounts, I have … Continue reading
Using Kubectl Printers and Plugins
Even though we have plenty of metrics and dashboards at work, I use the kubectl command line tool a lot for looking at resources and for troubleshooting. Because the defaults don’t always display the information that I need, I often … Continue reading
Monitoring Log Statements in Go
Good monitoring and alerting are essential for running services in production. As a Java developer, I’m a bit spoiled by my platform of choice, Spring Boot 2. Thanks to Micrometer it provides out of the box instrumentation for HTTP requests, … Continue reading
Additional Workspaces in Gnome
I use Gnome on Ubuntu 18.04 with static workspaces and switch between them using keyboard shortcuts – for example, ALT+1 takes me to workspace one. Unfortunately, using the graphical settings editor, I was only able to assign keyboard shortcuts to … Continue reading
Retries Can Kill You
In a large-scale distributed system, it’s inevitable that some requests will fail. Even if your collaborating systems work perfectly, sooner or later you will experience temporary network issues and other intermittent errors. That’s why a lot of people try to … Continue reading
Prometheus and Spring Boot Health Checks
When trying to set up alerting for Spring Boot services with Prometheus, I discovered the synthetic “up” time series which is great for checking whether the monitoring system can reach my service instances. While this is a great thing, I also … Continue reading
DNS Over HTTPS
With much of the web switching to HTTPS and at least some people becoming more concerned about privacy, DNS has recently come into the spotlight because it provides an ISP with the ability to monitor which websites a user visits. … Continue reading