LaravelPackages.net
Acme Inc.
Toggle sidebar
notify/notification

this is private package to use for logging and emailing to developer and client

330
0
About notify/notification

notify/notification is a Laravel package for this is private package to use for logging and emailing to developer and client. It currently has 0 GitHub stars and 330 downloads on Packagist. Install it with composer require notify/notification. Discover more Laravel packages by notify or browse all Laravel packages to compare alternatives.

Last updated

Laravel Custom Log & Notifications

๐Ÿš€ Laravel Custom Log & Notifications is a robust logging and notification library designed for Laravel applications, offering seamless handling of exceptions and automatic error reporting.

Installation

  1. Install the Package: Use Composer to install the package:

    composer require notify/notification:"dev-main"
    
  2. Install AWS SES Package: Use Composer to install the package:

    composer require aws/aws-sdk-php
    
  3. Publish Configuration: Publish the configuration file:

    php artisan vendor:publish --provider="Notify\\LaravelCustomLog\\LaravelCustomLogServiceProvider" --tag=config
    
  4. Publish MySQL Migration: Publish the MySQL migration file:

    php artisan vendor:publish --provider="Notify\\LaravelCustomLog\\LaravelCustomLogServiceProvider" --tag=migration
    

Configuration Options

Configure the behavior of the package in the config/custom-log.php file. Here's a breakdown of the available options:

  • ๐Ÿ› ๏ธ dev-mode: Enable/disable development mode.
  • ๐Ÿ› ๏ธ custom_log_mysql_enable: Enable/disable logging to a MySQL database.
  • ๐Ÿ› ๏ธ mysql_table: Define the table name for logging in the MySQL database.
  • ๐Ÿ› ๏ธ override_exception_handler: Override the default Laravel exception handler.
  • ๐Ÿ“ง emails: Configure email settings for error reports.
  • ๐Ÿ“ง pm-emails: Specify project manager email addresses.
  • ๐Ÿ“ง dev-emails: Specify developer email addresses for notifications.
  • โš ๏ธ ignore_exceptions: Specify exceptions and error codes to ignore.
  • ๐Ÿ’พ database_connection: Define the database connection for logging.

SMTP/AWS SES Configuration

To use AWS SES for email notifications, configure the following environment variables in your .env file:

MAIL_MAILER=ses
MAIL_HOST=
MAIL_PORT=
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=
MAIL_FROM_NAME="${APP_NAME}"

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=

Example to handle the exception internally

Disable the exception override in custom-log.php and use your own logic in Exceptions/Handler.php.

The below example is handling all the database exception and ignore them to log

public function register()
{
    $this->reportable(function (Throwable $e) {
        if ($e instanceof QueryException) {
           return;
        } 
        Notifications::error('exceptions', $e->getMessage(), $e->getTrace());
    });
}

Once installed and configured, Laravel Custom Log & Notifications will handle exception reporting and notifications automatically according to your configuration settings.

๐Ÿ‘ Happy logging and notifying with Laravel Custom Log & Notifications!

Comments