Tengo que obtener toda la información de Chrome y /var/log/system.log
Firefox /var/log/{chromium,firefox}.log
.
Sin embargo, no puedo recordar ni encontrar cómo configurar eso en syslog.conf
. ¿Cómo haría para hacer eso?
EDITAR: He estado mirando el asl.conf
archivo para el demonio de registro de ASL. Esto parece tener algo que ver con lo que quiero, aunque pasar de syslog a un formato de registro binario va directamente en contra del sentido.
EDITAR: para ser muy claro, se puede usar syslog para dividir dinámicamente los registros. Apple está haciendo la transición de syslog al registro del sistema de Apple. Entonces, el enfoque grep solo se ocupa de los /var/log
archivos syslogd en desuso.
Cambiar a syslog-ng e iniciar sesión en sqlite parecería más fácil, pero ¿quién sabe? Estoy seguro de que el formato propietario es el camino a seguir.
Tenga en cuenta que
syslog(1)
es la herramienta de línea de comandos para la base de datos ASL.
syslog(3)
es la API de CAP para el demonio syslogd. El reemplazo de ASL para lo anterior es
asl(3)
Ahora,
syslogd(8)
tiene 2 módulos, uno escribiendo en los archivos definidos en
syslog.conf(5)
y una escritura en el registro del sistema de Apple, como se define en
asl.conf(5)
ASL parece ser el futuro. Syslogd está configurado por ambos syslog.conf
y asl.conf
.
La situación es así: las aplicaciones pueden usar la API syslog(3) y la API asl(3) para registrar mensajes, otros datos registrados pueden provenir del kernel o de la red. Todos estos mensajes se entregan al demonio syslog: syslogd(8). El syslogd ahora genera mensajes de registro tanto de la manera BSD (escribe cosas en varios archivos de registro básicos como /var/log) como en un almacén de mensajes de registro unificado (/var/log/asl.log).
Si desea que ciertos mensajes de registro no aparezcan en sus archivos de registro (p. ej., lee registros como system.log seleccionándolos en Console.app), deberá configurar syslog.conf(5) como dijo chiggsy . Si desea que los mensajes no se almacenen en la base de datos de asl, deberá configurar asl.conf(5).
Si, por ejemplo, ya no desea que los mensajes de registro de Bonjour (mDNSResponders) se almacenen en la base de datos de ASL, deberá agregar la siguiente línea a /etc/asl.conf:
? [= Sender mDNSResponder] ignore
… y luego "suavemente" reinicie el syslogd por:
sudo killall -HUP syslogd
Ahora, los mensajes de mDNSResponder ya no aparecerán cuando acceda a "todos los mensajes" de Console.app, pero seguirán existiendo en sus archivos de registro.
Por último, si llama a syslog(1) desde la línea de comandos, actúa como una buena interfaz para consultar la base de datos de ASL; por ejemplo, podría pedirle que muestre todos los mensajes del iniciador de Time Machine Backup que se registraron en las últimas dos horas. mediante la ejecución:
syslog -k Facility -k Sender com.apple.backupd-auto -k Time ge −2h
…lo que explica por qué la base de datos ASL es útil: puede buscar archivos de registro simultáneamente en "todos los archivos de registro".
Hay 2 respuestas en la práctica, si quiero cambiar la ubicación del archivo de registro.
La solución es no leer la página de manual de OS X syslog.conf. Lee el de FreeBSD . Syslog todavía funciona de esta manera cuando se usa su módulo BSD.
!-org.chromium.Chromium
*.notice;authpriv,remoteauth,ftp,install,internal.none /var/log/system.log
kern.* /var/log/kernel.log
!*
!org.chromium.Chromium
*.* /var/log/stfu.log
!*
Esto elimina el ridículamente hablador registro de chromium de /var/log/system.log y lo coloca en stfu.log.
Miguel
Asmus
syslog
se comporta de manera diferente para sshd (y aparentemente vnc, ftp, así que envié esto como una nueva pregunta aquí .