On 10/03/2005 09:11 PM, Brian Akins wrote: > Rüdiger Plüm wrote: > >> Makes also sense to me since it seems to me that piped logging does >> not really play >> well with other things like spread or mysql. On the other side, what >> about the >> buffered logging? Would it make sense to make it possible to turn this on >> and off with each provider? If yes, we might should have schemes that >> say e.g.: > > > It seems to me this would be provider specific.
I think buffering is on a higher level and thus it might not be needed nor useful to reimplement this in every provider. But if we want to follow this way more strictly we might end up having something like a filter chain before the provider actually writes the data to its target. A buffer filter would be the first implementation, but there might be others like compression or embedded monitoring filters. > > >> mysql:// for unbuffered mysql backend >> mysqlb:// for buffered mysql backend > > > Probably, a mysql module would want each line individual, rather than a > large buffer. Or it likes to read many lines in one block as it can commit such things as a batch rather than as single commits per line. Of course it is not required to use DB transactions on mysql. But for Oracle this might improve performance. > >> file:// for unbuffered file backend >> fileb:// for buffered file backend > > > > Or, sticking with the uri methods: > > file:///some/log/path?buffered > > or maybe: > > file://buffered@/some/log/path > Hm, the question is how to get all the parameters set with the URL approach (thinking of piped loggers, which you said currently do not seem to work because of the spaces). Maybe as named parameters in the args? If one likes to follow a filter approach I think URL's would not be useful, but to be honest I currently would have no other idea in this case as the shell approach e.g. Customlog "|monitor param=somevalue|buffer size=1024|compress |pipe /bin/foo" combined where the last member needs to be a backend provider like pipe, file, mysql. Regards Rüdiger
