解决跨域问题

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,  # 是否禁用已经存在的日志器
    'formatters': {  # 日志信息显示的格式
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(module)s %(lineno)d %(message)s'
        },
    },
    'filters': {  # 对日志进行过滤
        'require_debug_true': {  # django在debug模式下才输出日志
            '()': 'django.utils.log.RequireDebugTrue',
        },
    },
    'handlers': {  # 日志处理方法
        'console': {  # 向终端中输出日志
            'level': 'INFO',
            'filters': ['require_debug_true'],
            'class': 'logging.StreamHandler',
            'formatter': 'simple'
        },
        'file': {  # 向文件中输出日志
            'level': 'INFO',
            'class': 'logging.handlers.RotatingFileHandler',
            'filename': os.path.join(BASE_DIR, 'logs/meiduo.log'),  # 日志文件的位置
            'maxBytes': 300 * 1024 * 1024,
            'backupCount': 10,
            'formatter': 'verbose'
        },
    },
    'loggers': {  # 日志器
        'django': {  # 定义了一个名为django的日志器
            'handlers': ['console', 'file'],  # 可以同时向终端与文件中输出日志
            'propagate': True,  # 是否继续传递日志信息
            'level': 'INFO',  # 日志器接收的最低日志级别
        },
    }
}









### 日志记录器的使用

> 在项目中我们来讲, 这里暂时大家看看即可.

```python
# 1. 导入: 在需要使用的位置导入
import logging

# 2. 创建日志记录器: 导入后创建日志器才能使用
logger = logging.getLogger('django')

# 3. 根据不同情况, 输出日志
logger.debug('调试信息')
logger.info('打印信息')
logger.error('错误信息')
```

### 总结:

1. 本项目最低日志等级设置为:**INFO**

2. 创建日志记录器的方式:

   ```python
   logger = logging.getLogger('django')
   ```

3. 日志记录器的使用:

   ```python
   logger.info('测试logging模块info')
   ```

4. 在日志`loggers`选项中可以指定多个日志记录器

举一反三:

- 日志在公司用的多吗?

  > 基本上所有的公司开发都需要用到日志. 经常使用. 最好学会配置日志. 一般在和数据库的相关内容上, 日志是解决问题的主要方式, 对于开发来说, 日志用的少一点.

- 日志需要我们配置吗?

  > 看情况来定, 如果公司没有工程, 你去的第一天需要创建工程, 还需要配置日志, 那么你可以把上面的日志信息拿过去进行简单的配置, 如果公司的项目已经产生. 那就不需要配置了. 肯定有人已经配置过了, 直接使用即可.

- 日志有什么用?

  > 日志可以帮助我们快速定位错误, 快速拿取想要的信息: 例如前端发送了 GET 请求, 请求的地址是 /users/info/ 如果我们配置了日志信息, 则该请求过来以后, pycharm的控制台就会把这些信息打印出来, 使我们快速看到.
  >
  > 另外也可以通过查看日志文件, 得到上述信息.

- 我们已经学过了print打印信息, 为什么还要使用日志?

  > 使用日志比 print 方便的一点在于全局控制, 什么是全局控制呢? 例如, 你的 django 项目写了100个接口, 每一个接口中都进行了 print 打印. 那么项目上线的时候, 你需要把所有的打印全部删掉才行( print打印一般都只用于开发阶段, 一旦上线, 没有人能够看到打印信息, 所以就需要删掉 ). 但是因为写在了各个接口中, 所以删除将会变得非常麻烦. 如果你配置了日志, 平常的打印使用的是日志的方式来进行的. 那么在上线阶段, 我们就可以把日志的调试模式关闭, 即可禁用日志, 一键做到关闭所有日志的功能. 非常方便.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值