Class yii\log\EmailTarget
Inheritance | yii\log\EmailTarget » yii\log\Target » yii\base\Component » yii\base\BaseObject |
---|---|
Implements | yii\base\Configurable |
Available since version | 2.0 |
Source Code | https://github.com/yiisoft/yii2/blob/master/framework/log/EmailTarget.php |
EmailTarget sends selected log messages to the specified email addresses.
You may configure the email to be sent by setting the $message property, through which you can set the target email addresses, subject, etc.:
'components' => [
'log' => [
'targets' => [
[
'class' => 'yii\log\EmailTarget',
'mailer' => 'mailer',
'levels' => ['error', 'warning'],
'message' => [
'from' => ['log@example.com'],
'to' => ['developer1@example.com', 'developer2@example.com'],
'subject' => 'Log message',
],
],
],
],
],
In the above mailer
is ID of the component that sends email and should be already configured.
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$categories | array | List of message categories that this target is interested in. | yii\log\Target |
$except | array | List of message categories that this target is NOT interested in. | yii\log\Target |
$exportInterval | integer | How many messages should be accumulated before they are exported. | yii\log\Target |
$logVars | array | List of the PHP predefined variables that should be logged in a message. | yii\log\Target |
$mailer | yii\mail\MailerInterface|array|string | The mailer object or the application component ID of the mailer object. | yii\log\EmailTarget |
$maskVars | array | List of the PHP predefined variables that should NOT be logged "as is" and should always be replaced
with a mask *** before logging, when exist. |
yii\log\Target |
$message | array | The configuration array for creating a message object. | yii\log\EmailTarget |
$messages | array | The messages that are retrieved from the logger so far by this log target. | yii\log\Target |
$microtime | boolean | Whether to log time with microseconds. | yii\log\Target |
$prefix | callable | A PHP callable that returns a string to be prefixed to every exported message. | yii\log\Target |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\Component |
__clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
__construct() | Constructor. | yii\base\BaseObject |
__get() | Returns the value of a component property. | yii\base\Component |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Component |
__set() | Sets the value of a component property. | yii\base\Component |
__unset() | Sets a component property to be null. | yii\base\Component |
attachBehavior() | Attaches a behavior to this component. | yii\base\Component |
attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component |
behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Component |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Component |
className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
collect() | Processes the given log messages. | yii\log\Target |
detachBehavior() | Detaches a behavior from the component. | yii\base\Component |
detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component |
export() | Sends log messages to specified email addresses. | yii\log\EmailTarget |
filterMessages() | Filters the given messages according to their categories and levels. | yii\log\Target |
formatMessage() | Formats a log message for display as a string. | yii\log\Target |
getBehavior() | Returns the named behavior object. | yii\base\Component |
getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component |
getEnabled() | Check whether the log target is enabled. | yii\log\Target |
getLevels() | yii\log\Target | |
getMessagePrefix() | Returns a string to be prefixed to the given message. | yii\log\Target |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Component |
hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\base\Component |
init() | {@inheritdoc} | yii\log\EmailTarget |
off() | Detaches an existing event handler from this component. | yii\base\Component |
on() | Attaches an event handler to an event. | yii\base\Component |
setEnabled() | Sets a value indicating whether this log target is enabled. | yii\log\Target |
setLevels() | Sets the message levels that this target is interested in. | yii\log\Target |
trigger() | Triggers an event. | yii\base\Component |
Protected Methods
Method | Description | Defined By |
---|---|---|
composeMessage() | Composes a mail message with the given body content. | yii\log\EmailTarget |
getContextMessage() | Generates the context information to be logged. | yii\log\Target |
getTime() | Returns formatted ('Y-m-d H:i:s') timestamp for message. | yii\log\Target |
Property Details
The mailer object or the application component ID of the mailer object. After the EmailTarget object is created, if you want to change this property, you should only assign it with a mailer object. Starting from version 2.0.2, this can also be a configuration array for creating the object.
The configuration array for creating a message object. Note that the "to" option must be set, which specifies the destination email address(es).
Method Details
Composes a mail message with the given body content.
protected yii\mail\MessageInterface composeMessage ( $body ) | ||
$body | string | The body content |
return | yii\mail\MessageInterface | $message |
---|
Sends log messages to specified email addresses.
Starting from version 2.0.14, this method throws LogRuntimeException in case the log can not be exported.
public void export ( ) | ||
throws | yii\log\LogRuntimeException |
---|
{@inheritdoc}
public void init ( ) |