更好的记录仪
具有AI集成和基于车道组织的现代iOS日志查看器
Better Logger is a powerful macOS application for viewing, organizing, and analyzing iOS device logs. With unique lane-based categorization, MCP (Model Context Protocol) integration for AI assistants, and a beautiful grid view, it transforms how developers debug iOS applications.
✨ 特性
🎯 核心功能
- 实时日志流 -来自iOS模拟器的实时更新流日志
- 基于车道的组织 -自动将日志分类为颜色编码的车道,以便于导航
- 车道网格视图 -按通道和可调整大小的列组织的日志的可视化并排比较
- 自定义格式解析 -配置正则表达式模式以解析具有内置预设的任何日志格式
- MCP集成 -为Cursor等AI助手提供完整的模型上下文协议支持
- 会话管理 -保存、加载和导出日志会话以供以后分析
- 高级搜索和筛选 -按文本搜索,按级别、通道、流程或子系统过滤
- 源位置提取 -从日志中自动解析文件、行号和方法
- 设备管理 -支持iOS模拟器
🚀 独特卖点
- 首款支持MCP的iOS记录器 -与人工智能助手集成,进行智能日志分析
- 可视化网格视图 -以美丽的网格布局并排查看所有原木车道
- 一次性购买 -9.99美元终身许可证,无订阅
- 内存优化 -用于处理大型日志流的智能内存管理
- 原生macOS应用程序 -使用SwiftUI构建,提供原生、响应式体验
📸 截图
_截图即将发布_
🚀 安装
需求
- macOS 13.0(文图拉)或更高版本
- Xcode(用于iOS模拟器支持)
下载
- 从下载最新版本 发布
- 打开
.dmg文件 - 将更好的记录器拖动到应用程序中
- 启动更好的记录器
📖 用法
入门指南
- 选择设备
- 从侧栏中选择iOS模拟器或物理设备 - 引导模拟器出现在顶部
- 选择应用程序
- 单击应用程序选择器按钮或手动输入捆绑包ID - 选择“所有应用程序”以流式传输所有日志
- 开始流媒体播放
- 单击“开始”按钮开始流式传输日志 - 日志将实时显示,并自动发现车道
- 用车道组织
- 从格式化的日志中自动发现车道 - 打开/关闭车道以专注于特定类别 - 使用车道网格视图(⌘G)进行并排比较
车道格式
Better Logger会自动从以下格式的日志中发现通道:
[CATEGORY](level) [File.swift:42 method()] Your log message例子:
[NETWORK](info) [APIService.swift:150 fetchUsers()] GET /api/users - 200 OK
[UI](debug) [LoginView.swift:25 viewDidLoad()] Login screen appeared
[AUTH](warning) [AuthManager.swift:80 validateToken()] Token expiring soon键盘快捷键
⌘S-保存当前会话⌘G-开放车道网格视图⇧⌘H-打开已保存的会话⇧⌘M-切换MCP服务器⌘,-打开设置
自定义日志格式
- 打开格式设置(齿轮图标)
- 选择预设或创建自定义图案
- 配置车道模式(正则表达式)以提取类别和级别
- 配置源模式(正则表达式)以提取文件、行和方法
- 使用示例日志消息测试您的模式
🤖 MCP集成
Better Logger包括一个完整的MCP(模型上下文协议)服务器,可以与Cursor等AI助手集成。
光标设置
- 在Better Logger中启动MCP服务器(查看→ 启动MCP服务器)
- 单击工具栏中的MCP状态指示器
- 点击“安装网桥”-这将网桥安装到
~/.better-logger/mcp-bridge - 复制生成的Cursor配置
- 添加到
~/.cursor/mcp.json - 重新启动游标
可用的MCP工具
list_devices-列出可用的iOS模拟器和物理设备list_sessions-列出已保存的日志会话list_lanes-列出已发现的日志通道get_logs-获取当前实时日志(带过滤器:车道、级别、搜索、限制)get_session_logs-从已保存的会话中获取日志start_log_stream-从设备开始流式传输日志stop_log_stream-停止当前日志流
示例:与Cursor AI一起使用
You: "Show me all network errors from the current log stream"
Cursor: [Uses get_logs tool with level=error and lane=NETWORK]📝 日志格式示例
默认格式
[GENERAL](debug) [AppDelegate.swift:20 applicationDidFinishLaunching()] App launched自定义格式示例
如果您的日志使用不同的格式,请配置自定义模式:
输入: [2025-01-15 10:30:45] [ERROR] [AuthService] Login failed
车道模式: \[(\w+)\] (捕获“AuthService”) 源模式: (可选,如果日志中包含file:line)
🔧 故障排除
MCP服务器未启动
- 检查端口8765是否已在使用中
- 确保防火墙允许本地连接
- 在状态弹出窗口中检查MCP调试日志
日志未显示
- 验证模拟器是否已选择
- 检查设备上是否正在运行应用程序
- 尝试“所有应用程序”,而不是特定的捆绑ID
- 确保日志使用支持的格式
🙏 致谢
- 使用SwiftUI构建
- 基于MCP协议的实现 模型上下文协议规范
______________________________________________________________________
由...制作❤️ 面向iOS开发者
