smajohusic/laravel-mail-logger

监听邮件发送事件,并将信息保存到数据库作为备份/日志

1.0.1 2017-11-10 14:01 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:27:37 UTC


README

Latest Version on Packagist Software License Build Status Total Downloads

简介

邮件日志器只有一个目的,在邮件从您的应用程序发送之前保存邮件。这使得您可以对邮件进行备份,并在出现问题时获得概述。

此包监听从邮件发送者触发的事件。监听器将调度一个作业,然后将所需表单信息、事件、路由和接收者保存到数据库。

此包还支持自动删除。您可以通过在配置文件中定义天数来定义应用程序应保留日志的长度。

安装

Laravel 5.5 +

  1. composer require smajohusic/laravel-mail-logger

  2. 包会自动通过 Laravel 的自动服务提供者注册来发现和注册。

Laravel 5.4 或更早版本

  1. composer require smajohusic/laravel-mail-logger
  2. Smajo\MailLogger\MailLogServiceProvider::class 添加到 app.php 中的 providers
  3. 执行命令: php artisan vendor:publish --provider="Smajo\MailLogger\MailLogServiceProvider"
  4. 运行: php artisan migrate 以生成邮件日志表

要求

cron 任务

要启用自动删除,您需要设置一个运行以下命令的 cron 任务:

php artisan schedule:run

使用

mailLogger.php 配置文件

默认情况下,自动删除是禁用的。要启用它,请设置

'enableAutoDeletion' => true,

您可以通过提供天数来设置日志在数据库中应保留多长时间。

'keepLogsForDays' => 30,

为了更容易找到邮件,您可以在表中定义您的应用程序使用的所有“收件人”字段。这将然后在请求中找到用户电子邮件,并将其保存为“发件人”字段。

'toEmailAddresses' => [
    'email',
    'e-mail',
    'to',
]