80 return isset($this->recordsByLevel[
$level]);
85 if (is_array($record)) {
86 $record = $record[
'message'];
90 return $rec[
'message'] === $record;
97 return strpos($rec[
'message'], $message) !==
false;
104 return preg_match($regex, $rec[
'message']) > 0;
110 if (!is_callable($predicate)) {
111 throw new \InvalidArgumentException(
"Expected a callable for hasRecordThatSucceeds");
114 if (!isset($this->recordsByLevel[
$level])) {
118 foreach ($this->recordsByLevel[$level] as $i => $rec) {
119 if (call_user_func($predicate, $rec, $i)) {
130 protected function write(array $record)
132 $this->recordsByLevel[$record[
'level']][] = $record;
133 $this->records[] = $record;
139 if (preg_match(
'/(.*)(Debug|Info|Notice|Warning|Error|Critical|Alert|Emergency)(.*)/', $method, $matches) > 0) {
140 $genericMethod = $matches[1] .
'Record' . $matches[3];
141 $level = constant(
'Monolog\Logger::' . strtoupper($matches[2]));
142 if (method_exists($this, $genericMethod)) {
144 return call_user_func_array(array($this, $genericMethod), $args);
148 throw new \BadMethodCallException(
'Call to undefined method ' . get_class($this) .
'::' . $method .
'()');
hasRecordThatPasses($predicate, $level)
hasRecord($record, $level)
Base Handler class providing the Handler structure.
hasRecordThatMatches($regex, $level)
hasRecordThatContains($message, $level)
Used for testing purposes.