HistoryMiddleware
in package
implements
MiddlewareInterface
FinalYes
Журнал выполненных обменов (история) для отладки, тестов и экспорта в HAR.
Хранит запрос, ответ или исключение, момент начала и длительность каждого
обмена. Размер журнала ограничен кольцевым буфером ($limit), поэтому
долгоживущий клиент не накапливает память без предела.
Table of Contents
Interfaces
- MiddlewareInterface
- Звено конвейера обработки запроса.
Methods
- __construct() : mixed
- clear() : void
- Очистить журнал.
- count() : int
- Число записей журнала.
- entries() : array<int, Throwable|null, started: float, duration: float}>
- Записи журнала от старых к новым.
- last() : Throwable|null, started: float, duration: float}|null
- Последняя запись журнала.
- process() : Response
- Обработать запрос, передав управление дальше по конвейеру.
Methods
__construct()
public
__construct([int $limit = 100 ][, callable(): float|null $clock = null ]) : mixed
Parameters
- $limit : int = 100
-
максимум хранимых записей (старые вытесняются)
- $clock : callable(): float|null = null
-
источник времени в секундах (для тестов)
clear()
Очистить журнал.
public
clear() : void
count()
Число записей журнала.
public
count() : int
Return values
int —число записей
entries()
Записи журнала от старых к новым.
public
entries() : array<int, Throwable|null, started: float, duration: float}>
Return values
array<int, Throwable|null, started: float, duration: float}>last()
Последняя запись журнала.
public
last() : Throwable|null, started: float, duration: float}|null
Return values
Throwable|null, started: float, duration: float}|null —запись или null
process()
Обработать запрос, передав управление дальше по конвейеру.
public
process(Request $request, callable(Request): Response $next) : Response
Parameters
- $request : Request
-
входящий запрос
- $next : callable(Request): Response
-
следующий обработчик конвейера
Attributes
- #[Override]
Return values
Response —полученный ответ