Get a realtime feed of your Laravel project’s most important events using Logsnag. Supports push notifications straight to your phone.
Get notified:
- In the Logsnag dashboard.
- On your desktop/laptop (windows + macOS).
- On your phone (android + iOS).
I create Open Source software in my spare time. If you wish to support me, consider buying me a coffee :).
Logsnag is currently in beta mode, and you must join the waitlist in order to use it. However, they accept people fairly quickly. Join on their website here: https://logsnag.com/.
- PHP 8+
- Laravel 9
You can install the package via composer:
composer require expdev07/laravel-logsnag
You can publish the config file with:
php artisan vendor:publish --tag="logsnag-config"
This is the contents of the published config file:
<?php
return [
/*
|--------------------------------------------------------------------------
| Logsnag.
|--------------------------------------------------------------------------
|
| Configure the Logsnag options.
|
*/
/**
* The project name.
*/
'project' => env('LOGSNAG_PROJECT', 'laravel'),
/**
* The API token.
*/
'token' => env('LOGSNAG_TOKEN', ''),
/**
* A mapping of icons for logging.
*/
'icons' => [
'DEBUG' => 'ℹ️',
'INFO' => 'ℹ️',
'NOTICE' => '📌',
'WARNING' => '⚠️',
'ERROR' => '⚠️',
'CRITICAL' => '🔥',
'ALERT' => '🔔️',
'EMERGENCY' => '💀',
],
];
Add the Logsnag channel to your logging config:
'channels' => [
//...
'logsnag' => [
'driver' => 'custom',
'via' => ExpDev07\Logsnag\Logger\LogsnagLogger::class,
'level' => 'debug',
'project' => 'my-project',
'channel' => 'my-channel',
'notify' => true,
],
];
Using logger:
use Illuminate\Support\Facades\Log;
Log::channel('logsnag')->emergency('There is an emergency! Please fix ASAP.');
Using facade:
use ExpDev07\Logsnag\Facades\Logsnag;
Logsnag::log('my-channel',
event: 'New subscriber!',
description: 'Someone just subscribed to MySaaS Pro at $9.99',
icon: '🤑',
notify: true,
);
Using client:
use ExpDev07\Logsnag\Client\LogsnagClient;
app(LogsnagClient::class)->log(new LogsnagRequest(
project: 'project-name',
channel: 'channel',
event: 'Test event',
description: 'This is a description for test event',
icon: '😊',
notify: true,
));
- project: The logsnag project name.
- channel: The channel to log in. Must be lowercase and hyphenated.
- event: The event name.
- description: The event description.
- icon: Associate the log with an icon (emoji).
- notify: Whether to send push notifications to devices.
See Logsnag Log route for more information.
A log about a new subscriber in the Logsnag dashboard.
A log about an app emergency in the Logsnag dashboard.
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.