Remove NetworkManager Log Junk
Some versions of NetworkManager produce a lot of log junk. Sometimes, the spurious logs are the main thing jogging the disk.
Keep the useful logs, get rid of the junk. Set
[logging]. How? Read on...
The Problem - a lot of useless error messages
Some versions of NetworkManager fill logs with useless error messages
$ sudo tail -F /var/log/syslog # quit with ctrl-C Oct 29 12:46:57 terokarvinencom NetworkManager: <warn> [123456.789] error requesting auth for org.freedesktop.NetworkManager.enable-disable-connectivity-check: Authorization check failed: Failed to open file “/proc/7388/status”: No such file or directory
Not only do they obscure the imporant messages, but sometimes they are the main user of the disk. You can check the situation with
$ sudo iotop -oa
The Fix - only log useful info
Luckily, you can change NetworkManager logging level by domain. This means you can get rid of the useless messages and keep the others.
Let's create a new snippet of configuration
$ sudoedit /etc/NetworkManager/conf.d/no-log-junk.conf
Contents of the file. The change is CORE:ERR, everything else just repeats the defaults.
[logging] domains=PLATFORM,RFKILL,ETHER,WIFI,BT,MB,DHCP4,DHCP6,PPP,IP4,IP6,AUTOIP4,DNS,VPN,SHARING,SUPPLICANT,AGENTS,SETTINGS,SUSPEND,TEAM,DCB,DISPATCH,AUDIT,SYSTEMD,PROXY,CONCHECK:ERR,FIREWALL,ADSL,BOND,VLAN,BRIDGE,OLPC,INFINIBAND,DEVICE,CORE:ERR # See https://terokarvinen.com/2022/network-manager-log-junk/
Restart the daemon for changes to take effect
$ sudo systemctl restart NetworkManager
To verify that it worked, simply follow the log for a while.
$ sudo tail -F /var/log/syslog # quit with ctrl-C
The useless messages are gone, the important ones are still there.
If it worked, well done, you're done here.
How did you know what to write, Tero?
I checked the current logging settings
$ nmcli general logging LEVEL DOMAINS INFO PLATFORM,RFKILL,ETHER,WIFI,BT,MB,DHCP4,DHCP6,PPP,IP4,IP6,AUTOIP4,DNS,VPN,SHARING,SUPPLICANT,AGENTS,SETTINGS,SUSPEND,CORE:ERR,DEVICE,OLPC,INFINIBAND,FIREWALL,ADSL,BOND,VLAN,BRIDGE,TEAM,CONCHECK:ERR,DCB,DISPATCH,AUDIT,SYSTEMD,PROXY
I modified NetworkManager.conf to first disable my best guess, CONCHECK, but it was not that. Then disabled half of them. Then iterated until I found the culprit. It was CORE.
Finally, I modified the logging level of just CORE. The spurious CORE errors were of level WARN, so I raised it to ERR.
Finally, I separated my configuration to a dot-dee config snippet.
Did you amke a typo? Just check syslog when restarting NetworkManager, it will tell you exactly what the problem is.
CORE:ERR did not get rid of the spurious error messages? Just follow my procedure to get rid of almost any type of useless error message produced by NetworkManager.
Product Documentation for Red Hat Enterprise Linux 8: Configuring and managing networking: Chapter 44. Introduction to NetworkManager Debugging
Tested on Ubuntu. NetworkManager logo is the property of it's owner. This article has been updated after publishing.