跳到主要内容

日志管理

Lovrabet CLI 会自动记录你执行的每个命令,就像一个“操作历史”一样。这些日志在遇到问题时非常有用。

为什么需要日志?

想象一下这些场景:

  • 明明昨天 API 还能正常拉取,今天就失败了
  • 构建时间越来越长,但不知道具体慢在哪
  • 需要跟同事分享遇到的错误信息

日志能帮你解决这些问题!

如何使用

查看日志

lovrabet logs

这会显示最近的操作记录,包括:

  • 你执行了什么命令
  • 什么时候执行的
  • 执行结果如何
  • 耗时多久

清空日志

lovrabet logs --clear

当日志文件太大或想重新开始记录时,可以清空所有日志。

日志包含什么信息?

每条日志记录都包含以下信息:

字段说明示例
timestamp执行时间2024-09-18 14:30:25
level日志级别infosuccesserrorwarn
command执行的命令startbuildapi-pull
message操作描述开发服务器启动成功
duration耗时(毫秒)1500
details详细信息错误堆栈、配置信息等

日志级别说明

  • 🟢 info: 一般信息,比如“正在拉取 API”
  • success: 成功操作,比如“页面创建成功”
  • ⚠️ warn: 警告信息,比如“配置缺失,使用默认值”
  • error: 错误信息,比如“登录失败”

实用场景

1️⃣ 排查错误

当某个命令失败时,日志能帮你快速定位问题:

# 构建失败后查看日志
lovrabet logs

# 你会看到类似这样的信息:
# [ERROR] build failed: Module not found: 'missing-package'
# [INFO] Build duration: 3500ms

2️⃣ 性能分析

通过对比不同时期的耗时,可以发现性能问题:

# 查看最近的构建时间
lovrabet logs | grep "build"

# 例子输出:
# 2024-09-15: build success (2500ms)
# 2024-09-16: build success (3200ms)
# 2024-09-17: build success (4800ms) # 明显变慢!

3️⃣ 团队协作

遇到问题时,可以将相关日志信息分享给同事:

# 导出最近 10 条日志
lovrabet logs | tail -10

# 或者直接分享 .lovrabet.log 文件

日志文件位置

日志文件保存在项目根目录的 .lovrabet.log 中。

# 查看日志文件位置
ls -la .lovrabet.log

# 直接查看文件内容(不推荐,格式不好读)
cat .lovrabet.log

注意: 日志文件是 JSON Lines 格式,直接查看可能不太好读。建议使用 lovrabet logs 命令查看。

最佳实践

1. 定期清理

日志文件会随时间增大,建议定期清理:

# 每周清理一次旧日志
lovrabet logs --clear

2. 遇错先查日志

任何命令失败时,都先看日志:

# 命令失败后立即查看
lovrabet logs

3. 保留关键信息

遇到难以复现的问题时,可以备份日志:

# 备份当前日志
cp .lovrabet.log .lovrabet.log.backup

常见问题

日志文件太大怎么办?

直接清空即可:

lovrabet logs --clear

日志不显示怎么办?

检查是否在项目根目录下:

# 确认在项目根目录
ls .lovrabetrc

# 如果没有这个文件,说明你不在 Lovrabet 项目中
cd /path/to/your/project

想查看其他项目的日志怎么办?

需要切换到对应的项目目录:

cd /path/to/other/project
lovrabet logs