mirror of
https://github.com/Seldaek/monolog.git
synced 2025-08-03 11:47:38 +02:00
Fix CS
This commit is contained in:
@@ -124,8 +124,8 @@ class ErrorHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param LogLevel::*|null $level a LogLevel::* constant, null to use the default LogLevel::ALERT
|
* @param LogLevel::*|null $level a LogLevel::* constant, null to use the default LogLevel::ALERT
|
||||||
* @param int $reservedMemorySize Amount of KBs to reserve in memory so that it can be freed when handling fatal errors giving Monolog some room in memory to get its job done
|
* @param int $reservedMemorySize Amount of KBs to reserve in memory so that it can be freed when handling fatal errors giving Monolog some room in memory to get its job done
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function registerFatalHandler($level = null, int $reservedMemorySize = 20): self
|
public function registerFatalHandler($level = null, int $reservedMemorySize = 20): self
|
||||||
|
@@ -42,7 +42,7 @@ class HtmlFormatter extends NormalizerFormatter
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string|null $dateFormat The format of the timestamp: one supported by DateTime::format
|
* @param string|null $dateFormat The format of the timestamp: one supported by DateTime::format
|
||||||
* @throws \RuntimeException If the function json_encode does not exist
|
* @throws \RuntimeException If the function json_encode does not exist
|
||||||
*/
|
*/
|
||||||
public function __construct(?string $dateFormat = null)
|
public function __construct(?string $dateFormat = null)
|
||||||
|
@@ -84,7 +84,7 @@ class LineFormatter extends NormalizerFormatter
|
|||||||
/**
|
/**
|
||||||
* Indent stack traces to separate them a bit from the main log record messages
|
* Indent stack traces to separate them a bit from the main log record messages
|
||||||
*
|
*
|
||||||
* @param string $indent The string used to indent, for example " "
|
* @param string $indent The string used to indent, for example " "
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function indentStacktraces(string $indent): self
|
public function indentStacktraces(string $indent): self
|
||||||
@@ -117,7 +117,7 @@ class LineFormatter extends NormalizerFormatter
|
|||||||
/**
|
/**
|
||||||
* Allows cutting the level name to get fixed-length levels like INF for INFO, ERR for ERROR if you set this to 3 for example
|
* Allows cutting the level name to get fixed-length levels like INF for INFO, ERR for ERROR if you set this to 3 for example
|
||||||
*
|
*
|
||||||
* @param int|null $maxLevelNameLength Maximum characters for the level name. Set null for infinite length (default)
|
* @param int|null $maxLevelNameLength Maximum characters for the level name. Set null for infinite length (default)
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setMaxLevelNameLength(?int $maxLevelNameLength = null): self
|
public function setMaxLevelNameLength(?int $maxLevelNameLength = null): self
|
||||||
@@ -244,6 +244,7 @@ class LineFormatter extends NormalizerFormatter
|
|||||||
$str = preg_replace('/(?<!\\\\)\\\\[rn]/', "\n", $str);
|
$str = preg_replace('/(?<!\\\\)\\\\[rn]/', "\n", $str);
|
||||||
if (null === $str) {
|
if (null === $str) {
|
||||||
$pcreErrorCode = preg_last_error();
|
$pcreErrorCode = preg_last_error();
|
||||||
|
|
||||||
throw new \RuntimeException('Failed to run preg_replace: ' . $pcreErrorCode . ' / ' . Utils::pcreLastErrorMessage($pcreErrorCode));
|
throw new \RuntimeException('Failed to run preg_replace: ' . $pcreErrorCode . ' / ' . Utils::pcreLastErrorMessage($pcreErrorCode));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -34,7 +34,7 @@ class NormalizerFormatter implements FormatterInterface
|
|||||||
protected string $basePath = '';
|
protected string $basePath = '';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string|null $dateFormat The format of the timestamp: one supported by DateTime::format
|
* @param string|null $dateFormat The format of the timestamp: one supported by DateTime::format
|
||||||
* @throws \RuntimeException If the function json_encode does not exist
|
* @throws \RuntimeException If the function json_encode does not exist
|
||||||
*/
|
*/
|
||||||
public function __construct(?string $dateFormat = null)
|
public function __construct(?string $dateFormat = null)
|
||||||
|
@@ -44,7 +44,6 @@ class SyslogFormatter extends LineFormatter
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param LogRecord $record
|
|
||||||
* @return array<string, mixed>
|
* @return array<string, mixed>
|
||||||
*/
|
*/
|
||||||
private function formatExtra(LogRecord $record): array
|
private function formatExtra(LogRecord $record): array
|
||||||
|
@@ -29,7 +29,7 @@ abstract class AbstractHandler extends Handler implements ResettableInterface
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @param int|string|Level|LogLevel::* $level The minimum logging level at which this handler will be triggered
|
* @param int|string|Level|LogLevel::* $level The minimum logging level at which this handler will be triggered
|
||||||
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
||||||
*/
|
*/
|
||||||
@@ -50,7 +50,7 @@ abstract class AbstractHandler extends Handler implements ResettableInterface
|
|||||||
/**
|
/**
|
||||||
* Sets minimum logging level at which this handler will be triggered.
|
* Sets minimum logging level at which this handler will be triggered.
|
||||||
*
|
*
|
||||||
* @param Level|LogLevel::* $level Level or level name
|
* @param Level|LogLevel::* $level Level or level name
|
||||||
* @return $this
|
* @return $this
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
||||||
@@ -73,8 +73,8 @@ abstract class AbstractHandler extends Handler implements ResettableInterface
|
|||||||
/**
|
/**
|
||||||
* Sets the bubbling behavior.
|
* Sets the bubbling behavior.
|
||||||
*
|
*
|
||||||
* @param bool $bubble true means that this handler allows bubbling.
|
* @param bool $bubble true means that this handler allows bubbling.
|
||||||
* false means that bubbling is not permitted.
|
* false means that bubbling is not permitted.
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setBubble(bool $bubble): self
|
public function setBubble(bool $bubble): self
|
||||||
|
@@ -56,7 +56,7 @@ class AmqpHandler extends AbstractProcessingHandler
|
|||||||
/**
|
/**
|
||||||
* Configure extra attributes to pass to the AMQPExchange (if you are using the amqp extension)
|
* Configure extra attributes to pass to the AMQPExchange (if you are using the amqp extension)
|
||||||
*
|
*
|
||||||
* @param array<string, mixed> $extraAttributes One of content_type, content_encoding,
|
* @param array<string, mixed> $extraAttributes One of content_type, content_encoding,
|
||||||
* message_id, user_id, app_id, delivery_mode,
|
* message_id, user_id, app_id, delivery_mode,
|
||||||
* priority, timestamp, expiration, type
|
* priority, timestamp, expiration, type
|
||||||
* or reply_to, headers.
|
* or reply_to, headers.
|
||||||
@@ -65,6 +65,7 @@ class AmqpHandler extends AbstractProcessingHandler
|
|||||||
public function setExtraAttributes(array $extraAttributes): self
|
public function setExtraAttributes(array $extraAttributes): self
|
||||||
{
|
{
|
||||||
$this->extraAttributes = $extraAttributes;
|
$this->extraAttributes = $extraAttributes;
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -155,6 +156,7 @@ class AmqpHandler extends AbstractProcessingHandler
|
|||||||
if (\count($this->extraAttributes) > 0) {
|
if (\count($this->extraAttributes) > 0) {
|
||||||
$attributes = array_merge($attributes, $this->extraAttributes);
|
$attributes = array_merge($attributes, $this->extraAttributes);
|
||||||
}
|
}
|
||||||
|
|
||||||
return new AMQPMessage($data, $attributes);
|
return new AMQPMessage($data, $attributes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -17,7 +17,6 @@ use Monolog\Utils;
|
|||||||
use Monolog\LogRecord;
|
use Monolog\LogRecord;
|
||||||
use Monolog\Level;
|
use Monolog\Level;
|
||||||
|
|
||||||
use function count;
|
|
||||||
use function headers_list;
|
use function headers_list;
|
||||||
use function stripos;
|
use function stripos;
|
||||||
|
|
||||||
|
@@ -46,11 +46,11 @@ class DeduplicationHandler extends BufferHandler
|
|||||||
protected bool $gc = false;
|
protected bool $gc = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param HandlerInterface $handler Handler.
|
* @param HandlerInterface $handler Handler.
|
||||||
* @param string|null $deduplicationStore The file/path where the deduplication log should be kept
|
* @param string|null $deduplicationStore The file/path where the deduplication log should be kept
|
||||||
* @param int|string|Level|LogLevel::* $deduplicationLevel The minimum logging level for log records to be looked at for deduplication purposes
|
* @param int|string|Level|LogLevel::* $deduplicationLevel The minimum logging level for log records to be looked at for deduplication purposes
|
||||||
* @param int $time The period (in seconds) during which duplicate entries should be suppressed after a given log is sent through
|
* @param int $time The period (in seconds) during which duplicate entries should be suppressed after a given log is sent through
|
||||||
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $deduplicationLevel
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $deduplicationLevel
|
||||||
*/
|
*/
|
||||||
|
@@ -54,10 +54,10 @@ class FilterHandler extends Handler implements ProcessableHandlerInterface, Rese
|
|||||||
/**
|
/**
|
||||||
* @phpstan-param (Closure(LogRecord|null, HandlerInterface): HandlerInterface)|HandlerInterface $handler
|
* @phpstan-param (Closure(LogRecord|null, HandlerInterface): HandlerInterface)|HandlerInterface $handler
|
||||||
*
|
*
|
||||||
* @param Closure|HandlerInterface $handler Handler or factory Closure($record|null, $filterHandler).
|
* @param Closure|HandlerInterface $handler Handler or factory Closure($record|null, $filterHandler).
|
||||||
* @param int|string|Level|array<int|string|Level|LogLevel::*> $minLevelOrList A list of levels to accept or a minimum level if maxLevel is provided
|
* @param int|string|Level|array<int|string|Level|LogLevel::*> $minLevelOrList A list of levels to accept or a minimum level if maxLevel is provided
|
||||||
* @param int|string|Level|LogLevel::* $maxLevel Maximum level to accept, only used if $minLevelOrList is not an array
|
* @param int|string|Level|LogLevel::* $maxLevel Maximum level to accept, only used if $minLevelOrList is not an array
|
||||||
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*|array<value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*> $minLevelOrList
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*|array<value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*> $minLevelOrList
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $maxLevel
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $maxLevel
|
||||||
@@ -78,8 +78,8 @@ class FilterHandler extends Handler implements ProcessableHandlerInterface, Rese
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param int|string|Level|LogLevel::*|array<int|string|Level|LogLevel::*> $minLevelOrList A list of levels to accept or a minimum level or level name if maxLevel is provided
|
* @param int|string|Level|LogLevel::*|array<int|string|Level|LogLevel::*> $minLevelOrList A list of levels to accept or a minimum level or level name if maxLevel is provided
|
||||||
* @param int|string|Level|LogLevel::* $maxLevel Maximum level or level name to accept, only used if $minLevelOrList is not an array
|
* @param int|string|Level|LogLevel::* $maxLevel Maximum level or level name to accept, only used if $minLevelOrList is not an array
|
||||||
* @return $this
|
* @return $this
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*|array<value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*> $minLevelOrList
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*|array<value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*> $minLevelOrList
|
||||||
|
@@ -66,11 +66,11 @@ class FingersCrossedHandler extends Handler implements ProcessableHandlerInterfa
|
|||||||
/**
|
/**
|
||||||
* @phpstan-param (Closure(LogRecord|null, HandlerInterface): HandlerInterface)|HandlerInterface $handler
|
* @phpstan-param (Closure(LogRecord|null, HandlerInterface): HandlerInterface)|HandlerInterface $handler
|
||||||
*
|
*
|
||||||
* @param Closure|HandlerInterface $handler Handler or factory Closure($record|null, $fingersCrossedHandler).
|
* @param Closure|HandlerInterface $handler Handler or factory Closure($record|null, $fingersCrossedHandler).
|
||||||
* @param int|string|Level|LogLevel::* $activationStrategy Strategy which determines when this handler takes action, or a level name/value at which the handler is activated
|
* @param int|string|Level|LogLevel::* $activationStrategy Strategy which determines when this handler takes action, or a level name/value at which the handler is activated
|
||||||
* @param int $bufferSize How many entries should be buffered at most, beyond that the oldest items are removed from the buffer.
|
* @param int $bufferSize How many entries should be buffered at most, beyond that the oldest items are removed from the buffer.
|
||||||
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
* @param bool $bubble Whether the messages that are handled can bubble up the stack or not
|
||||||
* @param bool $stopBuffering Whether the handler should stop buffering after being triggered (default true)
|
* @param bool $stopBuffering Whether the handler should stop buffering after being triggered (default true)
|
||||||
* @param int|string|Level|LogLevel::*|null $passthruLevel Minimum level to always flush to handler on close, even if strategy not triggered
|
* @param int|string|Level|LogLevel::*|null $passthruLevel Minimum level to always flush to handler on close, even if strategy not triggered
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*|ActivationStrategyInterface $activationStrategy
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::*|ActivationStrategyInterface $activationStrategy
|
||||||
|
@@ -45,7 +45,7 @@ interface HandlerInterface
|
|||||||
*
|
*
|
||||||
* @param LogRecord $record The record to handle
|
* @param LogRecord $record The record to handle
|
||||||
* @return bool true means that this handler handled the record, and that bubbling is not permitted.
|
* @return bool true means that this handler handled the record, and that bubbling is not permitted.
|
||||||
* false means the record was either not processed or that this handler allows bubbling.
|
* false means the record was either not processed or that this handler allows bubbling.
|
||||||
*/
|
*/
|
||||||
public function handle(LogRecord $record): bool;
|
public function handle(LogRecord $record): bool;
|
||||||
|
|
||||||
|
@@ -14,7 +14,6 @@ namespace Monolog\Handler;
|
|||||||
use Monolog\Level;
|
use Monolog\Level;
|
||||||
use Monolog\Formatter\FormatterInterface;
|
use Monolog\Formatter\FormatterInterface;
|
||||||
use Monolog\Formatter\LogglyFormatter;
|
use Monolog\Formatter\LogglyFormatter;
|
||||||
use function array_key_exists;
|
|
||||||
use CurlHandle;
|
use CurlHandle;
|
||||||
use Monolog\LogRecord;
|
use Monolog\LogRecord;
|
||||||
|
|
||||||
@@ -88,7 +87,7 @@ class LogglyHandler extends AbstractProcessingHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string[]|string $tag
|
* @param string[]|string $tag
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setTag(string|array $tag): self
|
public function setTag(string|array $tag): self
|
||||||
@@ -103,7 +102,7 @@ class LogglyHandler extends AbstractProcessingHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string[]|string $tag
|
* @param string[]|string $tag
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function addTag(string|array $tag): self
|
public function addTag(string|array $tag): self
|
||||||
|
@@ -78,7 +78,7 @@ class NativeMailerHandler extends MailHandler
|
|||||||
/**
|
/**
|
||||||
* Add headers to the message
|
* Add headers to the message
|
||||||
*
|
*
|
||||||
* @param string|string[] $headers Custom added headers
|
* @param string|string[] $headers Custom added headers
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function addHeader($headers): self
|
public function addHeader($headers): self
|
||||||
@@ -96,7 +96,7 @@ class NativeMailerHandler extends MailHandler
|
|||||||
/**
|
/**
|
||||||
* Add parameters to the message
|
* Add parameters to the message
|
||||||
*
|
*
|
||||||
* @param string|string[] $parameters Custom added parameters
|
* @param string|string[] $parameters Custom added parameters
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function addParameter($parameters): self
|
public function addParameter($parameters): self
|
||||||
@@ -143,7 +143,7 @@ class NativeMailerHandler extends MailHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $contentType The content type of the email - Defaults to text/plain. Use text/html for HTML messages.
|
* @param string $contentType The content type of the email - Defaults to text/plain. Use text/html for HTML messages.
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setContentType(string $contentType): self
|
public function setContentType(string $contentType): self
|
||||||
|
@@ -88,9 +88,9 @@ class PushoverHandler extends SocketHandler
|
|||||||
* to be retried for (every retry seconds).
|
* to be retried for (every retry seconds).
|
||||||
*
|
*
|
||||||
* @param int|string|Level|LogLevel::* $highPriorityLevel The minimum logging level at which this handler will start
|
* @param int|string|Level|LogLevel::* $highPriorityLevel The minimum logging level at which this handler will start
|
||||||
* sending "high priority" requests to the Pushover API
|
* sending "high priority" requests to the Pushover API
|
||||||
* @param int|string|Level|LogLevel::* $emergencyLevel The minimum logging level at which this handler will start
|
* @param int|string|Level|LogLevel::* $emergencyLevel The minimum logging level at which this handler will start
|
||||||
* sending "emergency" requests to the Pushover API
|
* sending "emergency" requests to the Pushover API
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @phpstan-param string|array<int|string> $users
|
* @phpstan-param string|array<int|string> $users
|
||||||
@@ -207,7 +207,7 @@ class PushoverHandler extends SocketHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param int|string|Level|LogLevel::* $level
|
* @param int|string|Level|LogLevel::* $level
|
||||||
* @return $this
|
* @return $this
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
||||||
@@ -220,7 +220,7 @@ class PushoverHandler extends SocketHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param int|string|Level|LogLevel::* $level
|
* @param int|string|Level|LogLevel::* $level
|
||||||
* @return $this
|
* @return $this
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
||||||
|
@@ -182,8 +182,8 @@ class RotatingFileHandler extends StreamHandler
|
|||||||
[$fileInfo['filename'], str_replace(
|
[$fileInfo['filename'], str_replace(
|
||||||
['Y', 'y', 'm', 'd'],
|
['Y', 'y', 'm', 'd'],
|
||||||
['[0-9][0-9][0-9][0-9]', '[0-9][0-9]', '[0-9][0-9]', '[0-9][0-9]'],
|
['[0-9][0-9][0-9][0-9]', '[0-9][0-9]', '[0-9][0-9]', '[0-9][0-9]'],
|
||||||
$this->dateFormat)
|
$this->dateFormat
|
||||||
],
|
)],
|
||||||
($fileInfo['dirname'] ?? '') . '/' . $this->filenameFormat
|
($fileInfo['dirname'] ?? '') . '/' . $this->filenameFormat
|
||||||
);
|
);
|
||||||
if (isset($fileInfo['extension'])) {
|
if (isset($fileInfo['extension'])) {
|
||||||
|
@@ -220,7 +220,7 @@ class SlackRecord
|
|||||||
/**
|
/**
|
||||||
* Channel used by the bot when posting
|
* Channel used by the bot when posting
|
||||||
*
|
*
|
||||||
* @param ?string $channel
|
* @param ?string $channel
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setChannel(?string $channel = null): self
|
public function setChannel(?string $channel = null): self
|
||||||
@@ -233,7 +233,7 @@ class SlackRecord
|
|||||||
/**
|
/**
|
||||||
* Username used by the bot when posting
|
* Username used by the bot when posting
|
||||||
*
|
*
|
||||||
* @param ?string $username
|
* @param ?string $username
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setUsername(?string $username = null): self
|
public function setUsername(?string $username = null): self
|
||||||
@@ -292,7 +292,7 @@ class SlackRecord
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string[] $excludeFields
|
* @param string[] $excludeFields
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function excludeFields(array $excludeFields = []): self
|
public function excludeFields(array $excludeFields = []): self
|
||||||
|
@@ -255,7 +255,7 @@ class SlackHandler extends SocketHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string[] $excludeFields
|
* @param string[] $excludeFields
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function excludeFields(array $excludeFields): self
|
public function excludeFields(array $excludeFields): self
|
||||||
|
@@ -151,7 +151,7 @@ class SocketHandler extends AbstractProcessingHandler
|
|||||||
/**
|
/**
|
||||||
* Set writing timeout. Only has effect during connection in the writing cycle.
|
* Set writing timeout. Only has effect during connection in the writing cycle.
|
||||||
*
|
*
|
||||||
* @param float $seconds 0 for no timeout
|
* @param float $seconds 0 for no timeout
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setWritingTimeout(float $seconds): self
|
public function setWritingTimeout(float $seconds): self
|
||||||
|
@@ -125,6 +125,7 @@ class StreamHandler extends AbstractProcessingHandler
|
|||||||
set_error_handler(function (...$args) {
|
set_error_handler(function (...$args) {
|
||||||
return $this->customErrorHandler(...$args);
|
return $this->customErrorHandler(...$args);
|
||||||
});
|
});
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$stream = fopen($url, 'a');
|
$stream = fopen($url, 'a');
|
||||||
if ($this->filePermission !== null) {
|
if ($this->filePermission !== null) {
|
||||||
|
@@ -13,7 +13,6 @@ namespace Monolog\Handler;
|
|||||||
|
|
||||||
use Closure;
|
use Closure;
|
||||||
use Monolog\Level;
|
use Monolog\Level;
|
||||||
use Monolog\Logger;
|
|
||||||
use Monolog\LogRecord;
|
use Monolog\LogRecord;
|
||||||
use Monolog\Utils;
|
use Monolog\Utils;
|
||||||
use Monolog\Formatter\FormatterInterface;
|
use Monolog\Formatter\FormatterInterface;
|
||||||
@@ -68,8 +67,8 @@ class SymfonyMailerHandler extends MailHandler
|
|||||||
/**
|
/**
|
||||||
* Creates instance of Email to be sent
|
* Creates instance of Email to be sent
|
||||||
*
|
*
|
||||||
* @param string $content formatted email body to be sent
|
* @param string $content formatted email body to be sent
|
||||||
* @param LogRecord[] $records Log records that formed the content
|
* @param LogRecord[] $records Log records that formed the content
|
||||||
*/
|
*/
|
||||||
protected function buildMessage(string $content, array $records): Email
|
protected function buildMessage(string $content, array $records): Email
|
||||||
{
|
{
|
||||||
@@ -82,6 +81,7 @@ class SymfonyMailerHandler extends MailHandler
|
|||||||
|
|
||||||
if (!$message instanceof Email) {
|
if (!$message instanceof Email) {
|
||||||
$record = reset($records);
|
$record = reset($records);
|
||||||
|
|
||||||
throw new \InvalidArgumentException('Could not resolve message as instance of Email or a callable returning it' . ($record instanceof LogRecord ? Utils::getRecordMessageForException($record) : ''));
|
throw new \InvalidArgumentException('Could not resolve message as instance of Email or a callable returning it' . ($record instanceof LogRecord ? Utils::getRecordMessageForException($record) : ''));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -12,7 +12,6 @@
|
|||||||
namespace Monolog\Handler;
|
namespace Monolog\Handler;
|
||||||
|
|
||||||
use Monolog\Level;
|
use Monolog\Level;
|
||||||
use Monolog\Utils;
|
|
||||||
use Monolog\LogRecord;
|
use Monolog\LogRecord;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -82,7 +82,7 @@ enum Level: int
|
|||||||
case Emergency = 600;
|
case Emergency = 600;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param value-of<self::NAMES>|LogLevel::*|'Debug'|'Info'|'Notice'|'Warning'|'Error'|'Critical'|'Alert'|'Emergency' $name
|
* @param value-of<self::NAMES>|LogLevel::*|'Debug'|'Info'|'Notice'|'Warning'|'Error'|'Critical'|'Alert'|'Emergency' $name
|
||||||
* @return static
|
* @return static
|
||||||
*/
|
*/
|
||||||
public static function fromName(string $name): self
|
public static function fromName(string $name): self
|
||||||
@@ -100,7 +100,7 @@ enum Level: int
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param value-of<self::VALUES> $value
|
* @param value-of<self::VALUES> $value
|
||||||
* @return static
|
* @return static
|
||||||
*/
|
*/
|
||||||
public static function fromValue(int $value): self
|
public static function fromValue(int $value): self
|
||||||
|
@@ -230,7 +230,7 @@ class Logger implements LoggerInterface, ResettableInterface
|
|||||||
*
|
*
|
||||||
* If a map is passed, keys will be ignored.
|
* If a map is passed, keys will be ignored.
|
||||||
*
|
*
|
||||||
* @param list<HandlerInterface> $handlers
|
* @param list<HandlerInterface> $handlers
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setHandlers(array $handlers): self
|
public function setHandlers(array $handlers): self
|
||||||
@@ -297,7 +297,7 @@ class Logger implements LoggerInterface, ResettableInterface
|
|||||||
* by default. This function lets you disable them though in case you want
|
* by default. This function lets you disable them though in case you want
|
||||||
* to suppress microseconds from the output.
|
* to suppress microseconds from the output.
|
||||||
*
|
*
|
||||||
* @param bool $micro True to use microtime() to create timestamps
|
* @param bool $micro True to use microtime() to create timestamps
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function useMicrosecondTimestamps(bool $micro): self
|
public function useMicrosecondTimestamps(bool $micro): self
|
||||||
@@ -346,6 +346,7 @@ class Logger implements LoggerInterface, ResettableInterface
|
|||||||
|
|
||||||
if ($logDepth === 3) {
|
if ($logDepth === 3) {
|
||||||
$this->warning('A possible infinite logging loop was detected and aborted. It appears some of your handler code is triggering logging, see the previous log record for a hint as to what may be the cause.');
|
$this->warning('A possible infinite logging loop was detected and aborted. It appears some of your handler code is triggering logging, see the previous log record for a hint as to what may be the cause.');
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
} elseif ($logDepth >= 5) { // log depth 4 is let through, so we can log the warning above
|
} elseif ($logDepth >= 5) { // log depth 4 is let through, so we can log the warning above
|
||||||
return false;
|
return false;
|
||||||
@@ -470,8 +471,8 @@ class Logger implements LoggerInterface, ResettableInterface
|
|||||||
/**
|
/**
|
||||||
* Converts PSR-3 levels to Monolog ones if necessary
|
* Converts PSR-3 levels to Monolog ones if necessary
|
||||||
*
|
*
|
||||||
* @param int|string|Level|LogLevel::* $level Level number (monolog) or name (PSR-3)
|
* @param int|string|Level|LogLevel::* $level Level number (monolog) or name (PSR-3)
|
||||||
* @throws \Psr\Log\InvalidArgumentException If level is not defined
|
* @throws \Psr\Log\InvalidArgumentException If level is not defined
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
||||||
*/
|
*/
|
||||||
|
@@ -43,7 +43,7 @@ class IntrospectionProcessor implements ProcessorInterface
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string|int|Level $level The minimum logging level at which this Processor will be triggered
|
* @param string|int|Level $level The minimum logging level at which this Processor will be triggered
|
||||||
* @param string[] $skipClassesPartials
|
* @param string[] $skipClassesPartials
|
||||||
*
|
*
|
||||||
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
* @phpstan-param value-of<Level::VALUES>|value-of<Level::NAMES>|Level|LogLevel::* $level
|
||||||
*/
|
*/
|
||||||
|
@@ -32,7 +32,7 @@ class TagProcessor implements ProcessorInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string[] $tags
|
* @param string[] $tags
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function addTags(array $tags = []): self
|
public function addTags(array $tags = []): self
|
||||||
@@ -43,7 +43,7 @@ class TagProcessor implements ProcessorInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string[] $tags
|
* @param string[] $tags
|
||||||
* @return $this
|
* @return $this
|
||||||
*/
|
*/
|
||||||
public function setTags(array $tags = []): self
|
public function setTags(array $tags = []): self
|
||||||
|
@@ -1,4 +1,13 @@
|
|||||||
<?php
|
<?php declare(strict_types=1);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This file is part of the Monolog package.
|
||||||
|
*
|
||||||
|
* (c) Jordi Boggiano <j.boggiano@seld.be>
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
namespace Monolog\Attribute;
|
namespace Monolog\Attribute;
|
||||||
|
|
||||||
@@ -11,5 +20,4 @@ class WithMonologChannelTest extends TestCase
|
|||||||
$attribute = new WithMonologChannel('fixture');
|
$attribute = new WithMonologChannel('fixture');
|
||||||
$this->assertSame('fixture', $attribute->channel);
|
$this->assertSame('fixture', $attribute->channel);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -121,7 +121,7 @@ class JsonFormatterTest extends TestCase
|
|||||||
public function testBasePathWithException(): void
|
public function testBasePathWithException(): void
|
||||||
{
|
{
|
||||||
$formatter = new JsonFormatter();
|
$formatter = new JsonFormatter();
|
||||||
$formatter->setBasePath(dirname(dirname(dirname(__DIR__))));
|
$formatter->setBasePath(\dirname(\dirname(\dirname(__DIR__))));
|
||||||
$exception = new \RuntimeException('Foo');
|
$exception = new \RuntimeException('Foo');
|
||||||
|
|
||||||
$message = $this->formatRecordWithExceptionInContext($formatter, $exception);
|
$message = $this->formatRecordWithExceptionInContext($formatter, $exception);
|
||||||
|
@@ -84,7 +84,7 @@ class NormalizerFormatterTest extends TestCase
|
|||||||
public function testFormatExceptionWithBasePath(): void
|
public function testFormatExceptionWithBasePath(): void
|
||||||
{
|
{
|
||||||
$formatter = new NormalizerFormatter('Y-m-d');
|
$formatter = new NormalizerFormatter('Y-m-d');
|
||||||
$formatter->setBasePath(dirname(dirname(dirname(__DIR__))));
|
$formatter->setBasePath(\dirname(\dirname(\dirname(__DIR__))));
|
||||||
$e = new \LogicException('bar');
|
$e = new \LogicException('bar');
|
||||||
$formatted = $formatter->normalizeValue([
|
$formatted = $formatter->normalizeValue([
|
||||||
'exception' => $e,
|
'exception' => $e,
|
||||||
|
@@ -103,16 +103,25 @@ class RedisHandlerTest extends TestCase
|
|||||||
{
|
{
|
||||||
$redis = new class extends \Predis\Client {
|
$redis = new class extends \Predis\Client {
|
||||||
public array $testResults = [];
|
public array $testResults = [];
|
||||||
public function rpush(...$args) {
|
|
||||||
|
public function rpush(...$args)
|
||||||
|
{
|
||||||
$this->testResults[] = ['rpush', ...$args];
|
$this->testResults[] = ['rpush', ...$args];
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
public function ltrim(...$args) {
|
|
||||||
|
public function ltrim(...$args)
|
||||||
|
{
|
||||||
$this->testResults[] = ['ltrim', ...$args];
|
$this->testResults[] = ['ltrim', ...$args];
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
public function transaction(...$args) {
|
|
||||||
|
public function transaction(...$args)
|
||||||
|
{
|
||||||
$this->testResults[] = ['transaction start'];
|
$this->testResults[] = ['transaction start'];
|
||||||
|
|
||||||
return ($args[0])($this);
|
return ($args[0])($this);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@@ -59,7 +59,8 @@ class RotatingFileHandlerTest extends TestCase
|
|||||||
unset($this->lastError);
|
unset($this->lastError);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function rrmdir($directory) {
|
private function rrmdir($directory)
|
||||||
|
{
|
||||||
if (! is_dir($directory)) {
|
if (! is_dir($directory)) {
|
||||||
throw new InvalidArgumentException("$directory must be a directory");
|
throw new InvalidArgumentException("$directory must be a directory");
|
||||||
}
|
}
|
||||||
|
@@ -69,6 +69,7 @@ class SymfonyMailerHandlerTest extends TestCase
|
|||||||
// Callback dynamically changes subject based on number of logged records
|
// Callback dynamically changes subject based on number of logged records
|
||||||
$callback = function ($content, array $records) use ($expectedMessage) {
|
$callback = function ($content, array $records) use ($expectedMessage) {
|
||||||
$subject = \count($records) > 0 ? 'Emergency' : 'Normal';
|
$subject = \count($records) > 0 ? 'Emergency' : 'Normal';
|
||||||
|
|
||||||
return $expectedMessage->subject($subject);
|
return $expectedMessage->subject($subject);
|
||||||
};
|
};
|
||||||
$handler = new SymfonyMailerHandler($this->mailer, $callback);
|
$handler = new SymfonyMailerHandler($this->mailer, $callback);
|
||||||
|
@@ -285,11 +285,11 @@ class LoggerTest extends TestCase
|
|||||||
$handler->expects($this->any())
|
$handler->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler->expects($this->any())
|
$handler->expects($this->any())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$logger->pushHandler($handler);
|
$logger->pushHandler($handler);
|
||||||
|
|
||||||
$processor = $this->getMockBuilder('Monolog\Processor\WebProcessor')
|
$processor = $this->getMockBuilder('Monolog\Processor\WebProcessor')
|
||||||
@@ -316,7 +316,7 @@ class LoggerTest extends TestCase
|
|||||||
$handler->expects($this->once())
|
$handler->expects($this->once())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$logger->pushHandler($handler);
|
$logger->pushHandler($handler);
|
||||||
$that = $this;
|
$that = $this;
|
||||||
$logger->pushProcessor(function ($record) use ($that) {
|
$logger->pushProcessor(function ($record) use ($that) {
|
||||||
@@ -337,29 +337,29 @@ class LoggerTest extends TestCase
|
|||||||
$handler1->expects($this->never())
|
$handler1->expects($this->never())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$handler1->expects($this->once())
|
$handler1->expects($this->once())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$logger->pushHandler($handler1);
|
$logger->pushHandler($handler1);
|
||||||
|
|
||||||
$handler2 = $this->createMock('Monolog\Handler\HandlerInterface');
|
$handler2 = $this->createMock('Monolog\Handler\HandlerInterface');
|
||||||
$handler2->expects($this->once())
|
$handler2->expects($this->once())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler2->expects($this->once())
|
$handler2->expects($this->once())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$logger->pushHandler($handler2);
|
$logger->pushHandler($handler2);
|
||||||
|
|
||||||
$handler3 = $this->createMock('Monolog\Handler\HandlerInterface');
|
$handler3 = $this->createMock('Monolog\Handler\HandlerInterface');
|
||||||
$handler3->expects($this->once())
|
$handler3->expects($this->once())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$handler3->expects($this->never())
|
$handler3->expects($this->never())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
;
|
;
|
||||||
@@ -377,27 +377,25 @@ class LoggerTest extends TestCase
|
|||||||
$handler1->expects($this->never())
|
$handler1->expects($this->never())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$handler1->expects($this->once())
|
$handler1->expects($this->once())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
|
|
||||||
$handler2 = $this->createMock('Monolog\Handler\HandlerInterface');
|
$handler2 = $this->createMock('Monolog\Handler\HandlerInterface');
|
||||||
$handler2->expects($this->once())
|
$handler2->expects($this->once())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler2->expects($this->once())
|
$handler2->expects($this->once())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
|
|
||||||
$handler3 = $this->createMock('Monolog\Handler\HandlerInterface');
|
$handler3 = $this->createMock('Monolog\Handler\HandlerInterface');
|
||||||
$handler3->expects($this->once())
|
$handler3->expects($this->once())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$handler3->expects($this->never())
|
$handler3->expects($this->never())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
;
|
;
|
||||||
@@ -419,22 +417,22 @@ class LoggerTest extends TestCase
|
|||||||
$handler1->expects($this->any())
|
$handler1->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler1->expects($this->once())
|
$handler1->expects($this->once())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$logger->pushHandler($handler1);
|
$logger->pushHandler($handler1);
|
||||||
|
|
||||||
$handler2 = $this->createMock('Monolog\Handler\HandlerInterface');
|
$handler2 = $this->createMock('Monolog\Handler\HandlerInterface');
|
||||||
$handler2->expects($this->any())
|
$handler2->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler2->expects($this->once())
|
$handler2->expects($this->once())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
$logger->pushHandler($handler2);
|
$logger->pushHandler($handler2);
|
||||||
|
|
||||||
$logger->debug('test');
|
$logger->debug('test');
|
||||||
@@ -451,7 +449,7 @@ class LoggerTest extends TestCase
|
|||||||
$handler1->expects($this->any())
|
$handler1->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler1->expects($this->never())
|
$handler1->expects($this->never())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
;
|
;
|
||||||
@@ -461,11 +459,11 @@ class LoggerTest extends TestCase
|
|||||||
$handler2->expects($this->any())
|
$handler2->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler2->expects($this->once())
|
$handler2->expects($this->once())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$logger->pushHandler($handler2);
|
$logger->pushHandler($handler2);
|
||||||
|
|
||||||
$logger->debug('test');
|
$logger->debug('test');
|
||||||
@@ -482,7 +480,6 @@ class LoggerTest extends TestCase
|
|||||||
$handler1->expects($this->any())
|
$handler1->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(false);
|
->willReturn(false);
|
||||||
;
|
|
||||||
|
|
||||||
$logger->pushHandler($handler1);
|
$logger->pushHandler($handler1);
|
||||||
$this->assertFalse($logger->isHandling(Level::Debug));
|
$this->assertFalse($logger->isHandling(Level::Debug));
|
||||||
@@ -491,7 +488,6 @@ class LoggerTest extends TestCase
|
|||||||
$handler2->expects($this->any())
|
$handler2->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
|
|
||||||
$logger->pushHandler($handler2);
|
$logger->pushHandler($handler2);
|
||||||
$this->assertTrue($logger->isHandling(Level::Debug));
|
$this->assertTrue($logger->isHandling(Level::Debug));
|
||||||
@@ -677,7 +673,7 @@ class LoggerTest extends TestCase
|
|||||||
$handler->expects($this->any())
|
$handler->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler->expects($this->any())
|
$handler->expects($this->any())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->will($this->throwException(new \Exception('Some handler exception')))
|
->will($this->throwException(new \Exception('Some handler exception')))
|
||||||
@@ -706,7 +702,7 @@ class LoggerTest extends TestCase
|
|||||||
$handler->expects($this->any())
|
$handler->expects($this->any())
|
||||||
->method('isHandling')
|
->method('isHandling')
|
||||||
->willReturn(true);
|
->willReturn(true);
|
||||||
;
|
|
||||||
$handler->expects($this->any())
|
$handler->expects($this->any())
|
||||||
->method('handle')
|
->method('handle')
|
||||||
->will($this->throwException(new \Exception('Some handler exception')))
|
->will($this->throwException(new \Exception('Some handler exception')))
|
||||||
@@ -900,7 +896,6 @@ class LoggingHandler implements HandlerInterface
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class FiberSuspendHandler implements HandlerInterface
|
class FiberSuspendHandler implements HandlerInterface
|
||||||
{
|
{
|
||||||
public function isHandling(LogRecord $record): bool
|
public function isHandling(LogRecord $record): bool
|
||||||
|
@@ -161,7 +161,7 @@ class PsrLogCompatTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* Creates a mock of a `Stringable`.
|
* Creates a mock of a `Stringable`.
|
||||||
*
|
*
|
||||||
* @param string $string The string that must be represented by the stringable.
|
* @param string $string The string that must be represented by the stringable.
|
||||||
*/
|
*/
|
||||||
protected function createStringable(string $string = ''): MockObject&Stringable
|
protected function createStringable(string $string = ''): MockObject&Stringable
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user