/srv/irclogs.ubuntu.com/2008/03/04/#upstart.txt

sadmacKeybuk: what do you have in mind?02:05
sadmacDoes the pid of the process get sent to post-start in any manner?04:21
keesjHi08:17
keesjI finished my state machine thingy.08:17
keesjI now need to send event from within the kernel. it that possible?08:18
Keybuksadmac: "status" will give it to you08:45
keesjre13:09
keesjI have two more interesting questions :P13:09
keesjit looks like when I perform an emit from one jobs it waits for the emit to be processesd before it returns13:11
keesjis there a way around this? (my job does a pivot_root) 13:12
keesjhmm --no-wait helps13:23
Keybukkeesj: right, you found it ;) --no-wait <g>14:32
Keybukalso make sure the job is configured right14:32
Keybukif the emit is waiting for the job to stop again, and it's a daemon, you need either "service" or "respawn" in the job14:32
Keybukthen emit will only wait until it's started14:32
sadmac_Keybuk: so... logd... how do we replace it?15:55
Keybukdefine what we want ;)16:03
Keybukfor me the main thing is to be able to capture output from jobs16:03
Keybukand have that logged and not lost16:03
Keybuk(even if filesystem not mounted)16:03
Keybukand maybe even mail that (cron-like)16:04
keesjwhat would service do?16:11
sadmac_Keybuk: pushing it into syslog would do most of that.16:15
keesjcool, after a pivot root and a kill 1 it sill works (init apparently reloaded from a different partition)16:18
Keybuksadmac_: indeed16:19
sadmac_Keybuk: so the issue is: how do we attach a reliable file descriptor to processes and how do we get the input from there to syslog16:20
Keybuksadmac_: right17:11
Keybukand e.g. how does upstart tell the logging daemon that the output of a particular job should be e-mailed out17:11
Keybuk(since the job failed)17:11
=== phoenix24_ is now known as phoenix24
sadmac_Keybuk: I'd assume upstart would have pipes open to the programs being logged, and simply stuff the output to syslog18:14
Keybukthat means init has to do quite a bit of work for every process running though, no?18:15
sadmac_Keybuk: is there a way to open a socket direct to syslog?18:16
sadmac_Keybuk: if we want to keep an external daemon, using ptys for each bothers me less and less.18:17
Keybukyeah, the problem then is when that logging daemon dies18:19
Keybukstrange things happen to shell scripts18:20
sadmac_Ahh, yeah, if you loose the master fd the pty still drops18:20
sadmac_I know what kind of IO we need, and I can write a kernel module to support it, but I don't like the idea of pushing that upstream :(18:21
Keybukhehe, indeed18:22
sadmac_That's what I need to do, find some kernel devs. There's got to be a mechanism for this.18:23
Keybukthere probably is already18:23
KeybukI just haven't read the relevant section of Stevens yet18:23
Keybuklogd is quite low on my priority list right now18:23
Keybukthe existing one "works" for people that want it18:24
sadmac_Keybuk: which book is Stevens?18:24
Keybukany of his18:25
Keybukhis Unix Network Programming series will have the likely answer18:25
Keybuksince that covers all types of sockets, file descriptors and IPC18:25
sadmac_ahh, that one18:25
sadmac_Keybuk: I've got it :)18:31
sadmac_Keybuk: Pipe it to a file in /dev/shm18:32
Keybukthe book?18:32
Keybuk/dev/shm isn't mounted when init starts18:32
sadmac_It could be. For us at least18:33
sadmac_Hmm, and it turns out it doesn't spool the way I had hoped18:34
Keybuksome kind of shared ring buffer would be ideal18:35
Keybukso the app could output freely18:36
Keybukand a logging daemon could pick it up and read from it18:36
Keybukbut if it didn't, that wouldn't be bad18:36
sadmac_exactly18:36
sadmac_in fact what we need is very nearly the example from the linux device drivers book.18:36
Keybukheh18:54
* sadmac_ looks at list of known major numbers in linux kernel18:54
Keybukright, back tomorrow18:58
* Keybuk heads to london18:58
sadmac_damn. he left18:58
=== elmarco|bzz is now known as elmarco
=== Amaranth_ is now known as Amaranth

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!