ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
class.ilTraceProcessor.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3
16{
17 private $level = 0;
18
19 public function __construct($a_level)
20 {
21 $this->level = $a_level;
22 }
23
29 public function __invoke(array $record)
30 {
31 if($record['level'] < $this->level)
32 {
33 return $record;
34 }
35
36 $trace = debug_backtrace();
37
38 // shift current method
39 array_shift($trace);
40
41 // shift internal monolog calls
42 array_shift($trace);
43 array_shift($trace);
44 array_shift($trace);
45 array_shift($trace);
46
47 $trace_info = $trace[0]['class'].'::'.$trace[0]['function'].':'.$trace[0]['line'];
48
49 $record['extra'] = array_merge(
50 $record['extra'],
51 array('trace' => $trace_info)
52 );
53 return $record;
54 }
55}
56?>