2017 © Pedro Peláez
 

library muted-log

Provides a "muted" log writer. The primary purpose is to log exceptions without including parameters in the stack trace.

image

tmountjr/muted-log

Provides a "muted" log writer. The primary purpose is to log exceptions without including parameters in the stack trace.

  • Friday, March 20, 2015
  • by tmountjr
  • Repository
  • 2 Watchers
  • 0 Stars
  • 2 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

Muted Log

Introduction

This package extends Laravel's built-in logging facility to ensure that parameters are not included in the stack trace when calling monolog. Consider the following example code:, (*1)

function throwE($param1)
{
    throw new Exception;
}

try {
    $example = throwE('cleartext parameter');
} catch (Exception $e) {
    Log::error($e);
}

The error log will contain the parameter within the stack trace:, (*2)

[2015-03-18 15:09:49] dev.ERROR: exception 'Exception' in /path/to/function.php:34
Stack trace:
#0 /path/to/app/routes.php(61): throwE('cleartext parameter')

By replacing the exception with an instance of MutedException from this package, the stack trace will not contain the actual parameter values:, (*3)

[2015-03-18 15:12:11] dev.ERROR: Exception 'Exception' with message '' in /path/to/function.php:34
Stack trace:
#0 /path/to/app/routes.php(61): throwE([string])

Note how the argument 'cleartext parameter' was replaced with [string]., (*4)

Installation

Install using composer: composer require tmountjr/muted-log, (*5)

After installing the package, make the following changes in app/config/app.php:, (*6)

'providers' => array(
    // ...
    'Tmountjr\MutedLog\MutedLogServiceProvider',
),

// ...

'aliases' => array(
    // ...
    // 'Log' => 'Illuminate\Support\Facades\Log',
    'Log' => 'Tmountjr\MutedLog\Facades\MutedLog',
    // ...
),

Note that you need to replace the current alias for Log with the facade from this package., (*7)

Usage

No specific action is required to use this package. Once Laravel's built-in Log facade is changed, anytime an exception is written to the log, it will be written using the MutedException. Note that this does not cover xdebug stack traces printed to the screen., (*8)

Debugging Considerations

Clearly you should not be including stack traces with passwords or credit card information in your production logs. However, it may be useful to leave detailed stack traces turned on in pre-production environments, as long as you are not using actual sensitive data in your development environment. You can override which facade is used on a per-environment basis by changing the alias directive in app/config/app.php (which will set the alias globally) and then overriding this behavior in app/config/[environment]/app.php where [environment] is an environment found in bootstrap/start.php:, (*9)

return array(
    'aliases' => array(
        'Log' => 'Illuminate\Support\Facades\Log',
    )
);

License

MutedLog is open-sourced software licensed under the MIT license., (*10)

The Versions

20/03 2015

dev-master

9999999-dev https://github.com/tmountjr/muted-log

Provides a "muted" log writer. The primary purpose is to log exceptions without including parameters in the stack trace.

  Sources   Download

MIT

The Requires

 

by Tom Mount
by Patrick Nelson

laravel monolog exception

20/03 2015

v1.0.0

1.0.0.0 https://github.com/tmountjr/muted-log

Provides a "muted" log writer. The primary purpose is to log exceptions without including parameters in the stack trace.

  Sources   Download

MIT

The Requires

 

by Tom Mount
by Patrick Nelson

laravel monolog exception