Jamie Wilkinson
Jamie Wilkinson
I can't think of a nice way to do this that doesn't introduce a new configuration file to mtail. I'd rather not use a configuration file because there are already...
A configuration file might be: * one fragment per program or * one single config file containing sections like: ``` [apache.mtail] files_to_monitor = /var/log/apache/*.log [rsync.mtail] files_to_monitor = /var/log/rsyncd.log ``` or...
You mean putting the config in the program itself? I think that is a good idea for keeping the total configuration space small, but I don't like it for the...
OK, all we need now is a syntax. Changing the language (by having a new config file) made it easy because the config directs the behaviour of the mtail file...
I just went back to tool at the earlier version, the internal Google mtail, which has a method "IsHandled()" optionally defined in the plugins (aka programs) themselves, so that's a...
I'm looking at AWK again, and note that it uses its global variables to let the programmer modify it's behavoiur. Notably, gawk lets you do things like set BINMODE and...
The log filename is now available to the Loader in which the line dispatch happens, so the loader now needs to know if it should filter log lines to VMs.
I think it's best to run one mtail per isolation domain, i.e. one per machine, but I'm old school, and perhaps it's better to run one per application as a...
I've been hacking up some more programs, and see this pattern: ``` getfilename() =~ "apache.access.log" { # matches testdata/apache_access.log and /var/log/apache/access.log ... } ``` It doesn't remove the cost inside...
Its certainly possible, though what's supposed to happen is the metric objects get reused when the program loads. This error says there's two programs using the same metrics. So my...