• 产品简介
  • 快速开始
    • 导入 Git 仓库
    • 从模板开始
    • 直接上传
  • 框架指南
    • 前端
    • 后端
    • 全栈
      • Next.js
  • 项目指南
    • 项目管理
    • edgeone.json
    • 缓存配置
    • 错误码
  • 构建指南
  • 部署指南
    • 概览
    • 触发部署
    • 管理部署
    • 部署按钮
    • 使用 Github Action
    • 使用 CNB 插件
    • 使用 IDE 插件
    • 使用 CodeBuddy IDE
  • 域名管理
    • 概览
    • 自定义域名
    • 配置 HTTPS 证书
    • 如何配置 DNS 的 CNAME 记录
  • Pages Functions
    • 概览
    • Edge Functions
    • Node Functions
  • 日志分析
  • KV 存储
  • 边缘 AI
  • API Token
  • EdgeOne CLI
  • Pages MCP
  • 集成指南
    • AI
      • 对话型大模型集成
      • 图片大模型集成
    • 数据库
      • Supabase 集成
      • Pages KV 集成
    • 电商
      • Shopify 集成
      • WooCommerce 集成
    • 支付
      • Stripe 集成
      • Paddle 集成
    • CMS
      • WordPress 集成
      • Contentful 集成
      • Sanity 集成
    • 身份验证
      • Supabase 集成
      • Clerk 集成
  • 最佳实践
    • 使用通用大模型快速搭建AI应用
    • 使用 Deepseek-R1 模型快速搭建对话型AI站点
    • 使用 WordPress + WooCommerce 和 GatsbyJS 搭建电商平台
    • 使用 Supabase 和 Stripe 搭建 SaaS 站点
    • 如何快速搭建公司品牌站点
    • 如何快速搭建博客站点
  • 迁移指南
    • 从 Vercel 迁移至 EdgeOne Pages
    • 从 Cloudflare Pages 迁移至 EdgeOne Pages
    • 从 Netlify 迁移至 EdgeOne Pages
  • 排障指南
  • 常见问题
  • 联系我们
  • 产品动态

日志分析

前置说明

说明:
EdgeOne Pages 目前支持查看 Node Functions 的日志详情,后续将逐步支持如 Edge Functions 等其他服务的日志。


Node Functions 日志

Pages 日志分析为您自动收集、存储、过滤和分析 Node Functions 发出的日志数据。您可以在控制台中查询每个函数请求的数据,自定义查找日志的时间范围,目前支持查看全部日志、调用成功、调用失败、调用超时的日志。


控制台检索日志

1. 登入到 Pages 控制台
2. 选择包含 Node Functions 的项目
3. 切换至“日志分析”
4. 通过状态,时间段,关键字来检索目标日志




查找函数日志

您可以查看函数调用的基本日志信息,通过日志快速发现并解决 API 调用中的异常或错误。


时间过滤

默认情况下,日志列表会显示最近 15 分钟相关请求的信息。您还可以筛选查看特定时间段的数据,包括过去 15 分钟、过去 1 小时、过去 6 小时、 过去 12 小时、过去 24 小时,或者选择自定义以输入 24 小时内特定的时间范围。


文本过滤

您可以使用简单的文本匹配来过滤日志内容,例如请求 ID、日志关键字。或者通过日志状态来筛选,目前可筛选的状态为:调用成功、调用失败、调用超时。


自定义日志

默认情况下,Node Functions 将发送包含有关请求、响应和相关元数据的详细信息的调用日志。您还可以在整个代码中添加自定义日志。console.log 中的所有内容都将显示在 Node Functions 日志中。

以下示例演示了 console.log 在请求处理程序中的自定义日志。
export const onRequestGet = async ({ request }) => {
const info = {
nodeVersion: process.version,
pid: process.pid,
platform: os.platform(),
arch: os.arch(),
cpus: os.cpus()?.length ?? 0,
totalMem: os.totalmem(),
freeMem: os.freemem(),
uptimeSec: process.uptime(),
randomUUID: randomUUID(),
now: new Date().toISOString(),
url: request.url,
}

console.log('=====info=====', info); // 自定义日志

return new Response(JSON.stringify(info), {
status: 200,
headers: { 'Content-Type': 'application/json; charset=UTF-8' },
})
}



日志结构说明

每一个函数请求的日志记录以平台日志标记请求开始、请求结束、请求错误信息、函数返回信息以及请求执行情况,用户日志封装在请求开始至请求结束之间。日志结构如下:
日志详情
日志类型
内容含义
START RequestId:09c346d3-8417-49c5-8569-xxxxxxxxxxxx
平台日志
标记请求开始。
init log
用户日志
用户在函数初始化阶段打印的日志内容,容器仅在冷启动场景下会执行初始化逻辑,非冷启动场景下无初始化日志输出。
Init Report RequestId: 09c346d3-8417-49c5-8569-xxxxxxxxxxxx Coldstart: 236ms (PullCode: 70ms InitRuntime: 8ms InitFunction: 158ms) Memory: 640MB MemUsage: 57.86MB
平台日志
初始化执行情况日志,Coldstart 为初始化阶段总耗时,其中 PullCode 为初始化阶段拉取用户函数和层代码耗时或拉取镜像耗时,InitRuntime 为初始化阶段平台耗时,InitFunction 为初始化阶段用户代码执行耗时,Memory 为函数配置内存,MemUsage 为初始化阶段运行内存。容器仅在冷启动场景下会执行初始化逻辑,非冷启动场景下无初始化日志输出。
invoke log
用户日志
用户在函数调用阶段打印的日志内容。
ERROR RequestId:09c346d3-8417-49c5-8569-xxxxxxxxxxxx Result:xxx
平台日志
函数错误原因,函数执行正常时无 ERROR 日志。
Response RequestId:09c346d3-8417-49c5-8569-xxxxxxxxxxxx RetMsg:"Hello World"
平台日志
函数返回信息记录在 RetMsg 中。
END RequestId:09c346d3-8417-49c5-8569-xxxxxxxxxxxx
平台日志
标记请求结束。
Report RequestId:09c346d3-8417-49c5-8569-c55033b17f51 Duration:1ms Memory:128MB MemUsage:29.734375MB
平台日志
函数调用执行情况日志,Duration 为函数执行耗时,Memory 为函数配置内存,MemUsage 为函数执行阶段运行内存。


日志保留与限制

平台默认仅保留 24 小时内的日志。
单个日志的最大限制为 5MB。超过该大小的日志将被截断,一般情况下为 message 字段被截断。