ovis
ovis copied to clipboard
updtr_match_add needs exclude= argument or equivalent default behavior
it's very difficult (and ugly) to correctly configure a daemon with both pull and push sets.
Example of unhappiness:
pull
updtr_add auto_interval=true name=all_admin1 interval=1000000 offset=230000 updtr_prdcr_add name=all_admin1 regex=.* updtr_match_add name=all_admin1 match=schema regex=^[^l][^i][^n] updtr_start auto_interval=true name=all_admin1
push
updtr_add name=push_admin1 push=onchange interval=1000000 updtr_prdcr_add name=push_admin1 regex=.* updtr_match_add name=push_admin1 regex=linux_proc_sampler match=schema updtr_start name=push_admin1
Would much prefer that either: (a) defining an updtr which gathers a matched item (schema or set) in a different mode removes that schema/set from all prior updtr locations (b) updtr_match_add take an exclude argument so that above match adds can be rewritten:
updtr_match_add name=all_admin1 match=schema regex=.* exclude_regex=linux_proc_sampler
updtr_match_add name=push_admin1 regex=linux_proc_sampler match=schema
where either exclude_regex= can be repeated or we heavily document how the user must formulate a multiple exclusion regex where each exclusion subvalue is wildcard expression. e.g. exclude_regex=(linux_proc_sampler|procne.*)
And with the syntax fix should also be a check that at least warns the user if the same set ends up the object of 2 updtrs, as this almost inevitably creates oversampled errors.