He leído el launchd.plist
página de manual ¿Se supone que launchd recoge eventos "perdidos"? y launchd parece ignorar StartCalendarInterval en Yosemite pero ninguno de ellos me ha permitido diagnosticar por qué mi tarea launchd no se está ejecutando.
Tengo una tarea programada para ejecutarse todos los días a las 10:35, a menudo mi computadora portátil está inactiva y, por lo tanto, la tarea debe iniciarse cuando la computadora portátil se despierta en esos casos (y se ejecuta normalmente cuando la computadora portátil estaba despierta).
Lo que realmente veo es que la tarea rara vez se ejecuta por sí sola y siempre tengo que ejecutarla launchctl start com.arewesmallyet.update
, aunque funciona bien (una vez) cuando lo hago.
launchctl list | fgrep -i arewe
da:
- 0 com.arewesmallyet.update
La salida de launchctl print gui/501/com.arewesmallyet.update
es:
com.arewesmallyet.update = {
active count = 0
path = /Users/camdennarzt/Developer/Bash/dot-files/Library/LaunchAgents/com.arewesmallyet.update.plist
state = waiting
program = /Users/camdennarzt/Developer/Ruby/script.sh
arguments = {
/Users/camdennarzt/Developer/Ruby/script.sh
}
working directory = /Users/camdennarzt/Developer/Ruby/arewesmallyet
stdout path = /Users/camdennarzt/Developer/Ruby/arewesmallyet/log/update.log
stderr path = /Users/camdennarzt/Developer/Ruby/arewesmallyet/log/update_err.log
global environment = {
PATH => /usr/bin:/bin:/usr/sbin:/sbin
}
inherited environment = {
DISPLAY => /private/tmp/com.apple.launchd.8iIoQIK3yn/org.macosforge.xquartz:0
SSH_AUTH_SOCK => /private/tmp/com.apple.launchd.YUM1kEhk5R/Listeners
Apple_PubSub_Socket_Render => /private/tmp/com.apple.launchd.flahy7F91R/Render
}
environment = {
XPC_SERVICE_NAME => com.arewesmallyet.update
}
domain = com.apple.xpc.launchd.user.501.100006.Aqua
asid = 100006
minimum runtime = 10
exit timeout = 5
runs = 3
successive crashes = 0
excessive crashing = 0
last exit code = 0
event triggers = {
com.arewesmallyet.update.268435473 => {
state = 0
service = com.arewesmallyet.update
stream = com.apple.launchd.calendarinterval.501
monitor = com.apple.UserEventAgent-Aqua
descriptor = {
"Minute" => 35
"Hour" => 10
}
}
}
endpoints = {
}
dynamic endpoints = {
}
pid-local endpoints = {
}
instance-specific endpoints = {
}
event channels = {
"com.apple.launchd.calendarinterval" = {
port = 0x4991b
active = 0
managed = 1
reset = 0
hide = 0
}
}
sockets = {
}
spawn type = daemon
properties = {
partial import = 0
launchd bundle = 0
xpc bundle = 0
keepalive = 0
runatload = 0
dirty at shutdown = 0
low priority i/o = 0
low priority background i/o = 0
legacy timer behavior = 0
exception handler = 0
multiple instances = 0
supports transactions = 0
supports pressured exit = 0
enter kdp before kill = 0
wait for debugger = 0
app = 0
system app = 0
creates session = 0
inetd-compatible = 0
inetd listener = 0
abandon process group = 0
one-shot = 0
requires reap = 0
event monitor = 0
penalty box = 0
pended non-demand spawn = 0
role account = 0
launch only once = 0
system support = 0
app-like = 0
inferred program = 1
joins gui session = 0
joins host session = 0
parameterized sandbox = 0
resolve program = 0
abandon coalition = 0
extension = 0
nano allocator = 0
no initgroups = 0
start on fs mount = 0
}
}
fuente