Skip to main content

MCP服务器用于读取和解析gm4life.cn日志文件

Project description

MCP Log Analyzer

MCP服务器用于读取和解析gm4life.cn日志文件。

功能特性

  • 解析gm4life.cn格式的日志文件
  • 提供MCP工具接口用于日志分析
  • 支持日志搜索和统计分析
  • 命令行工具支持

安装

使用uv安装(推荐)

# 安装uv(如果还没有安装)
pip install uv

# 从源码安装
uv pip install .

# 或者开发模式安装
uv pip install -e .

使用pip安装

pip install .

使用方法

命令行工具

安装后,可以直接使用 mcp_log_analyze 命令启动MCP服务器:

# 启动MCP服务器
mcp_log_analyze

# 查看帮助
mcp_log_analyze --help

# 指定主机和端口
mcp_log_analyze --host 0.0.0.0 --port 8080

作为Python模块使用

from mcp_log_analyzer import LogParser, mcp

# 创建日志解析器
parser = LogParser("path/to/logfile.log")

# 读取日志行
entries = parser.read_lines(start_line=0, count=10)

# 搜索日志
results = parser.search_logs("keyword", max_results=100)

# 获取文件信息
info = parser.get_file_info()

# 启动MCP服务器
mcp.run()

MCP工具

该服务器提供以下MCP工具:

  1. get_file_info - 获取日志文件信息
  2. read_log_lines - 读取指定范围的日志行
  3. search_logs - 搜索包含关键词的日志条目
  4. analyze_attack_types - 分析攻击类型统计
  5. analyze_ip_stats - 分析IP访问统计

开发

设置开发环境

# 克隆仓库
git clone <repository-url>
cd mcp-log-analyzer

# 安装开发依赖
uv pip install -e ".[dev]"

# 运行测试
pytest

# 代码格式化
black src/ tests/
isort src/ tests/

# 代码检查
flake8 src/ tests/

项目结构

mcp-log-analyzer/
├── src/
│   └── mcp_log_analyzer/
│       ├── __init__.py
│       ├── cli.py          # 命令行入口点
│       ├── log_parser.py   # 日志解析器
│       └── mcp_server.py   # MCP服务器
├── tests/
│   ├── __init__.py
│   └── test_log_parser.py
├── pyproject.toml          # 项目配置
└── README.md

日志格式

支持的日志格式示例:

2024-01-01 12:00:00 100ms SQL blocked 192.168.1.1 10.0.0.1 example.com /test GET - miss 200 1024 Mozilla/5.0

字段说明:

  • 请求时间
  • 请求持续时间
  • 攻击类型
  • 拦截状态
  • 客户端IP
  • 代理IP
  • 域名
  • URL路径
  • 请求方法
  • 引用页面
  • 缓存状态
  • 状态码
  • 页面大小
  • 用户代理

许可证

MIT License

贡献

欢迎提交Issue和Pull Request!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_log_analyzer-0.1.0.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_log_analyzer-0.1.0-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file mcp_log_analyzer-0.1.0.tar.gz.

File metadata

  • Download URL: mcp_log_analyzer-0.1.0.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.15

File hashes

Hashes for mcp_log_analyzer-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9ece481d8ad37f4ad4115ee9f49959b3b7da5794a9a9281e558793589686e9ff
MD5 591c27362018232ae80c81279f0ef986
BLAKE2b-256 0856003fbb1962c7eb394d5d865506400cb090058045a446bd8ad6d91d9c892a

See more details on using hashes here.

File details

Details for the file mcp_log_analyzer-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_log_analyzer-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 78a4d2aefcb9ea5726de6ecfe949d344d1018203e22d4252c325c48a83b4384f
MD5 a9749835c680872775c3a28970d51dc1
BLAKE2b-256 a4ff3f897c7bf1f754cec6d1a4b7b9efc23accf221094bdd4b960f4a9326f83e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page