¿Cómo usar el command logger en Sierra?

Estoy intentando registrar events / puntos de control desde mi shell-script usando logger .

Cómo usar logger o la utilidad syslog en OS X (versión 10.12 (16A323)) . Yo he tratado

logger "Hello world" y marcó /var/log/system.log usando la aplicación de console, la siguiente fue la input de logging creada

Error al cosechar cadenas para binary llamado '-Xó ^ H'

¿Cómo usar el logger en OS X? ¿Hay algo que se especifique para crear / agregar una input al logging del sistema OS X?

  • Cómo hacer que el rojo se distinga de gris en el perfil de Terminal "Pro"
  • Escribir> console en el cuadro de nombre de usuario: nada aparece hasta que se cancela
  • Deshabilitar Spotlight Index en 10.8 en volúmenes específicos
  • ¿Apagar / encender Wifi con una sola tecla?
  • Cómo hacer que ctrl-left / ctrl-right se mueva sobre las palabras en Lion
  • nombre de host devuelve el nombre de otro dispositivo
  • Eliminar nombre de usuario del título del terminal
  • Abra la terminal usando un atajo de keyboard
  • 3 Solutions collect form web for “¿Cómo usar el command logger en Sierra?”

    Porque el sistema de logging de Apple cambió en macOS sierra. Se están moviendo de la installation del Registro del sistema de Apple al logging unificado.

    aquí hay un enlace a la documentation del desarrollador.

    A continuación, se filtra el nuevo logging unificado para el text "Message4me"

     $logger -is -t LogTest "Message4Me" Oct 15 13:19:27 LogTest[51173] <Notice>: Message4Me $log show --pnetworkingicate 'eventMessage contains "Message4Me"' --last 3m Skipping info and debug messages, pass --info and/or --debug to include. Filtering the log data using "eventMessage CONTAINS "Message4Me"" Timestamp Thread Type Activity PID 2016-10-15 13:19:27.666574+0900 0x33b62c Default 0x0 51173 logger: Message4Me -------------------------------------------------------------------------------------------------------------------- Log - Default: 1, Info: 0, Debug: 0, Error: 0, Fault: 0 

    =======

    Si agrega -info, también verá el post del evento en la salida.

    En las versiones anteriores del sistema operativo, el command logger se enviaba al file /var/log/system.log si la prioridad era lo suficientemente alta (por ejemplo, usando -p alert), así como a la database syslog. En Sierra, el sistema.log no se escribe cuando el registrador se usa con -p alerta -no en 10.12.1 de todos modos. Esto podría ser un error.

    Aún puede usar el registrador para enviarlo al nuevo sistema de logging, pero deberá usar la aplicación de la Consola o la utilidad de logging de cli o la nueva API para ver los resultados.

    Esta no es una respuesta real sino una solución y demasiado larga para un comentario.

    Me enfrenté al mismo problema en Sierra tratando de registrar una secuencia de commands de shell de actualización de homebrew incluyendo commands de registrador (que funcionó en El Capitan). Tuve que abandonar el registrador y simplemente usé el eco, la networkingirección de salida y un nuevo file de logging:

     #!/bin/bash Brew=/usr/local/bin/brew Brewup_Log=/Users/user/Library/Logs/brewup.log echo "$(date "+%Y.%m.%d %H:%M:%S")" >> $Brewup_Log 2>&1 $Brew update 2>&1 >>$Brewup_Log .... 

    Resolví este problema al tener un script que usa netcat para enviar loggings específicos cada 10 minutos desde un launchdaemon. Edite según sea necesario.

     #!/bin/bash while read line do #drop log entries in the log file you don't want to sent to syslog server if [[ "$line" =~ ^.*recurring\ check-in.* || "$line" =~ ^.*Executing\ Policy\ Update\ Inventory.* ]]; then /bin/echo "" > /dev/null; else ## send logs to syslog server using netcat. Edit IP and UDP port as necessary echo $line | nc -v -u -w 0 10.10.1.9 514 fi done < /var/log/system.log 
    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).