Skip to content
Snippets Groups Projects
Select Git revision
  • c14dedf87f899f4eab96cd8df2e3e026cb250034
  • master default protected
  • feat/npm-publish
  • feat/demo-deploy
  • change-demo-deploy
  • remove-smoke
  • feat/acceptance-tests
  • feature/deploy-composer.json
  • feature/mysql-bin-logs
  • skip-codecept-for-libs
  • include-composer-json
  • exclude-wp-assets
  • update_codecept_image
  • fix/silenced-copy
  • remove-free-translations
  • codeception-with-optional-step
  • improve-parallelization
  • linter-exit
  • change-images
  • fix/linter
  • globally-raise-mem-limit
  • no-symlink2
22 results

static-analysis.yml

Blame
  • LoggerFacade.php 2.85 KiB
    <?php
    
    namespace WPDesk\Logger;
    
    use Monolog\Logger;
    use Psr\Log\LogLevel;
    use WP_Error;
    use Exception;
    
    /**
     * Facilitates creation of logger with default WPDesk settings
     *
     * @package WPDesk\Logger
     */
    class LoggerFacade
    {
        const BACKTRACE_FILENAME_KEY = 'file';
    
        /** @var LoggerFactory */
        private static $factory;
    
        /**
         * @return Logger
         */
        public static function getLogger()
        {
            if (self::$factory === null) {
                self::$factory = new WPDeskLoggerFactory();
            }
            return self::$factory->createWPDeskLogger();
        }
    
        /**
         * Snake case alias for getLogger
         *
         * @return Logger
         */
        public static function get_logger()
        {
            return self::getLogger();
        }
    
        /**
         * Log this exception into WPDesk logger
         *
         * @param WP_Error $e Error to log.
         * @param array $backtrace Backtrace information with snapshot of error env.
         * @param string $level Level of error.
         *
         * @see http://php.net/manual/en/function.debug-backtrace.php
         */
        public static function log_wp_error(WP_Error $e, array $backtrace, $level = LogLevel::ERROR)
        {
            $message = 'Error: ' . get_class($e) . ' Code: ' . $e->get_error_code() . ' Message: ' . $e->get_error_message();
    
            self::log_message_backtrace($message, $backtrace, $level);
        }
    
        /**
         * Log this exception into WPDesk logger
         *
         * @param Exception $e Exception to log.
         * @param string $level Level of error.
         */
        public static function log_exception(Exception $e, $level = LogLevel::ERROR)
        {
            $message = 'Exception: ' . get_class($e) . ' Code: ' . $e->getCode() . ' Message: ' . $e->getMessage() . ' Stack: ' . $e->getTraceAsString();
    
            self::log_message($message, ['exception' => $e], $e->getFile(), $level);
        }