前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >云函数场景下异常的日志重复问题

云函数场景下异常的日志重复问题

原创
作者头像
keke.wang
发布2022-10-11 11:22:18
4680
发布2022-10-11 11:22:18
举报

异常的日志重复问题

在代码中声明了一行日志打印,云函数的某一次运行,却连续打印出多条重复日志

问题现象

以语言环境 Python 3.6logging 日志模块为例说明下,具体代码样例如下:

logger 实例创建放到函数 main_handler() 内,则会发生日志重复现象

dup-log
dup-log

问题说明

1、云函数默认支持实例复用

云函数部署好之后,第一次运行会有冷启动,接下来再继续运行,为了避免冷启动现象,会直接复用实例。

云函数可以类比成一个 http server 常驻进程(当发生实例复用时,http server 就一直都在)

云函数的一次触发执行,就好比一次http请求,请求入口就是 main_handler();当函数实例不再复用时,

常驻进程才会真正销毁。

2、日志实例的初始化位置

在实例复用场景下,将 logger 实例创建放到函数 main_handler() 内,N 次函数触发,就会多创建 N 个 stream

导致出现了日志重复现象。

问题解决

将日志实例 logger 的创建放到函数 main_handler() 外。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 异常的日志重复问题
    • 问题现象
      • 问题说明
        • 问题解决
        相关产品与服务
        云函数
        云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。云函数是实时文件处理和数据处理等场景下理想的计算平台。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档