¿Cómo deshabilitar el registro en system.log en OS X?

Durante mi tiempo con Yosemite, tuve un problema inocuo que se registra system.logsin parar.

Esta pregunta no se trata de resolver el problema.

Me gustaría detener el parloteo, porque son escrituras en el disco, que es un SSD, y podrían prescindir de ellas.

¿Cómo puedo silenciar o evitar las escrituras en el registro?

Los mensajes vienen del núcleo y culpan IO80211ScanManager. Ejemplo:
Nov 19 02:04:46 Louis-MBP kernel[0]: IO80211ScanManager::startScan: pid 29 had pending scan request. Deleting.

Dominan el registro, cuyos 4000 mensajes más recientes suelen cubrir alrededor de un día.

Respuestas (2)

El registro en system.log está controlado por el archivo /etc/asl.conf. El valor predeterminado es enviar todos los mensajes del kernel a system.log. Si agrega una restricción de nivel de prioridad, las quejas triviales del sistema no se registrarán.

Edite el archivo /etc/asl.conf y busque una línea similar a esta

? [= Sender kernel] file system.log

y cambiarlo a

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

Envíe una señal HUP al syslogdproceso (o simplemente reinicie su sistema) y se cambiará el comportamiento de registro. Úselo pgrepdesde Terminal para encontrar el ID de proceso para syslogd. P.ej

$ pgrep syslogd
21
$

Luego envíe una señal HUP a ese ID de proceso con el killprograma.

$ sudo kill -HUP 21
$
Su intimidad con este sistema es alentadora. A primera vista, es posible que aún esté recibiendo los mensajes . Aunque es silencioso mientras escribo. Me referiré a los asl.confdocumentos por ahora. ¡Gracias por la sugerencia! Por cierto, ¿qué es una señal HUP? ¿Podría considerar convertirlo en un hipervínculo?
No funciona... trataré de avanzar a lo largo del umbral de urgencia mañana, comenzando con critical, seguido de alert, y finalmente emergencysi así es como los ordena la página de manual de alc.conf .
@Louis en esos niveles, se perderán otros mensajes importantes; sería mejor filtrar más que la prioridad, por ejemplo, en la cadena IO80211ScanManager::startScan
@Mark Gracias, investigaré cómo atrapar algo así. Por ahora lo cambio de nuevo a advertencia. Pero ahora tengo una idea general de cómo empezar a controlar los registros. Resulta que el IO80211ScanManager también aparecía en wifi.log, así que por ahora solo edité ? [<= Level notice] storepara decir ? [<= Level warning] store. Comprendo que no estoy recibiendo varios avisos, ¡hasta ahora todo bien!
¿Cómo revertir todo esto a su estado original?

Eliminar el registro del sistema con el comando

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

macOS es lo mismo que iOS. Cualquier servicio que se esté ejecutando se almacena en un plist para dar el comando para ejecutar un script. Entonces, si puede deshabilitar o eliminar un servicio en iOS, también puede hacerlo en macOS.

Esto solo elimina el servicio de registro del sistema que se ejecuta en el arranque, nada más. Puede ejecutar el registro manualmente si lo desea cuando abre la consola.