I wish that systemd (and everything) would rate-limit configuration warnings
If you have an Ubuntu 22.04 machine and you use the 'oidentd' package, you're probablyseeing a lot of noise in your logs that looks like this:
systemd[1]: /lib/systemd/system/oidentd@.service:10: Standard outputtype syslog is obsolete, automatically updating to journal. Pleaseupdate your unit file, and consider removing the setting altogether.
The obvious reason you're seeing this message is that the 22.04'
A brief history of looking up host addresses in Unix
In the beginning, back in V7 Unix and earlier, Unix didn't havenetworking and so the standard C library didn't have anything tolook up host addresses. When BSD famously added IP networking toBSD Unix, that had to change, so BSD added C library functions tolook up this sort of information, in the form of the gethost*functions ,which first appeared in 4.1c BSD but are probably most widely knownin the 4.2 BSD version .Because this was before
Using Prometheus's recent '@ end()' PromQL feature to reduce graph noise
Modern versions of Prometheus support a special '@' time modifier on PromQL queries .These let you evaluate a part of the query at a specific, fixedtime, rather than at either the 'now' of an instant query or atevery step of a range query . In addition toliteral times, this can use two special time functions, ' start() 'and ' end() ', which evaluate to the start and end of a range query.
The @ modifier was introduced (as a then
Python is my default choice for scripts that process text
Every so often I wind up writing something that needs to do somethingmore complicated than can be readily handled in some Bourne shell,awk, or other basic Unix scripting tools. When this happens, thelanguage I most often turn to is Python, and especially Python ismy default choice when the work I'm doing involves processing textin some way (or often if I need to generate text). For example, ifI want to analyze the output of some command and generate Prometheusmetrics from it, Python
How systemd names instances of templated socket service units
Systemd famously has socket units ,which cause systemd itself to listen on something and start a systemdunit when the there's traffic. In other words, systemd can act like(x)inetd. When you do this for a stream-based service (such as aTCP based one), there are two options for what systemd should dowhen there's a connection, controlled by the Accept= setting.
The default and normal behavior (in systemd) is ' Accept=no ', whichcauses systemd
Print based debugging and infrequent developers
I've long been an enthusiastic user of print based debugging , although I did eventually realize that I reach for a debugger when dealing with certain sorts of bugs . But print based debugging is eternallycontroversial, with any number of people ready to tell you thatyou should use a debugger instead and that you're missing out bynot doing so. Recently I had a thought about that and how itinteracts with how much programming people do.
I have in the past written about the division between frequentdevelopers and infrequent
What ZFS 'individual' and 'aggregated' IO size statistics mean
If you consult the zpool iostat manualpage, one of the things it will tell you about is request size histograms,which come in two variants for each type of ZFS IO:
Print request size histograms [...]. This includes histograms ofindividual I/O (ind) and aggregate I/O (agg). These stats can beuseful for observing how well I/O aggregation is working. [...]
This leaves many things unexplained. Let's start with what aggregatedIO
To be fully useful, Prometheus histograms want their cumulative sums
True Prometheus histograms havea specific set of metrics and time series that they're made up of.As covered in the documentation, there are a bunch of' However Today I wound up re-learning something that I sort of already knewabout the IO statistics about pools and vdevs that you can getthrough things such as zpool iostat .Namely, that at least for bytes read and written and the number ofIO operations, these IO statistics are what I call physical IOstatistics; they aggregate and sum up the underlying physical diskIO information. Whenever you're generating IO statistics for a logical entity withredundancy, you have a choice for how to present information aboutthe volume and Modern Linux kernels want to do kernel mode setting (KMS) . One of the consequences of KMS isthat the 'text' console goes through modesetting during boot . On desktops, you don't usually use atext console and KMS is necessary anyway for your graphical desktop;if modesetting is broken, you won't get far. On servers thebenefits are lower and the downsides larger ;with KMS enabled, modesetting must work in order for you to haveany text console. Lately, I've come
ZFS pool IO statistics (and vdev statistics) are based on physical disk IO
Some pragmatic issues with Linux kernel mode setting on servers
Menu