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 CORE:ERR in [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[1620]: <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

Enjoy

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.

Troubleshooting

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.

Literature

man NetworkManager.conf

Product Documentation for Red Hat Enterprise Linux 8: Configuring and managing networking: Chapter 44. Introduction to NetworkManager Debugging

Arch Wiki: NetworkManager

Adminstrivia

Tested on Ubuntu. NetworkManager logo is the property of it's owner. This article has been updated after publishing.