    import _debug from 'debug';

    const d = _debug('Play');

    /**
     * 日志级别
     */
    export const LogLevel = {
      Debug: 'Debug',
      Warn: 'Warn',
      Error: 'Error',
    };

    const logger = {
      [LogLevel.Debug]: d,
      [LogLevel.Warn]: console.warn.bind(console),
      [LogLevel.Error]: console.error.bind(console),
    };

    export function setLogger(newLogger) {
      Object.assign(logger, newLogger);
    }

    /**
     * 调试输出
     * @ignore
     * @param {String} log
     */
    export function debug(log) {
      const fullLog = `[DEBUG] ${log}`;
      logger[LogLevel.Debug](fullLog);
    }

    /**
     * 警告输出
     * @ignore
     * @param {String} log
     */
    export function warn(log) {
      const fullLog = `[WARN] ${log}`;
      logger[LogLevel.Warn](fullLog);
    }

    /**
     * 错误输出
     * @ignore
     * @param {String} log
     */
    export function error(log) {
      const fullLog = `[ERROR] ${log}`;
      logger[LogLevel.Error](fullLog);
    }