首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

“`AttributeError:模块”“logging”“在PySpark3中没有属性”“Handler”“

AttributeError: 'module' object has no attribute 'Handler'。

这个错误是由于在PySpark3中,logging模块中没有名为Handler的属性导致的。在PySpark3中,logging模块的使用方式有所变化。

在PySpark3中,可以使用以下方式来进行日志记录:

  1. 导入logging模块:
代码语言:txt
复制
import logging
  1. 创建一个Logger对象:
代码语言:txt
复制
logger = logging.getLogger(__name__)
  1. 设置日志级别:
代码语言:txt
复制
logger.setLevel(logging.INFO)
  1. 创建一个StreamHandler对象,并设置其日志级别:
代码语言:txt
复制
handler = logging.StreamHandler()
handler.setLevel(logging.INFO)
  1. 创建一个Formatter对象,并将其添加到StreamHandler对象中:
代码语言:txt
复制
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)
  1. 将StreamHandler对象添加到Logger对象中:
代码语言:txt
复制
logger.addHandler(handler)
  1. 使用Logger对象进行日志记录:
代码语言:txt
复制
logger.info("This is an info message")
logger.warning("This is a warning message")
logger.error("This is an error message")

以上代码演示了如何在PySpark3中进行日志记录。通过使用Logger对象和Handler对象,可以实现不同级别的日志记录,并将日志输出到不同的目标(如控制台、文件等)。

关于PySpark3中日志记录的更多信息,可以参考腾讯云的产品文档:PySpark3日志记录

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • python接口自动化(四十)- logger 日志 - 下(超详解)

    按照上一篇的计划,这一篇给小伙伴们讲解一下:(1)多模块使用logging,(2)通过文件配置logging模块,(3)自己封装一个日志(logging)类。可能有的小伙伴在这里会有个疑问一个logging为什么分两篇的篇幅来介绍她呢???那是因为日志是非常重要的,用于记录系统、软件操作事件的记录文件或文件集合,可分为事件日志和消息日志。具有处理历史数据、诊断问题的追踪以及理解系统、软件的活动等重要作用,在开发或者测试软系统过程中出现了问题,我们首先想到的就是她——logging。她可不像泰戈尔说的:“天空没有留下翅膀的痕迹,但我已经飞过”;这个90后的小姑娘,她可是一个爱炫耀,爱显摆的人已经达到了人过留名、雁过留声的境界。好了逗大家一乐,下面开始进入今天的正题。

    06

    Jupyter在美团民宿的应用实践

    做算法的同学对于Kaggle应该都不陌生,除了举办算法挑战赛以外,它还提供了一个学习、练习数据分析和算法开发的平台。Kaggle提供了Kaggle Kernels,方便用户进行数据分析以及经验分享。在Kaggle Kernels中,你可以Fork别人分享的结果进行复现或者进一步分析,也可以新建一个Kernel进行数据分析和算法开发。Kaggle Kernels还提供了一个配置好的环境,以及比赛的数据集,帮你从配置本地环境中解放出来。Kaggle Kernels提供给你的是一个运行在浏览器中的Jupyter,你可以在上面进行交互式的执行代码、探索数据、训练模型等等。更多关于Kaggle Kernels的使用方法可以参考 Introduction to Kaggle Kernels,这里不再多做阐述。

    02

    还在用 print?试一试 logging 的强大!

    这次呢?我给大家带来了 logging 的用法,这也是为以后我分享案例做准备,因为以后我的代码不会经常使用 print 来做命令行输出提示,那真的太 low 了,但不能否认,我用了 print 好久而且貌似还挺满足的,可是当自己的代码放在实际的工程开发之中,或者大佬面前根本不是入眼了,这还真不能怪那些大佬或者实际工作需求高,而是我们看到 “烂代码” 的时候,表示一秒我都不想在这样的代码上多浪费时间,比如该换行的不换行、变量的命名各种各样、函数名也是,或者赋值符号两边不加空格、不符合软件工程规范:高内聚低耦合啥的,这类还有很多,培训班出来的有很大一部分都这样,这么说不是没有原因的,培训班老师自己偷懒或者本身就不会,写代码的时候不注意规范,但至少提一下吧!

    03
    领券