# worker/4.9.35/src/MWP/Monolog/Processor/ExceptionProcessor.php

ManageWP Worker, version 4.9.35. 34 lines.

- Page: https://pluginprobe.com/plugins/worker/4.9.35/code/src/MWP/Monolog/Processor/ExceptionProcessor.php
- Raw: https://pluginprobe.com/plugins/worker/4.9.35/raw/src/MWP/Monolog/Processor/ExceptionProcessor.php
- Modified: 2015-01-18T15:26:34+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/worker/4.9.35/code/src/MWP/Monolog/Processor/ExceptionProcessor.php#L10-L20`.

```php
<?php
/*
 * This file is part of the ManageWP Worker plugin.
 *
 * (c) ManageWP LLC <contact@managewp.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

class MWP_Monolog_Processor_ExceptionProcessor implements Monolog_Processor_ProcessorInterface
{
    public function callback(array $record)
    {
        if (!isset($record['context']['exception']) || !$record['context']['exception'] instanceof Exception) {
            return $record;
        }

        /** @var Exception $exception */
        $exception = $record['context']['exception'];
        unset($record['context']['exception']);

        $record['file'] = $exception->getFile();
        $record['line'] = $exception->getLine();

        $record['extra']['exception_class']   = get_class($exception);
        $record['extra']['exception_message'] = $exception->getMessage();
        $record['extra']['exception_code']    = $exception->getCode();
        $record['extra']['exception_trace']   = $exception->getTraceAsString();

        return $record;
    }
}

```
