更新时间:2025-08-04 GMT+08:00
分享

配置和查看函数的调用日志

FunctionGraph函数实现了与云日志服务的对接,用户无需任何配置,即可查询函数日志信息。

在FunctionGraph函数控制台,可以通过以下两种方式查看函数日志。

  • 在测试页签查看日志

    函数创建完成后,可以测试函数,在执行结果页,可以查看函数测试日志。操作步骤请参见在线调试函数

    此处最多显示2KB字节日志,如果日志太多,可以去函数详情页日志页签查询日志。

  • 在日志页签查看日志

    在函数详情页“监控 > 日志”页签,查询日志信息,操作步骤请参见云日志服务(LTS)管理函数日志

配置日志组、日志流和查看函数日志

用户可以针对某个函数自行关联日志组和日志流,管理函数日志,即进行函数调用后,调用日志会保存到指定的日志组和日志流下。若未指定,函数调用日志会保持原逻辑自动生成在系统默认创建的日志流下(即创建一个函数默认创建一个对应的日志流),具体请参见云日志服务(LTS)管理函数日志

操作步骤

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击函数名称进入函数详情页。
  3. 选择“设置 > 日志配置”,参见表1进行配置。

    表1 日志配置参数说明

    参数

    说明

    启动日志记录

    V2版本默认为开启状态,V1版本当前不支持此特性。

    日志组

    为当前函数指定日志组。禁选functiongraph默认创建的日志组functiongraph.log.group.xxx。如何创建日志组详情请参见管理日志组

    默认展示系统自动生成的日志组(以functiongraph开头)。

    日志流

    指定日志组下的日志流。如何创建日志流详情请参见管理日志流

    默认展示为创建函数时自动生成的日志流(以函数名称开头)。

  4. 配置完成后单击“保存”。

    函数的日志流可以在更新时随时修改。

  5. 选择“代码”页签,单击“测试”执行函数。
  6. 函数执行完成后,选择“监控 > 日志”,查看函数日志。

    • 图1,表示当前函数日志指定生成在该日志组及日志流下。
    • 若未指定,此处的日志组显示为系统默认创建的日志组及日志流,日志组名称以“functiongraph”开头。
      图1 查看函数日志
    • 图中日志列表中可以区分是否请求经过冷启动,下边一条请求显示的冷启动成功,其中耗时13.100ms,表示当前请求是经过冷启动的调用总耗时,日志中上边一条日志显示调用成功,其中耗时1.671ms,表示当前请求不经过冷启,调用耗时。
      图2 日志

日志标签

函数执行时,可以按照自定义标签配置上报标签到云日志服务(LTS),用户可以通过标签对日志进行过滤筛选。

  1. 新创建函数时,可在“高级设置”中开启“日志记录”,并单击“添加标签”增加日志标签;如已创建函数,请从步骤2开始配置。
  2. 在函数详情页中,选择“设置 > 日志配置”,开启“日志记录”,选择日志组和日志流。
  3. 单击“添加新标签”,输入标签键和标签值,最多支持添加10个标签,配置完成后单击“保存”。

    表2 日志标签介绍

    参数名称

    说明

    标签键

    不能为空,只能包含数字、字母、下划线和中划线,最大长度64。

    标签值

    图3 添加日志标签

  4. 选择“代码”页签,配置测试事件后,单击“测试”,等待函数执行完成。
  5. 选择“监控 > 日志”,在“请求列表”中查看函数请求记录(日志上报会有延迟,请稍等几分钟)。
  6. 登录云日志服务控制台,左侧选择“日志管理”,在日志组列表中选择筛选条件后,搜索函数配置的日志组名称,在搜索结果中再选择日志流的筛选条件,并搜索函数配置的日志流名称,单击日志流名称进入详情页面。

    图4 搜索日志流

  7. 在日志流详情页面,右侧单击“日志设置”,进入“索引配置”面板,单击“添加字段”,新增在函数中新添加的日志标签键,如何设置索引请参见设置LTS日志索引配置。配置完成后,单击“确定”。
  8. 返回日志流详情页面,在搜索框中输入函数配置的日志标签键和值,即可查看匹配的日志内容。

云日志服务(LTS)管理函数日志

FunctionGraph支持开通云日志服务(LTS),使用更丰富的函数日志管理功能。开通云日志服务后,FunctionGraph会自动创建1个日志组(functiongraph开头),创建函数后,会默认生成一个日志流(函数名称开头)。

您也可以针对某个函数自行关联日志组和日志流,管理函数日志,即进行函数调用后,调用日志会保存到指定的日志组和日志流下。具体操作请参见配置日志组、日志流和查看函数日志

约束与限制:

  • 默认创建的20个日志流,您无法自定义。您可以在函数的“日志”页签下,按“F12”,找到query接口里的日志流ID,再到lts里找到对应的日志流ID。

  • 若在LTS控制台误删函数日志组,之前的日志数据不可找回,FunctionGraph服务不感知该操作。此时您可以通过修改函数常规设置中的描述信息,保存后触发重建函数日志组。
  • 用户普通实例的初始化阶段的日志大小限制为(10MB),超过大小限制的日志进行滚动更新,为您保留最新的日志。
  1. 开通云日志服务(LTS)管理函数日志。

    在“日志”页签,单击“去开启”跳转至设置中的“日志配置”界面,单击开启“日志记录”

    图5 开启日志功能

  2. 设置查询条件。

    • 请求列表:支持设置请求ID、调用结果(执行成功、执行失败)、原因分析(初始化失败、加载失败、系统错误、调用超时、内存超限、磁盘超限、代码异常)、耗时、实际使用内存。

      在使用查询字段前,需先在云日志服务LTS中配置相关字段信息,具体配置详情请参见配置函数的日志过滤字段

    • 请求日志:支持关键字、请求ID、实例ID。
    表3 调用结果

    调用结果

    说明

    执行成功

    函数执行成功打印的日志。

    执行失败

    函数执行失败打印的日志,包含调用超时、内存超限、磁盘超限、代码异常四种情况。

    若想查看调用超时的日志信息,请将“日志类型”切换为调用超时,另外3种执行失败下的日志类型查看方法相同。

    表4 原因分析

    原因分析

    说明

    初始化失败

    函数初始化失败打印的日志。

    加载失败

    runtime加载用户函数文件失败打印的日志

    系统错误

    内部错误。

    调用超时

    函数调用时间超过配置的“执行超时时间”打印的日志。

    内存超限

    函数内存大小超过配置的“内存”大小打印的日志。

    磁盘超限

    磁盘超出限制大小打印的日志。

    代码异常

    代码出现异常情况打印的日志。

    • 支持的时间条件:最近1小时、最近1天、最近3天及自定义。
    • 您可以单击“到LTS进行日志分析等更多操作”,前往LTS控制台管理函数日志。

  3. 开始日志分析。

    “日志分析”页签下内置了LTS的日志分析功能模块,可参考配置函数的日志过滤字段为函数配置日志过滤字段,关于在LTS上分析日志的具体使用方法请参考搜索与分析日志

配置函数的日志过滤字段

函数工作流的日志查询功能支持多种过滤字段。您在使用前,需按照如下步骤完成配置后方可使用:

  1. 返回函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,进入函数列表页面。
  2. 单击函数名称,进入函数详情界面。
  3. 单击“监控”,进入“日志”页签,单击“日志分析”页签,可在函数工作流控制台使用LTS功能进行日志分析。
  4. 单击右侧“日志设置”,进入“索引配置”页,单击“自动配置”后,等待后台自动配置全量字段信息。

    图6 日志设置

  5. 自动配置完成后,将“memory”和“duration”两个字段的类型修改为“float”。同时,排查是否存在“errorType”字段,如没有请手动添加,完成后如图7所示。

    图7 配置字段信息

  6. 配置完成后,单击“确定”。返回函数的“监控 > 日志 > 请求列表”页签下,即可使用相关字段过滤信息。

日志下载

约束与限制:

  • 一次最多只能下载5000条日志,请合理选择时间范围,避免下载的日志缺失。
  • 当前日志时间戳打印的时间为 UTC 时间。
  1. 选择“监控 > 日志”,单击“请求日志”页签。
  2. 在“请求日志”页签下,选择时间范围,单击“下载日志”。

相关文档