Date: Fri, 1 Sep 2000 15:24:43 +0300 From: Peter Pentchev <roam@orbitel.bg> To: Alexander Maret <maret@atrada.net> Cc: "'freebsd-hackers@freebsd.org'" <freebsd-hackers@freebsd.org> Subject: Re: Redirect stdout/stderr to syslog [OFF-TOPIC] Message-ID: <20000901152443.K46859@ringwraith.office1.bg> In-Reply-To: <58A002A02C5ED311812E0050044517F00D25DB@erlangen01.atrada.de>; from maret@atrada.net on Fri, Sep 01, 2000 at 02:13:19PM %2B0200 References: <58A002A02C5ED311812E0050044517F00D25DB@erlangen01.atrada.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Sep 01, 2000 at 02:13:19PM +0200, Alexander Maret wrote: > > -----Ursprungliche Nachricht----- > > Von: Peter Pentchev [mailto:roam@orbitel.bg] > > Gesendet: Freitag, 1. September 2000 14:00 > > > > man 1 logger > > > > pipe your stdout/stderr to logger(1), and you're all set. > > You may even > > specify a facility/level to log with. > > > > Thanks for your quick answer but I would prefer to > do it entirely in C without calling external progs. > I could think of a solution forking another child process > which does the syslog logging and redirecting stdout/stderr > of the execvped program via IPC to this child. > > But is there any easier solution? No, I don't think you can do anything cheaper than a fork and a pipe(2). popen(), as suggested in another message, is pretty much the same. I don't think stdio has a hook to capture all the data a process is sending to a stream, and pass it to some routine - that would be perfect, but unfortunately, I am not aware of such a thing. I might be wrong though. G'luck, Peter -- This sentence contradicts itself - or rather - well, no, actually it doesn't! To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000901152443.K46859>