0 votos

Registro de errores de stderr desde scripts de launchd llenos de errores.

He añadido las versiones de los siguientes para cada una de las launchd plist los archivos de todos los scripts que tengo en mi servidor:

<key>StandardErrorPath</key>
    <string>/script_logs/server.domain_expiration.error.log</string>

Todos estos son PHP, shell scripts, así que me capturar la salida con buffer de salida y almacenar en una base de datos SQL, no en un archivo de registro. Pero de los errores, yo uso este para crear registros de error.

El problema es que lo que yo estoy haciendo en mis registros de error es a menudo no errores. Por ejemplo, el registro de errores para mi launchd VPN secuencia de comandos escribe cada conexión VPN entrante para el registro de errores.

2019-05-04 06:33:43 EDT Server 'com.apple.ppp.l2tp' starting...
2019-05-04 06:33:43 EDT Loading plugin /System/Library/Extensions/L2TP.ppp
2019-05-04 06:33:43 EDT Listening for connections...
2019-05-04 06:34:23 EDT Incoming call... Address given to client = [redacted]
2019-05-04 06:35:21 EDT    --> Client with address = [redacted] has hungup
2019-05-04 06:35:35 EDT Incoming call... Address given to client = [redacted]

Que no se parezca salida de error. Que parece regular de la edad normal, no hay problema de salida. Los dos "llama" se me conectan y se desconectan de la VPN normalmente.

¿Qué está pasando aquí? Es posible que no estoy totalmente la comprensión de lo stderr y stdout son en realidad. ¿Tienen sentido para cualquier persona?

Voy a tener más ejemplos en un par de horas, una vez más, ejecutar secuencias de comandos, como he intencionalmente vacía todos estos registros.

1voto

Steve Evans Puntos 155

No hay nada de malo con la salida que se está capturando.

Convenio Sólo

Los desarrolladores son libres a la salida de cualquier cosa que ellos quieran stdout y stderr. Convención sugiere pasar de error relacionados con salida a stderr pero nada impone esta elección.

En este caso el script php autores han escrito de depuración o la información de progreso en stderr. Supongo que esperaban stderr a ser ignorado, hasta que un problema de las necesidades de depuración.

Ver Confundido acerca de stdin, stdout y stderr? para una detallada de preguntas y respuestas sobre el tema.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: