Log

Joomla! Log Class

This class hooks into the global log configuration settings to allow for user configured logging events to be sent to where the user wishes them to be sent. On high load sites Syslog is probably the best (pure PHP function), then the text file based loggers (CSV, W3c or plain Formattedtext) and finally MySQL offers the most features (e.g. rapid searching) but will incur a performance hit due to INSERT being issued.

since

1.7.0

Methods

__construct

Constructor.

__construct() 
since

1.7.0

add

Method to add an entry to the log.

add(mixed $entry, integer $priority = self::INFO, string $category = '', string $date = null, array $context = array()) : void
static
since

1.7.0

Arguments

$entry

mixedThe LogEntry object to add to the log or the message for a new LogEntry object.

$priority

integerMessage priority.

$category

stringType of entry

$date

stringDate of entry (defaults to now if not specified or blank)

$context

arrayAn optional array with additional message context.

addLogEntry

Method to add an entry to the appropriate loggers.

addLogEntry(\Joomla\CMS\Log\LogEntry $entry) : void
since

1.7.0

throws

\RuntimeException

Arguments

$entry

\Joomla\CMS\Log\LogEntryThe LogEntry object to send to the loggers.

addLogger

Add a logger to the Log instance. Loggers route log entries to the correct files/systems to be logged.

addLogger(array $options, integer $priorities = self::ALL, array $categories = array(), boolean $exclude = false) : void
static
since

1.7.0

Arguments

$options

arrayThe object configuration array.

$priorities

integerMessage priority

$categories

arrayTypes of entry

$exclude

booleanIf true, all categories will be logged except those in the $categories array

addLoggerInternal

Add a logger to the Log instance. Loggers route log entries to the correct files/systems to be logged.

addLoggerInternal(array $options, integer $priorities = self::ALL, array $categories = array(), boolean $exclude = false) : void

This method allows you to extend Log completely.

since

1.7.0

Arguments

$options

arrayThe object configuration array.

$priorities

integerMessage priority

$categories

arrayTypes of entry

$exclude

booleanIf true, all categories will be logged except those in the $categories array

createDelegatedLogger

Creates a delegated PSR-3 compatible logger from the current singleton instance. This method always returns a new delegated logger.

createDelegatedLogger() : \Joomla\CMS\Log\DelegatingPsrLogger
static

findLoggers

Method to find the loggers to use based on priority and category values.

findLoggers(integer $priority, string $category) : array
since

1.7.0

Arguments

$priority

integerMessage priority.

$category

stringType of entry

Response

arrayThe array of loggers to use for the given priority and category values.

setInstance

Returns a reference to the a Log object, only creating it if it doesn't already exist.

setInstance(\Joomla\CMS\Log\Log $instance) : void
static

Note: This is principally made available for testing and internal purposes.

since

1.7.0

Arguments

$instance

\Joomla\CMS\Log\LogThe logging object instance to be used by the static methods.

Constants

ALL

All log priorities.

Value 30719
since

1.7.0

Type(s)

integer

EMERGENCY

The system is unusable.

Value 1
since

1.7.0

Type(s)

integer

ALERT

Action must be taken immediately.

Value 2
since

1.7.0

Type(s)

integer

CRITICAL

Critical conditions.

Value 4
since

1.7.0

Type(s)

integer

ERROR

Error conditions.

Value 8
since

1.7.0

Type(s)

integer

WARNING

Warning conditions.

Value 16
since

1.7.0

Type(s)

integer

NOTICE

Normal, but significant condition.

Value 32
since

1.7.0

Type(s)

integer

INFO

Informational message.

Value 64
since

1.7.0

Type(s)

integer

DEBUG

Debugging message.

Value 128
since

1.7.0

Type(s)

integer

Properties

instance

The global Log instance.

static
since

1.7.0

Type(s)

\Joomla\CMS\Log\Log

configurations

Container for Logger configurations.

since

1.7.0

Type(s)

array

loggers

Container for Logger objects.

since

1.7.0

Type(s)

array<mixed,\Joomla\CMS\Log\Logger>

lookup

Lookup array for loggers.

since

1.7.0

Type(s)

array