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

package

Application

Methods

__construct

Constructor.

__construct() : mixed
since

1.7.0

Response

mixed

add

Method to add an entry to the log.

add(mixed entry, int 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

intMessage 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, int priorities = self::ALL, array categories = array(), bool exclude = false) : void
static
since

1.7.0

Arguments

options

arrayThe object configuration array.

priorities

intMessage priority

categories

arrayTypes of entry

exclude

boolIf 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, int priorities = self::ALL, array categories = array(), bool exclude = false) : void

This method allows you to extend Log completely.

since

1.7.0

Arguments

options

arrayThe object configuration array.

priorities

intMessage priority

categories

arrayTypes of entry

exclude

boolIf 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
since

3.8.0

Response

\Joomla\CMS\Log\DelegatingPsrLogger

findLoggers

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

findLoggers(int priority, string category) : array
since

1.7.0

Arguments

priority

intMessage priority.

category

stringType of entry

Response

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

registerLogger

Register a logger to the registry

registerLogger(string key, string class, bool replace = false) : void
since

4.0.0

Arguments

key

stringThe service key to be registered

class

stringThe class name of the logger

replace

boolFlag indicating the service key may replace an existing definition

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)

int

EMERGENCY

The system is unusable.

Value 1
since

1.7.0

Type(s)

int

ALERT

Action must be taken immediately.

Value 2
since

1.7.0

Type(s)

int

CRITICAL

Critical conditions.

Value 4
since

1.7.0

Type(s)

int

ERROR

Error conditions.

Value 8
since

1.7.0

Type(s)

int

WARNING

Warning conditions.

Value 16
since

1.7.0

Type(s)

int

NOTICE

Normal, but significant condition.

Value 32
since

1.7.0

Type(s)

int

INFO

Informational message.

Value 64
since

1.7.0

Type(s)

int

DEBUG

Debugging message.

Value 128
since

1.7.0

Type(s)

int

Properties

instance

The global Log instance.

static
since

1.7.0

Type(s)

Log

configurations

Container for Logger configurations.

since

1.7.0

Type(s)

array

loggers

Container for Logger objects.

since

1.7.0

Type(s)

Logger[]

lookup

Lookup array for loggers.

since

1.7.0

Type(s)

array

loggerRegistry

The registry of available loggers

since

4.0.0

Type(s)

LoggerRegistry