On 01/27/15 00:12, Laurent Bercot wrote: > On 26/01/2015 23:52, Olivier Brunel wrote: >> That looks good, except that I need a default value, in case the file >> doesn't exist. If there's a way to work a default value in that case >> then that'd be fine, yes. >> ...is there a way to add a default value if FILE doesn't exist? > > I will add a "-D default" option to backtick, for when the subprocess > exits nonzero. I've wanted this feature for some time, but only now > realized that I wanted it. Thanks for helping me clarify my mind. :)
My pleasure :) >> (re: misconfiguration, in what way though? It could lead to the program >> being triggered for each new line, but that doesn't mean uncontrollably >> spawning children? > > Well, some services log a lot. Spawning a process for every new line > can be really, really heavy. (And I don't even want to imagine how heavy > it would be on Solaris.) > I really don't mind forking and execing, as can be proven by execline; > but potentially forking every time a daemon outputs a newline is still > really scary. I need to find the right safety guards before I implement > that. I see... so you're thinking e.g. a control directive to set the maximum amount of time the action can be triggered per minute or something? >> It might be a lot, but with a rotation every 4096 bytes one might >> already have frequent calls to the processor, no?) > > Sure, with s4096, but who limits their log files to 4k ? It requires > specific configuration to do that; the admin really wanted it to > happen, it's controlled. A daemon's output matching a given regexp > - which could be .* - is a lot less predictable. And if the daemon is > spewing nothing but newlines, you could find yourself forking 4096 times > more than you're already doing with the processor... >
