SQLite MCP サーバーによるログ分析
このプロジェクトは、圧縮されたログ ファイルから SQLite データベースを作成し、Model Context Protocol (MCP) SQLite サーバーを使用してそのデータベースと対話するためのツールを提供します。
インストール手順
python3 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt
ログ ファイルを .gz ファイルとしてフォルダーに配置し、次を実行します。
MCP SQLite サーバー
カーソルでMCP SQLiteサーバーを構成するには、
- カーソル設定
- MCP
- 新しいMCPサーバーを追加
- 名前
SQLlite
- タイプを
command
に設定する - これをコマンドボックスに入れてください
npx -y @smithery/cli@latest run mcp-server-sqlite-npx --config "{\"databasePath\":\"/path/to/thedatbase/logs.db\"}"
コンテンツ
create_log_db.py
: ログファイルを抽出して解析し、SQLite データベースに保存するスクリプトquery_logs.py
: SQLiteデータベースを直接クエリするスクリプトlogs.db
: 解析されたログデータを含む SQLite データベース
データベース構造
データベースには次のテーブルが含まれています。
logs
テーブル
id
: 各ログエントリの一意の識別子timestamp
: ログエントリのタイムスタンプthread
: ログを生成したスレッドlevel
: ログレベル (INFO、WARN、ERROR、DEBUG)module
: ログを生成したモジュールmessage
: ログメッセージの内容source_file
: ソースログファイルraw_log
: 生のログエントリ
stack_traces
テーブル
id
: 各スタックトレースの一意の識別子log_id
: このスタックトレースが属するログエントリへの参照stack_trace
: 完全なスタックトレースのテキスト
parsing_errors
テーブル
id
: 各解析エラーの一意の識別子line
: 解析できなかった行source_file
: ソースログファイルerror_message
: 解析が失敗した理由を説明するエラーメッセージtimestamp
: 解析エラーが発生した時刻
query_logs.py
スクリプトを使用してデータベースを直接クエリできます。