Documentation

RotatingFileHandler extends StreamHandler
in package

Stores logs to files that are rotated every day and a limited number of files are kept.

This rotation is only intended to be used as a workaround. Using logrotate to handle the rotation is strongly encouraged when you can use it.

Tags
author

Christophe Coevoet stof@notk.org

author

Jordi Boggiano j.boggiano@seld.be

Table of Contents

FILE_PER_DAY  = 'Y-m-d'
FILE_PER_MONTH  = 'Y-m'
FILE_PER_YEAR  = 'Y'
DEFAULT_CHUNK_SIZE  = 10 * 1024 * 1024
MAX_CHUNK_SIZE  = 2147483647
$bubble  : bool
$dateFormat  : string
$filename  : string
$filenameFormat  : string
$filePermission  : int|null
$formatter  : FormatterInterface|null
$level  : int
$maxFiles  : int
$mustRotate  : bool
$nextRotation  : DateTimeImmutable
$processors  : array<string|int, callable>
$stream  : resource|null
$streamChunkSize  : int
$url  : string|null
$useLocking  : bool
$dirCreated  : true|null
$errorMessage  : string|null
__construct()  : mixed
__destruct()  : mixed
__sleep()  : mixed
close()  : void
{@inheritDoc}
getBubble()  : bool
Gets the bubbling behavior.
getFormatter()  : FormatterInterface
{@inheritDoc}
getLevel()  : int
Gets minimum logging level at which this handler will be triggered.
getStream()  : resource|null
Return the currently active stream if it is open
getStreamChunkSize()  : int
getUrl()  : string|null
Return the stream URL if it was configured with a URL and not an active resource
handle()  : bool
{@inheritDoc}
handleBatch()  : void
Handles a set of records at once.
isHandling()  : bool
{@inheritDoc}
popProcessor()  : callable
{@inheritDoc}
pushProcessor()  : HandlerInterface
{@inheritDoc}
reset()  : mixed
{@inheritDoc}
setBubble()  : self
Sets the bubbling behavior.
setFilenameFormat()  : self
setFormatter()  : HandlerInterface
{@inheritDoc}
setLevel()  : self
Sets minimum logging level at which this handler will be triggered.
getDefaultFormatter()  : FormatterInterface
Gets the default formatter.
getGlobPattern()  : string
getTimedFilename()  : string
processRecord()  : array<string|int, mixed>
Processes a record.
resetProcessors()  : void
rotate()  : void
Rotates the files.
streamWrite()  : void
Write to stream
write()  : void
Writes the record down to the log of the implementing handler
createDir()  : void
customErrorHandler()  : bool
getDirFromStream()  : string|null

Constants

DEFAULT_CHUNK_SIZE

protected mixed DEFAULT_CHUNK_SIZE = 10 * 1024 * 1024
Tags
const

int 10MB

MAX_CHUNK_SIZE

protected mixed MAX_CHUNK_SIZE = 2147483647
Tags
const

int

Properties

$level

protected int $level = MonologLogger::DEBUG
Tags
phpstan-var

Level

$processors

protected array<string|int, callable> $processors = []
Tags
phpstan-var

array<ProcessorInterface|callable(Record): Record>

Methods

__construct()

public __construct(string $filename, int $maxFiles[, mixed $level = Logger::DEBUG ][, bool $bubble = true ][, int|null $filePermission = null ][, bool $useLocking = false ]) : mixed
Parameters
$filename : string
$maxFiles : int

The maximal amount of files to keep (0 means unlimited)

$level : mixed = Logger::DEBUG
$bubble : bool = true
$filePermission : int|null = null

Optional file permissions (default (0644) are only for owner read/write)

$useLocking : bool = false

Try to lock log file before doing any writes

Return values
mixed

__destruct()

public __destruct() : mixed
Return values
mixed

__sleep()

public __sleep() : mixed
Return values
mixed

getBubble()

Gets the bubbling behavior.

public getBubble() : bool
Return values
bool

true means that this handler allows bubbling. false means that bubbling is not permitted.

getLevel()

Gets minimum logging level at which this handler will be triggered.

public getLevel() : int
Tags
phpstan-return

Level

Return values
int

getStream()

Return the currently active stream if it is open

public getStream() : resource|null
Return values
resource|null

getStreamChunkSize()

public getStreamChunkSize() : int
Return values
int

getUrl()

Return the stream URL if it was configured with a URL and not an active resource

public getUrl() : string|null
Return values
string|null

handle()

{@inheritDoc}

public handle(array<string|int, mixed> $record) : bool
Parameters
$record : array<string|int, mixed>
Return values
bool

handleBatch()

Handles a set of records at once.

public handleBatch(array<string|int, mixed> $records) : void
Parameters
$records : array<string|int, mixed>

The records to handle (an array of record arrays)

Return values
void

isHandling()

{@inheritDoc}

public isHandling(array<string|int, mixed> $record) : bool
Parameters
$record : array<string|int, mixed>
Return values
bool

setBubble()

Sets the bubbling behavior.

public setBubble(bool $bubble) : self
Parameters
$bubble : bool

true means that this handler allows bubbling. false means that bubbling is not permitted.

Return values
self

setFilenameFormat()

public setFilenameFormat(string $filenameFormat, string $dateFormat) : self
Parameters
$filenameFormat : string
$dateFormat : string
Return values
self

setLevel()

Sets minimum logging level at which this handler will be triggered.

public setLevel(Level|LevelName|\Psr\Log\LogLevel::* $level) : self
Parameters
$level : Level|LevelName|\Psr\Log\LogLevel::*

Level or level name

Return values
self

processRecord()

Processes a record.

protected processRecord(array<string|int, mixed> $record) : array<string|int, mixed>
Parameters
$record : array<string|int, mixed>
Tags
phpstan-param

Record $record

phpstan-return

Record

Return values
array<string|int, mixed>

streamWrite()

Write to stream

protected streamWrite(resource $stream, array<string|int, mixed> $record) : void
Parameters
$stream : resource
$record : array<string|int, mixed>
Tags
phpstan-param

FormattedRecord $record

Return values
void

write()

Writes the record down to the log of the implementing handler

protected write(array<string|int, mixed> $record) : void
Parameters
$record : array<string|int, mixed>
Return values
void

createDir()

private createDir(string $url) : void
Parameters
$url : string
Return values
void

customErrorHandler()

private customErrorHandler(int $code, string $msg) : bool
Parameters
$code : int
$msg : string
Return values
bool

getDirFromStream()

private getDirFromStream(string $stream) : string|null
Parameters
$stream : string
Return values
string|null

Search results