3 votos

Solucionar el problema de launchd/launchctl cuando la aplicación no se carga

Estoy intentando cargar un LaunchAgent en ~/Library/LaunchAgents y aunque, desde la línea de comandos, "parece" que se carga. Sin embargo, si intento cargarlo de nuevo me dice que "ya está cargado".

Pero un proceso para la aplicación no se está ejecutando. ps -e | grep mongo no muestra nada (bueno, muestra esto grep comando).

¿Alguien sabe cómo solucionar este tipo de problemas?

Lo único que puedo encontrar es en /var/log/system.log :

Feb  9 13:15:26 imac com.apple.launchd.peruser.502[130] (homebrew.mxcl.mongodb): Ignored this key: UserName

Estoy asumiendo que está ignorando el UserName porque está siendo lanzado desde mi directorio de usuario: ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist . Y según los documentos esto es de esperar.

Puedo lanzar la aplicación sin problemas desde el Terminal:

/usr/local/bin/mongod

Aquí está el plist de LaunchAgent:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>homebrew.mxcl.mongodb</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/bin/mongod</string>
    <string>run</string>
    <string>--config</string>
    <string>/usr/local/etc/mongod.conf</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>KeepAlive</key>
  <false/>
  <key>UserName</key>
  <string>meltemi</string>
  <key>WorkingDirectory</key>
  <string>/usr/local</string>
  <key>StandardErrorPath</key>
  <string>/usr/local/var/log/mongodb/output.log</string>
  <key>StandardOutPath</key>
  <string>/usr/local/var/log/mongodb/output.log</string>
</dict>
</plist>

2voto

ChrisGuest Puntos 266

Lo tengo resuelto. Dejaré esta pregunta aquí por si alguien más tiene un problema similar y con la esperanza de que alguien pueda ofrecer algunas buenas ideas para solucionar el problema launchd / launchctl en el futuro.

Mi problema era que no tenía mi mongod.conf en el lugar correcto. Según plist directiva launchctl (o es launchd ?) estaba buscando /usr/local/etc/mongod.conf pero no pudo encontrarlo, así que, se "cargó" mongod pero la aplicación nunca se inició en realidad... y no hubo errores a tal efecto... que pudiera encontrar.

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:

X