Logger icon indicating copy to clipboard operation
Logger copied to clipboard

Add option to allow parameter arguments to be stored in a detail table

Open SvenWeller opened this issue 9 years ago • 0 comments

For many cases to store the parameters (and function return values) in a clob is perfectly fine. Sometimes I see the need to do analysis over the parameters. It would be preferable to have an extra table that allows to do such parameter analysis.

Example

--- logger testcase

execute logger.purge_all;

declare
  procedure do_something (p1 in number) as
    v_params logger.tab_param;
  begin
    logger.append_param(v_params, 'p1', p1);
    logger.log('Test',p_params=> v_params);    
  end do_something;
begin
  -- 

     for i in 1..1000 loop
       do_something(i+ round(dbms_random.value(low=>1,high=>10)));
     end loop;

end;
/

select * from logger_logs_60_min;

desc logger;

-- task: find all logged rows where parameter p1 is between 10 and 15
-- wish:
select * 
from logger_logs l 
join logger_params p on l.log_id = p.log_id 
where name = 'P1'
and val_num between 10 and 15;

Yes I know I can also parse the clob. But there I depend on how logger concats the parameters. I would like to have an option, to get those parameters separately, to be able to easily search through some larger amount of parameters.

SvenWeller avatar Apr 26 '16 14:04 SvenWeller