Log Analyzer MCP 是一个强大的基于Python的工具包,旨在简化您与日志文件的交互方式。无论您是在调试复杂的应用程序、监控测试运行,还是仅仅试图理解冗长的日志输出,此工具都提供了命令行界面(CLI)和模型上下文协议(MCP)服务器,帮助您快速高效地找到所需的洞察。
为什么使用Log Analyzer MCP?
loganalyzer CLI工具用于脚本编写和直接分析,或将其MCP服务器与兼容客户端如Cursor集成以获得AI辅助体验。loganalyzer CLI: 直观的命令行工具,用于直接日志交互。analyze_tests)。run_unit_test)。create_coverage_report)。此包可以从PyPI安装(一旦发布)或从本地构建进行开发目的安装。
一旦该包发布到PyPI。
pip install log-analyzer-mcp
这将安装loganalyzer CLI工具,并使MCP服务器包可用于集成。
如果您已克隆了仓库并希望使用本地更改:
确保已安装Hatch。 (参见开发者指南)
构建包:
hatch build
这将在dist/目录中创建wheel和sdist包。
将本地构建安装到Hatch环境(或其他虚拟环境)中:
将<version>替换为生成的wheel文件中的实际版本(例如,0.2.7)。
# 如果使用Hatch环境:
hatch run pip uninstall log-analyzer-mcp -y && hatch run pip install dist/log_analyzer_mcp-<version>-py3-none-any.whl
# 对于其他虚拟环境:
# pip uninstall log-analyzer-mcp -y # (如果之前已安装)
# pip install dist/log_analyzer_mcp-<version>-py3-none-any.whl
对于像Cursor这样的IDE,为了识别MCP服务器的变化,可能需要手动重新加载服务器在IDE中。详情请参阅开发者指南。
有两种主要方式使用Log Analyzer MCP:
作为命令行工具(loganalyzer):
作为MCP服务器(例如,与Cursor一起):
Log Analyzer MCP(对于CLI和服务器)的配置主要通过环境变量或项目根目录下的.env文件处理。
LOG_DIRECTORIES、LOG_PATTERNS_ERROR、LOG_CONTEXT_LINES_BEFORE、LOG_CONTEXT_LINES_AFTER等。.env文件: 复制.env.template(此模板文件需要创建并添加到仓库中),并自定义值。关于所有配置选项及其用法的全面列表,请参阅即将推出的配置指南。
(注意:应创建并添加.env.template文件到仓库,以提供用户的起点。)
MCP服务器可以通过多种方式启动:
通过MCP客户端(例如,Cursor):
配置您的客户端以启动log-analyzer-mcp可执行文件(通常使用类似uvx的帮助工具)。这是典型的集成方式。
示例客户端配置(例如,在.cursor/mcp.json中):
{
"mcpServers": {
"log_analyzer_mcp_server_prod": {
"command": "uvx", // uvx是一个从venv运行python可执行文件的工具
"args": [
"log-analyzer-mcp" // 从PyPI获取并运行最新版本
// 或,对于特定版本:"log-analyzer-mcp==0.2.0"
],
"env": {
"PYTHONUNBUFFERED": "1",
"PYTHONIOENCODING": "utf-8",
"MCP_LOG_LEVEL": "INFO", // 推荐用于生产
// "MCP_LOG_FILE": "/path/to/your/logs/mcp/log_analyzer_mcp_server.log", // 可选
// --- 通过环境变量配置Log Analyzer特定设置 ---
// 这些传递给服务器使用的分析引擎。
// 示例:"LOG_DIRECTORIES": "[\"/path/to/your/app/logs\"]",
// 示例:"LOG_PATTERNS_ERROR": "[\"Exception:.*\"]"
// (参见即将推出的docs/configuration.md中的所有选项)
}
}
// 您可以在这里添加其他MCP服务器
}
}
注意事项:
直接运行(用于开发/测试):
如果需要,可以直接使用其入口点运行服务器。安装后可用的log-analyzer-mcp命令:
log-analyzer-mcp --transport http --port 8080
# 或用于stdio传输
# log-analyzer-mcp --transport stdio
有关更多选项,请参阅log-analyzer-mcp --help。对于开发,使用pyproject.toml中定义的Hatch脚本或开发者指南中描述的方法也很常见。
.env和环境变量设置。(此文档需要创建。)loganalyzer命令和选项。(此文档需要创建。)要运行测试并生成覆盖率报告,请参阅开发者指南中的综合测试指南。此部分涵盖了使用hatch test、带有覆盖率的测试运行、生成HTML报告以及针对特定测试的目标。
我们欢迎贡献!请参阅CONTRIBUTING.md和开发者指南,了解如何设置环境、测试和贡献的指南。
Log Analyzer MCP根据MIT许可证(附带Commons条款)授权。详情请参阅LICENSE.md。