本文介绍什么是调用分析,包括调用分析的概念、使用场景及注意事项、函数指标及日志查询。
什么是调用分析
概念
调用分析功能是函数请求级别的执行状态汇总。开启调用分析功能后,系统会收集函数每次执行的指标信息,包括性能指标、异常指标及追踪指标,并将这些指标信息投递到您在日志配置时选择的日志仓库中。
- 性能指标:内存使用情况、函数执行时间、初始化时间及冷启动信息等。
- 异常指标:是否执行失败、错误详情等。
- 追踪指标:链路追踪详情、是否采样等。
开启调用分析后可以洞察每一次的函数调用,帮助您掌握函数执行情况。
使用场景
- 查看函数执行详情、性能指标及错误信息等。
注意事项
函数指标
开启调用分析功能后,系统会收集函数每次执行的指标信息。同时,这些指标信息将被投递到您在配置日志时选择的日志仓库中。如果您没有配置日志,则无法开启调用分析功能。
调用分析会将指标信息记录到您的Logstore中,具体形式如下:

调用分析会采集以下指标。
指标名称 | 描述 | 示例值 | 是否每次调用都会记录 |
---|---|---|---|
serviceName | 服务名称 | my-service | 是 |
functionName | 函数名称 | my-function | 是 |
versionId | 版本名称 | 12 | 是 |
qualifier | 服务别名 | prod | 是,默认为LATEST。 |
requestId | 请求ID | db72ce53-ccbe-4216-af55-642622e01494 | 是 |
operation | 操作名称 | invocation | 是 |
memoryMB | 函数的内存限制 | 512 | 是 |
memoryUsageMB | 函数执行使用的内存 | 410 | 是 |
durationMs | 函数执行时间 | 20.20 | 是 |
isColdStart | 是否冷启动 | false | 是,默认值为false。 |
hasFunctionError | 函数执行是否出错 | false | 是,默认值为false。 |
errorType | 函数错误类型,包含以下三种:
|
FunctionUnhandledError | 否,仅在函数执行出现错误即hasFunctionError:true 时记录。
|
initializationDurationMs | 初始化函数执行时间 | 99.00 | 否,仅当发生冷启动且配置初始化函数时记录。 |
traceContext | 链路追踪上下文信息 | 371d3ff242fcee9:371d3ff242fcee9:0:1 | 否,仅当配置链路追踪时记录。 |
isSampled | 请求是否被链路追踪采样 | true | 否,仅当配置链路追踪时记录。 |
日志查询
调用分析的日志主题遵循以下格式:FCInsights:serviceName/functionName
。
您可以在日志服务中通过查询条件 __topic__: "FCInsights:test-insights/test"
筛选出所有调用分析产生的日志。更多信息,请参见查询和分析日志。