phpmailer / apix-log-phpmailer
用于APIx Log的PHPMailer日志记录器
v2.0.0
2017-09-04 09:02 UTC
Requires
- php: >=5.5
- apix/log: ^1.2
- phpmailer/phpmailer: ^6.0
Requires (Dev)
- phpunit/phpunit: 4.8.*
Provides
- psr/log-implementation: 1.0.0
This package is auto-updated.
Last update: 2024-09-12 04:59:10 UTC
README
这是一个扩展了Apix/Log PSR-3 日志记录器的插件,通过PHPMailer使用电子邮件发送日志消息。
项目仓库位于 github,而composer包位于 packagist。
Apix Log 由Franck Cassedanne (@frqnck) 编写。此扩展由Marcus Bointon (@Synchro) 编写,并通过PHPmailer组织发布,采用BSD许可协议(尽管请注意PHPMailer本身使用LGPL)。
安装
通过composer安装记录器
composer require phpmailer/apix-log-phpmailer
您需要至少PHP 5.5。
用法
创建一个Apix PhpMailer Log实例,向构造函数提供一个预配置的PHPMailer实例。此实例将用于所有后续消息。
默认情况下,记录器为每个接收到的日志消息发送一封电子邮件,这可能会非常低效,因此调用 $logger->setDeferred(true)
来保存日志消息,并在__destruct
时一次性发送。
我们建议您在PHPMailer实例中启用异常(通过将true
传递给构造函数),否则您可能不会被告知发送日志消息时出现的问题。
示例
use PHPMailer\PHPMailer\PHPMailer; // Create a PHPMailer instance with exceptions enabled $mailer = new PHPMailer(true); $mailer->addAddress('[email protected]', 'Log Mailbox'); $mailer->setFrom('[email protected]', 'My App'); $mailer->isSMTP(); $mailer->SMTPAuth = true; $mailer->Host = 'tls://mail.example.com:587'; $mailer->Username = 'user'; $mailer->Password = 'pass'; $mailer->isHTML(false); $mailer->Subject = 'Error log'; $logger = new Apix\Logger\PhpMailer($mailer); $logger->setDeferred(true); $logger->info('Log me!'); $logger->error('Log me too!');