首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何打印日志

    如何打印日志 日志打印对研发来说,是很有必要的, 如何打印日志,让日志能反映出处理流程,让日志能反映出问题所在,这个很重要,不好的日志,会加大研发排查问题的难度,过多的日志也会对研发造成干扰,如何打印日志...日志存在的问题 安全问题 将用户的敏感信息打印在了日志日志级别不合理 warning日志较为泛滥,且少有人关注 部分阻塞业务流程的错误,未正确使用error日志 错误日志重复打印 同一个错误在不同的位置重复打印...【强制】不应在for循环中打印info日志,单条正常请求的日志数量不应大于20 【强制】不应使用info日志打印中使用%v输出整个结构体(error除外) 【建议】不应使用%v输出整个结构体(error...除外) 【建议】谨慎的使用日志进行打点 合理分级 【强制】日志打印时应选择合适的级别 保证安全 【强制】原则上禁止日志汇总禁止打印用户L4级别的日志 【强制】日志打印满足飞书日志打印安全规范 【建议】使用合适的脱敏方式对敏感信息进行脱敏...MQ消息的唯一标记MsgID 案例二:日志打印时未传入ctx导致日志缺乏logID,无法通过logID检索到该日志 案例三:在程序的关键分岔点未打印日志 案例四:在特殊的条件分岔未打印日志 【强制】关键日志必须打印路径

    46820

    聊聊日志打印日志审计

    二.日志切面 ​ springboot中默认提供的日志打印功能无法打印函数的入参与出参信息。现在如果有个bug在生产环境可以复现,测试环境怎么也复现不了,本地代码又无法连接生产环境进行调试。...生产环境一般一般情况下指挥打印info级别的日志。这个时候就头疼了,无法定位解决问题。 ​ 因此线上环境能有一个功能帮我们打印函数的详细的入参或者出参这个功能是很重要的。...当然这个功能默认情况下还是不要开启,毕竟大多数线上环境的调用链封装比较深,出参与入参信息打印会比较多,对于日志的存储会是一个比较大的问题。...>[] excludeReturnClass; //不进行日志打印的类 private static final Class<?....filter(this::filterClass) .map(s -> { //此处可以自行定义不同入参类型返回的日志结果输出

    2.3K10

    Python+WebSocket+Js 实现服务监控日志实时输出

    这是无量测试之道的第227篇原创 今天来分享一个有趣的内容,通过 Python + WebSocket + Js 来实现服务监控日志的实时输出,当服务正常时,在页面上实时展示出 OK;当服务不正常时...第二部分:JS 部分的代码 这里会与后端的 WebSocket Server 建立连接,并将 env 这个变量(参数)传到后端,然后后端会根据 env 来进行服务的检测,然后返回一个响应给到 js,最后...js 拿到了响应后进行追加到我们定义的一个 div 里面,这里也体现了一个实时的服务日志监控展示。...第三部分:WebSocket Server 部分 这里拿到了前端 js 传过来的参数 env,进行环境的匹配,然后遍历每一个服务的请求,再根据请求返回的结果拼接一个 response 给到 js,如下图红框中所示...,WebSocket Server 将检测的结果实时返回给 js 处理,js 将结果实时的追加到 html 页面的一个 div 元素中,至此就全部结束了。

    2.5K20

    Python 日志输出

    打印日志是很多程序的重要需求,良好的日志输出可以帮我们更方便的检测程序运行状态。Python标准库提供了logging模块,让我们也可以方便的在Python中打印日志。...常用的Handler有以下几种: StreamHandler, 用于向标准输入输出流等输出日志。 FileHandler,用于向文件输出日志。 NullHandler,什么也不输出。...disable(lvl) 禁用某级别的日志打印 basicConfig(关键字参数) 这个函数可以快速设置日志的级别、格式、Handler、Formatter等 使用日志 前面都是纸面上的介绍,下面来真正使用日志模块来打印日志...运行代码之后,可以验证日志同时在终端输出和文件中输出。...这样就做好了日志打印的准备工作了。

    1.9K90

    Ijkplayer打印FFMpeg日志

    背景 在打印Ijkplayer播放日志的过程中,在ijkplayer中日志可以正常输出。...但是涉及到FFMpeg的日志,则无法输出 原因 由于FFMPeg中的libavutil/log.c中使用的是fprintf,所以输出到了标准输出中,而Android有自己的一套输出日志的端口。...需要使用av_log_set_callback将日志桥接到自定义的函数,然后通过该函数进行重输出。 方案 ....extra下面的ffmpeg 在ijkplayer的ff_player.c中的ffp_global_init通过av_log_set_callback注册好回调函数,然后即可通过该函数将ffmpeg库中的输出重定向到...ijkplayer中 这步完成后,发现还是打印不出来日志 最后,一怒之下,把ijksdl_log.h中的日志打印都换成了android jni的日志打印,就打印出来了 #ifdef EXTRA_LOG_PRINT

    2.4K30

    如何打印日志

    1.选择恰当的日志级别 error warn info debug 2.日志打印出参入参数 方便甩锅 3.选择合适的日志格式 时间戳 线程名字 日志级别等 4.if-else ,switch 等分支语句都建议打印日志...,方便排查 5.对一些比较低的日志级别进行判断,使用log.isXXXX()方法判断 如果日志不被记录,但是日志内的字符拼接,对象的toString方法也会执行,浪费性能 6.不建议直接使用log4j...,logback等日志系统,建议使用slf4j框架,方便统一处理 7.建议使用参数占位符{},而不是+拼接,简洁且提升性能 8.建议使用异步日志,能有效提升IO性能 9.不要使用e.printStackTrace...()打印错误信息,因为太多信息,且是堆栈信息,会使得内存溢出 10.异常不要只打一半,要完成输出 11.禁止在线上开启debug 会把磁盘打满 12.不要记录了异常,又抛出异常 13.避免重复打印日志...,浪费磁盘空间 14.日志文件分离,不同级别日志存放在不同文件中 15.核心功能模块,建议打印详细的日志

    10410

    采购订单Message输出打印

    Title 采购订单Message输出打印 很多业务中需要在完成订单的时候来进行单据打印输出操作,比如新建采购订单的时候,需要输出采购订单的PDF或者使用邮件功能来将采购订单发送给指定人员 SAP...目前我们是对于功能1打印输出来做定制化,所以需要选中ZNEU,双击处理程序(保存采购订单后调用的程序FORM) ⽬前我们是对于功能1打印输出来做定制化,所以需要选中ZNEU,双击处理程序(保存 采购订单后调...程序 来调⽤我⾃⼰定义的smartforms来输出打印 设置如下图 设置条件记录 选择我们创建的ZNEU输出类型 选择根据采购组织和供应商来确定Message 的输出 当我们第一进入时,可以选择左上角输出定价菜单...→创建 添加一条条件记录如下图所示:其中VN是供应商功能类型,媒介1表示打印输出,调度时间4表示需要立即输出 同时我们可以点击通讯来对某个供应商设置打印属性设置: 如下图可以对采购组织1310 和供应商...133000273的订单输出设置打印设备为LP01,且立即打印 设置过程 设置完毕后退出,点击过程来添加设置好的输出类型 可以选择原来的过程进行添加,也可以单独创建一个过程 在新添加的过程ZRMBEF

    1.3K20

    Python 打印彩色日志

    我相信每一个开发者都有打印日志的习惯,好看的日志可以加快调试的速度,可以更好的了解程序中发生的事情。本文分享一个技巧,可以让 Python 在控制台输出彩色的日志。...安装 coloredlogs pip install coloredlogs 使用 首先,和正常打印日志一样,我们创建一个 logger logging.basicConfig() logger =...我们想为我们的控制台输出添加一些样式,可以在这里定义: coloredFormatter = coloredlogs.ColoredFormatter( fmt='[%(name)s] %(asctime...,配置一个流处理器,让日志显示在控制台: ch = logging.StreamHandler(stream=sys.stdout) ch.setFormatter(fmt=coloredFormatter...logger.error(msg="this is an error message") logger.critical(msg="this is a critical message") 最后的话 本文分享了一种输出彩色日志的方法

    1.6K30
    领券