Open firebird-automations opened 10 years ago
Commented by: @hvlad
Can't reproduce.
Trace include\exclude filters is and always was regexp, so your request is not correct. Sooner of all you mistaken with connection_id or with filter pattern (number of spaces or something like that)
Commented by: @pavel-zotov
Vlad, I can make trace in 2.5 to display output only if add apostroph sign around expression, i.e.:
$ cat tmp_trace_fb25sc.conf <database (%[\\/](%tmp%).fdb)|(%tmp%)> enabled true time_threshold 0 include_filter = '%from ttt%' log_statement_finish true print_perf true max_sql_length 16384 </database> (this DOES work as expected in 2.5, but it requires apostroph signs left- and right-side of expression)
Trace in 3.0 does NOT requires apostrophes:
$ cat tmp_trace_fb30ss.conf database = (%[\\/](%tmp%.fdb)|(%tmp%)) { enabled=true time_threshold=0 include_filter = %from ttt% log_statement_finish=true print_perf=true }
So, the question is now: why this difference exists ? Was this improvement to trace parser in 3.0 or no ?
Commented by: @hvlad
Parser for config files was fully re-written in fb3, yes. So, it could be the reason for behaviour you see.
I suspect that line below:
include_filter =%from ttt%
will also work in fb2.5 as you expected (note absence of spaces before first % and after last %)
Commented by: @pavel-zotov
> I suspect that line below:
> include_filter =%from ttt%
> will also work in fb2.5 as you expected (note absence of spaces before first % and after last %)
I just tried this variant: no space between equelity sign and first percent, no space after last percent. Unfortunately, it does NOT work: no messages in trace log.
PS. SQL> show version; ISQL Version: WI-V2.5.3.26730 Firebird 2.5 Server version: Firebird/linux AMD64 (access method), version "LI-V2.5.3.26790 Firebird 2.5" Firebird/linux AMD64 (remote server), version "LI-V2.5.3.26790 Firebird 2.5/tcp (oel64)/P12" Firebird/x86/Windows NT (remote interface), version "WI-V2.5.3.26730 Firebird 2.5/tcp (csprog)/P12" on disk structure version 11.2
Submitted by: @pavel-zotov
The following pattern in trace config for 2.5.3:
include_filter = %from ttt%
-- contains two words and does NOT works as expected: statement like 'select * from ttt' will not displayed in trace log. It *does* work in FB 3.0.
Could this parser feature be backported in 2.5.3 ?
PS. my trace-2.5.3 config file:
enabled true
time_threshold 0 include_filter = %from ttt% connection_id 626 log_statement_finish true
print_plan true print_perf true max_sql_length 16384 max_log_size 9999999999 log_blr_requests true print_blr true log_dyn_requests true print_dyn true