protected static function _checkLogFile()
    {
        if ( null !== static::$_logger )
        {
            return static::$_logFileValid = true;
        }

        if ( empty( static::$_logFilePath ) )
        {
            //	Try and figure out a good place to log...
            static::$_logFilePath = ( \Kisma::get( 'app.log_path', \Kisma::get( 'app.base_path' ) ) ?: dirname( getcwd() ) ) . '/log';
        }

        if ( !is_dir( static::$_logFilePath ) )
        {
            if ( false === @mkdir( static::$_logFilePath, 0777, true ) )
            {
                error_log( 'Unable to create default log directory: ' . static::$_logFilePath );

                return static::$_logFileValid = false;
            }
        }

        if ( empty( static::$_logFileName ) )
        {
            \Kisma::set( 'app.log_file_name', static::$_logFileName = static::DEFAULT_LOG_FILE_NAME );
        }

        static::$_defaultLog = static::$_logFilePath . '/' . trim( static::$_logFileName, '/' );

        static::$_logger = static::createLogger( static::DEFAULT_CHANNEL_NAME );

        //	If we're in debug mode and these haven't been disabled, enable...
        if ( \Kisma::get( CoreSettings::DEBUG ) )
        {
            static::$_enableChromePhp = static::$_enableChromePhp ?: true;
            static::$_enableFirePhp = static::$_enableFirePhp ?: true;
        }

        //	Enable conditional handlers
        if ( static::$_enableFirePhp )
        {
            static::$_logger->pushHandler( new FirePHPHandler() );
        }

        if ( static::$_enableChromePhp )
        {
            static::$_logger->pushHandler( new ChromePHPHandler() );
        }

        return static::$_logFileValid = true;
    }