跳到主要内容

打印日志

云开发提供了灵活的日志打印功能,帮助开发者进行调试和监控。

SDK 导入和初始化

安装 SDK

npm install @cloudbase/node-sdk

初始化 SDK

const cloudbase = require("@cloudbase/node-sdk");

const app = cloudbase.init({
env: 'your-env-id'
});
环境说明
  • 本文档示例基于 Node.js 环境
  • 在云函数中,SDK 会自动获取环境配置
  • 在本地开发时,可能需要手动初始化环境 ID

日志方法详解

log - 普通日志

用于记录一般性的调试信息和程序执行状态。

SDK 方式

// 基础用法
app.logger().log({
name: "this is a log"
});

// 结构化日志
app.logger().log({
action: "user_login",
userId: "12345",
timestamp: Date.now(),
success: true
});

Console 方式

// 简单文本
console.log("this is a log");

// 对象输出
console.log("用户登录", {
userId: "12345",
success: true
});

info - 信息日志

用于记录重要的业务信息和系统状态。

SDK 方式

// 业务信息记录
app.logger().info({
event: "order_created",
orderId: "ORD123456",
userId: "USER789",
amount: 99.99
});

Console 方式

console.info("订单创建成功", {
orderId: "ORD123456"
});

warn - 警告日志

用于记录潜在问题和需要关注的异常情况。

SDK 方式

// 性能警告
app.logger().warn({
type: "performance_warning",
executionTime: 5000,
threshold: 3000,
message: "函数执行时间超过阈值"
});

Console 方式

console.warn("API 调用频率过高", {
userId: "USER123",
callCount: 100
});

error - 错误日志

用于记录系统错误和异常情况,便于问题排查。

SDK 方式

// 错误信息记录
app.logger().error({
errorType: "database_connection_failed",
errorMessage: "连接数据库超时",
errorCode: "DB_TIMEOUT",
userId: "USER123",
retryCount: 3
});

Console 方式

// 简单错误记录
console.error("数据库连接失败");

// 错误对象记录
try {
// 业务逻辑
} catch (error) {
console.error("处理失败:", error.message);
}