7

During my time with Yosemite, I've had an innocuous issue that gets logged to system.log non-stop.

This question is not about solving the issue.

I'd like to stop the chatter, because they're writes to the drive which is an SSD, and could do without them.

How can I silence or prevent the writes to the log?

The messages come from the kernel and blame IO80211ScanManager. Example:
Nov 19 02:04:46 Louis-MBP kernel[0]: IO80211ScanManager::startScan: pid 29 had pending scan request. Deleting.

They dominate the log, whose 4000 most recent messages usually cover about a day.

10

Logging to system.log is controlled by the /etc/asl.conf file. The default is to send all kernel messages to system.log. If you add a priority level restriction, the trivial system complaints won't be logged.

Edit the file /etc/asl.conf and find a line that looks like this

? [= Sender kernel] file system.log

and change it to

? [= Sender kernel] [<= Level error] file system.log

Send a HUP signal to the syslogd process (or just restart your system) and the logging behavior will be changed. Use pgrep from Terminal to find the process ID for syslogd. E.g.

$ pgrep syslogd
21
$

Then send a HUP signal to that process ID with the kill program.

$ sudo kill -HUP 21
$
  • Your intimacy with this system is encouraging. At first glance I may still be getting the messages. Though it's quiet as I type. I'll refer to the asl.conf docs for now. Thanks for the suggestion! BTW, what is a HUP signal? Would you please consider making it a hyperlink? – Louis Nov 19 '14 at 7:54
  • Not working... will try moving up along the urgency threshold tomorrow, starting with critical, followed by alert, and finally emergency if thats how the alc.conf man page orders them. – Louis Nov 19 '14 at 8:07
  • @Louis at those levels other important messages will be lost - it would be better to filter out on more than the priority e.g. on the string IO80211ScanManager::startScan – Mark Nov 19 '14 at 17:15
  • @Mark Thanks, I'll look into how to catch something like that. For now I change it back to warning. But I get the general idea now of how to begin controlling the logs. It turns out the IO80211ScanManager was showing up in the wifi.log as well, so for now I just edited ? [<= Level notice] store to say ? [<= Level warning] store. Understanding that I'm not getting various notices, so far so good! – Louis Nov 19 '14 at 17:53
  • How to reverse all of this to it's original state? – Sayan Oct 24 '17 at 6:28
1

Delete the system log with the command

sudo rm /System/Library/LaunchDaemons/com.apple.syslogd.plist

macOS is the same as iOS. Whatever service is running is stored in a plist to give the command to run a script. So if you can disable or remove a service in iOS you can do it in macOS too.

This only deletes the system log service running on boot, nothing else. You can run logging manually if you want when you open the console.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .