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!');