|████████████████████████████████| 1.3 MB 53 kB/s
Collecting tomorrow3==1.1.0
Downloading tomorrow3-1.1.0.tar.gz (1.2 kB)
Collecting concurrent-log-handler==0.9.19
Downloading concurrent_log_handler-0.9.19-py2.py3-none-any.whl (18 kB)
Collecting elasticsearch
Downloading elasticsearch-7.17.0-py2.py3-none-any.whl (385 kB)
|████████████████████████████████| 385 kB 21 kB/s
Collecting kafka-python==1.4.6
Downloading kafka_python-1.4.6-py2.py3-none-any.whl (259 kB)
|████████████████████████████████| 259 kB 36 kB/s
Requirement already satisfied: requests in c:\python38\lib\site-packages (from nb_log) (2.25.1)
Collecting pika
Downloading pika-1.2.0-py2.py3-none-any.whl (154 kB)
|████████████████████████████████| 154 kB 58 kB/s
Requirement already satisfied: flask in c:\python38\lib\site-packages (from nb_log) (1.1.2)
Collecting python-json-logger==0.1.10
Downloading python_json_logger-0.1.10-py2.py3-none-any.whl (5.0 kB)
Collecting nb_filelock
Downloading nb_filelock-0.7.tar.gz (4.8 kB)
使用比较简单的,设置完直接调用就行了。
from nb_log import LogManager # 导入nb_log的模块LogManager
设置控制台打印,这里的日志名称填写的是:日志模块测试项目。
logger = LogManager(‘日志模块测试项目’).get_logger_and_add_handlers()
各种模式情况下的打印效果。
logger.debug(‘debug日志打印模式…’)
logger.info(‘info日志打印模式…’)
logger.warn(‘warn日志打印模式…’)
logger.error(‘error日志打印模式…’)
logger.critical(‘critical日志打印模式…’)
使用默认配置下日志打印时直接使用就好了,为了方便调成自己喜欢的样子,可以在配置文件中修改一下状态就可以了。
启动程序以后会自动在根目录下面生成py和nb_log_config.py文件,这里的根目录指的是项目的根目录并不是当前程序文件的目录下。
修改nb_log_config.py中的几个变量状态是否开启就可以了。
DEFAULUT_USE_COLOR_HANDLER = True # 是否默认使用有彩的日志。
DISPLAY_BACKGROUD_COLOR_IN_CONSOLE = False # 在控制台是否显示彩色块状的日志。为False则不使用大块的背景颜色。
AUTO_PATCH_PRINT = True # 是否自动打print的猴子补丁,如果打了猴子补丁,print自动变色和可点击跳转。
SHOW_PYCHARM_COLOR_SETINGS = True # 有的人很反感启动代码时候提示教你怎么优化pycahrm控制台颜色,可以把这里设置为False
每个状态都有详细的中文注释,根据自己的喜好修改就可以了。我这里只修改了将背景颜色的启用变为False。
除此之外,还可以修改打印的模板,就是要打印哪些信息,比如时间等等。同样是修改nb_log_config.py文件。
FORMATTER_KIND = 5 # 如果get_logger不指定日志模板,则默认选择第几个模板。模板样式总共有11种可以选择的,在nb_log_config.py文件中可以看到。需要哪种将FORMATTER_KIND的值改成几就OK了。
FORMATTER_DICT = {
1: logging.Formatter(
‘日志时间【%(asctime)s】 - 日志名称【%(name)s】 - 文件【%(filename)s】 - 第【%(lineno)d】行 - 日志等级【%(levelname)s】 - 日志信息【%(message)s】’,
“%Y-%m-%d %H:%M:%S”),
2: logging.Formatter(
‘%(asctime)s - %(name)s - %(filename)s - %(funcName)s - %(lineno)d - %(levelname)s - %(message)s’,
“%Y-%m-%d %H:%M:%S”),
3: logging.Formatter(
‘%(asctime)s - %(name)s - 【 File “%(pathname)s”, line %(lineno)d, in %(funcName)s 】 - %(levelname)s - %(message)s’,
“%Y-%m-%d %H:%M:%S”), # 一个模仿traceback异常的可跳转到打印日志地方的模板
4: logging.Formatter(
'%(asctime)s - %(name)s - “%(filename)s” - %(funcName)s - %(lineno)d - %(levelname)s - %(message)s - File “%(pathname)s”, line %(lineno)d ',
“%Y-%m-%d %H:%M:%S”), # 这个也支持日志跳转
5: logging.Formatter(
‘%(asctime)s - %(name)s - “%(pathname)s:%(lineno)d” - %(funcName)s - %(levelname)s - %(message)s’,
“%Y-%m-%d %H:%M:%S”), # 我认为的最好的模板,推荐
6: logging.Formatter(‘%(name)s - %(asctime)-15s - %(filename)s - %(lineno)d - %(levelname)s: %(message)s’,
“%Y-%m-%d %H:%M:%S”),
7: logging.Formatter(‘%(asctime)s - %(name)s - “%(filename)s:%(lineno)d” - %(levelname)s - %(message)s’, “%Y-%m-%d %H:%M:%S”), # 一个只显示简短文件名和所处行数的日志模板
8: JsonFormatterJumpAble('%(asctime)s - %(name)s - %(levelname)s - %(message)s - “%(filename)s %(lineno)d -” ', “%Y-%m-%d %H:%M:%S”, json_ensure_ascii=False), # 这个是json日志,方便分析.
9: logging.Formatter(
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)
f79.png)
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)