MOTOSHARE 🚗🏍️
Turning Idle Vehicles into Shared Rides & Earnings

From Idle to Income. From Parked to Purpose.
Earn by Sharing, Ride by Renting.
Where Owners Earn, Riders Move.
Owners Earn. Riders Move. Motoshare Connects.

With Motoshare, every parked vehicle finds a purpose. Owners earn. Renters ride.
🚀 Everyone wins.

Start Your Journey with Motoshare

Troubleshooting Laravel: “laravel.EMERGENCY: Unable to create configured logger. Using emergency logger.”

If you’ve recently upgraded your Laravel application from version 5.7 to 10 and encountered the error “laravel.EMERGENCY: Unable to create configured logger. Using emergency logger,” don’t worry; you’re not alone. The issue and provide you with a step-by-step solution to get your Laravel application back on track.

The error suggests that Laravel is unable to create a configured logger, resulting in the use of the emergency logger. This typically indicates a misconfiguration or missing file in your logging setup.

Solution: Adding the Logging Configuration

In Laravel 5.7, the default logging configuration might have been handled differently compared to Laravel 10. The absence of a config/logging.php file in your Laravel 10 application could lead to this error.

To resolve this issue, you need to create the config/logging.php file. Here’s a sample configuration that you can use:

<?php

use Monolog\Handler\NullHandler;
use Monolog\Handler\StreamHandler;
use Monolog\Handler\SyslogUdpHandler;
use Monolog\Processor\PsrLogMessageProcessor;

return [

    /*
    |--------------------------------------------------------------------------
    | Default Log Channel
    |--------------------------------------------------------------------------
    |
    | This option defines the default log channel that gets used when writing
    | messages to the logs. The name specified in this option should match
    | one of the channels defined in the "channels" configuration array.
    |
    */

    'default' => env('LOG_CHANNEL', 'stack'),

    /*
    |--------------------------------------------------------------------------
    | Deprecations Log Channel
    |--------------------------------------------------------------------------
    |
    | This option controls the log channel that should be used to log warnings
    | regarding deprecated PHP and library features. This allows you to get
    | your application ready for upcoming major versions of dependencies.
    |
    */

    'deprecations' => [
        'channel' => env('LOG_DEPRECATIONS_CHANNEL', 'null'),
        'trace' => false,
    ],

    /*
    |--------------------------------------------------------------------------
    | Log Channels
    |--------------------------------------------------------------------------
    |
    | Here you may configure the log channels for your application. Out of
    | the box, Laravel uses the Monolog PHP logging library. This gives
    | you a variety of powerful log handlers / formatters to utilize.
    |
    | Available Drivers: "single", "daily", "slack", "syslog",
    |                    "errorlog", "monolog",
    |                    "custom", "stack"
    |
    */

    'channels' => [
        'stack' => [
            'driver' => 'stack',
            'channels' => ['single'],
            'ignore_exceptions' => false,
        ],

        'single' => [
            'driver' => 'single',
            'path' => storage_path('logs/laravel.log'),
            'level' => env('LOG_LEVEL', 'debug'),
            'replace_placeholders' => true,
        ],

        'daily' => [
            'driver' => 'daily',
            'path' => storage_path('logs/laravel.log'),
            'level' => env('LOG_LEVEL', 'debug'),
            'days' => 14,
            'replace_placeholders' => true,
        ],

        'slack' => [
            'driver' => 'slack',
            'url' => env('LOG_SLACK_WEBHOOK_URL'),
            'username' => 'Laravel Log',
            'emoji' => ':boom:',
            'level' => env('LOG_LEVEL', 'critical'),
            'replace_placeholders' => true,
        ],

        'papertrail' => [
            'driver' => 'monolog',
            'level' => env('LOG_LEVEL', 'debug'),
            'handler' => env('LOG_PAPERTRAIL_HANDLER', SyslogUdpHandler::class),
            'handler_with' => [
                'host' => env('PAPERTRAIL_URL'),
                'port' => env('PAPERTRAIL_PORT'),
                'connectionString' => 'tls://'.env('PAPERTRAIL_URL').':'.env('PAPERTRAIL_PORT'),
            ],
            'processors' => [PsrLogMessageProcessor::class],
        ],

        'stderr' => [
            'driver' => 'monolog',
            'level' => env('LOG_LEVEL', 'debug'),
            'handler' => StreamHandler::class,
            'formatter' => env('LOG_STDERR_FORMATTER'),
            'with' => [
                'stream' => 'php://stderr',
            ],
            'processors' => [PsrLogMessageProcessor::class],
        ],

        'syslog' => [
            'driver' => 'syslog',
            'level' => env('LOG_LEVEL', 'debug'),
            'facility' => LOG_USER,
            'replace_placeholders' => true,
        ],

        'errorlog' => [
            'driver' => 'errorlog',
            'level' => env('LOG_LEVEL', 'debug'),
            'replace_placeholders' => true,
        ],

        'null' => [
            'driver' => 'monolog',
            'handler' => NullHandler::class,
        ],

        'emergency' => [
            'path' => storage_path('logs/laravel.log'),
        ],
    ],

];

Copy the above configuration into a new config/logging.php file in your Laravel 10 application. Ensure that you customize it based on your specific needs.

Running Your Application

After adding the logging configuration, try running your Laravel application again. The error should be resolved, and you should see your log files being generated in the specified storage/logs directory.

Related Posts

Mastering Project Workflows in Bangalore’s Tech Hub

Streamline Your Tech Projects: A Guide to Effective Workflow Management in Bangalore Bangalore’s reputation as India’s Silicon Valley is built on more than just brilliant ideas and…

Master Advanced CI/CD with Jenkins in Pune

Pune’s technological renaissance continues to accelerate, establishing the city as a premier destination for software innovation and enterprise development. From the expansive IT parks of Hinjewadi to…

Architect Advanced CI/CD with Jenkins in Mumbai

Mumbai’s position as India’s economic and technological epicenter continues to intensify, with corporations and startups alike competing to deliver software with unprecedented speed and reliability. From the…

Master CI/CD Automation with Jenkins in Kolkata

Kolkata’s technology landscape is undergoing a remarkable transformation, evolving from its traditional strengths into a vibrant hub for modern software development and digital innovation. Across the city’s…

Master CI/CD Automation with Jenkins in Hyderabad

Hyderabad’s tech landscape is experiencing an unprecedented surge, solidifying its reputation as India’s next major technology powerhouse. From the bustling corridors of HITEC City and Gachibowli to…

Master Jenkins CI/CD in Chennai: Build Automation Skills for Modern DevOps

Chennai’s technology landscape continues to grow as a significant hub for software development, IT services, and digital innovation. From established IT corridors to emerging tech parks, organizations…

0 0 votes
Article Rating
Subscribe
Notify of
guest
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
trackback

[…] Troubleshooting Laravel: “laravel.EMERGENCY: Unable to create configured logger. Using emergency l… […]

trackback

[…] Troubleshooting Laravel: “laravel.EMERGENCY: Unable to create configured logger. Using emergency l… […]

2
0
Would love your thoughts, please comment.x
()
x