本文介绍在函数计算控制台配置链路追踪功能、使用自定义链路追踪接入点及查看函数调用链信息的操作步骤。

背景信息

链路追踪简介

创建服务时配置链路追踪

  1. 登录函数计算控制台
  2. 在左侧导航栏,单击服务及函数
  3. 在顶部菜单栏,选择地域。
  4. 服务列表页面,单击创建服务
    create_service_new
  5. 创建服务面板,设置服务名称,在链路追踪功能后选中启用,然后单击确定
    说明 选中开启链路追踪后,该服务下的所有函数均会开启链路追踪。
    lianluzhuizongpeizhichuangjianfuwu

服务创建完成后配置链路追踪

  1. 登录函数计算控制台
  2. 在左侧导航栏,单击服务及函数
  3. 在顶部菜单栏,选择地域。
  4. 服务列表页面,找到目标服务。在其操作列,单击配置
  5. 在编辑服务页面的链路追踪配置区域,选中启用,然后单击保存
    lianzluzhuizongpeizhiqiyong

查看函数调用链信息

当您的服务开启链路追踪功能后,函数计算会自动记录该服务下所有函数的调用链信息。

  1. 登录函数计算控制台
  2. 在左侧导航栏,单击服务及函数
  3. 在顶部菜单栏,选择地域。
  4. 服务列表页面,单击目标服务名称。
  5. 在目标服务页面,单击目标函数名称。
  6. 在函数详情页面,单击链路追踪,查看函数调用链信息。更多信息,请参见调用链分析
    调用链信息
  7. 链路追踪页签的调用链页签单击具体调用链,可查看详细信息。
    cold-start

    参数说明如下:

    说明 当请求没有遇到冷启动时,链路中没有冷启动时间和Initializer的时间。
    • TracingService/TracingFunction:当前请求在函数计算的总停留时间,默认命名方式为serviceName/functionName
    • ColdStart:函数系统层冷启动的时间,冷启动不是每次调用都出现,只在重新申请执行环境时出现。
      • PrepareCode:函数下载代码或下载自定义镜像的时间,如果PrepareCode时间过长,您可以适当精简代码包来缩短准备代码的时间。
      • RuntimeInitialization:执行环境启动的时间,包含启动实例的时间、实例健康检查时间。在自定义运行时和自定义镜像中,如果RuntimeInitialization执行时间过长,需要检查一下对应的HTTP Server和镜像的启动行为。
    • Initializer:初始化函数的执行时间,初始化函数当且仅当容器冷启动的时候才会被执行。
    • Invocation:函数的执行时间,您可以在函数中获取到Invocation的上下文,详细记录Invocation中的耗时。