跳到主要内容

概述

云开发为开发者提供了功能强大的日志检索及管理能力,帮助开发者更高效地进行应用调试、问题排查和性能监控。

核心优势

功能特性

🖨️ 自定义日志打印

相比传统的 console 对象,云开发提供了更强大的自定义日志功能:

  • 多级别日志:支持 loginfowarnerror 四个日志等级
  • 结构化输出:自动为日志内容添加字段并建立键值索引
  • 增强信息:自动添加时间戳、请求ID等关键信息
  • 性能优化:相比原生 console,提供更好的性能和可控性

详细使用方法请参见 打印日志

🔍 智能日志检索

提供多种灵活的日志检索方式,满足不同场景需求:

检索方式适用场景特点
全文检索快速定位关键信息支持关键词全文搜索
键值检索精确查找结构化数据支持 key:value 格式查询
模糊匹配不确定关键词时使用智能模糊匹配算法
高级语法复杂查询需求支持多种查询语法组合

详细检索方法请参见 检索日志

📊 服务调用日志

除了传统的云函数和云托管日志,新增服务调用日志类型:

  • 全链路追踪:记录通过 SDK 或 HTTP 访问云开发服务的完整调用链路
  • 性能监控:监控服务调用的响应时间和成功率
  • 问题定位:快速定位服务调用中的异常和错误
  • 统计分析:提供服务使用情况的统计数据

详细信息请参见 服务调用日志

技术原理

为了提高检索效率和准确性,云开发日志服务采用智能分词机制和大小写敏感匹配来精确定位用户输入的日志信息。

分词符

原始日志文本将根据分词符切分成多个关键词,云开发默认分词符为!@#%^&*()_="', <>/?|\;:\n\t\r[]{},以下面某条日志内容为例:

10002345987;write;ERROR;code=400;topic does not exist;

上述日志内容中 ;= 两个默认分词符会将日志内容切分成 6 个单词10002345987writeERRORcode400topic does not exist。在精准搜索中,用户只需输入任意一个单词,即可搜索到此条日志内容。

注意
  • 日志默认系统字段 中 requestId 包含 - ,故 - 不作为默认分词符。
  • 用户日志根据分词符进行分词之后的日志内容,单个分词后的内容不能超过 32KB。

大小写敏感

云开发日志检索默认大小写敏感,例如在上述日志内容例子中,日志内容已被切分成 6 个单词10002345987writeERRORcode400topic does not exist。若需要精确搜索到 ERROR 关键词的相关日志,需在控制台输入ERROR

注意

若在控制台输入errorError,则无法检索到 ERROR 的相关日志。