- Execute all 6 migrations on Desk CRM production database - Create missing tables: cr_lsps, cr_agent_lsps, cr_lsp_usage - Create archive tables: cr_*_usage_archive (4 tables) - Create system tables: cr_migrations, cr_maintenance_log - Make all scripts executable (chmod +x) - Total cr_* tables: 38 Migration files: - 001_initial_schema.sql - 002_add_lsps.sql - 003_add_relationships.sql - 004_add_telemetry.sql - 005_add_archive_tables.sql - 006_add_maintenance_log.sql Scripts: - session-init.sh, session-end.sh - inject-context.sh, inject-agent-context.sh - record-usage.sh, db-backup.sh, sync-to-mysql.sh Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
73 lines
2.3 KiB
SQL
73 lines
2.3 KiB
SQL
-- Migration: 004_add_telemetry
|
|
-- Author: Descomplicar®
|
|
-- Date: 2026-02-01
|
|
-- Description: Tabelas de telemetria e uso
|
|
|
|
-- UP
|
|
|
|
-- Uso de agentes
|
|
CREATE TABLE IF NOT EXISTS cr_agent_usage (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
agent_id INT NOT NULL,
|
|
session_id VARCHAR(100),
|
|
invocations INT DEFAULT 1,
|
|
success_count INT DEFAULT 0,
|
|
error_count INT DEFAULT 0,
|
|
total_duration_ms INT DEFAULT 0,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (agent_id) REFERENCES cr_agents(id) ON DELETE CASCADE
|
|
);
|
|
|
|
-- Uso de skills
|
|
CREATE TABLE IF NOT EXISTS cr_skill_usage (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
skill_id INT NOT NULL,
|
|
session_id VARCHAR(100),
|
|
invocations INT DEFAULT 1,
|
|
success_count INT DEFAULT 0,
|
|
error_count INT DEFAULT 0,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (skill_id) REFERENCES cr_skills(id) ON DELETE CASCADE
|
|
);
|
|
|
|
-- Uso de ferramentas MCP
|
|
CREATE TABLE IF NOT EXISTS cr_mcp_tool_usage (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
mcp_id INT NOT NULL,
|
|
tool_name VARCHAR(100) NOT NULL,
|
|
session_id VARCHAR(100),
|
|
invocations INT DEFAULT 1,
|
|
success_count INT DEFAULT 0,
|
|
error_count INT DEFAULT 0,
|
|
avg_latency_ms INT DEFAULT 0,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (mcp_id) REFERENCES cr_mcps(id) ON DELETE CASCADE
|
|
);
|
|
|
|
-- Uso de LSPs
|
|
CREATE TABLE IF NOT EXISTS cr_lsp_usage (
|
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
lsp_id INT NOT NULL,
|
|
session_id VARCHAR(100),
|
|
invocations INT DEFAULT 1,
|
|
completions INT DEFAULT 0,
|
|
diagnostics INT DEFAULT 0,
|
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
FOREIGN KEY (lsp_id) REFERENCES cr_lsps(id) ON DELETE CASCADE
|
|
);
|
|
|
|
-- Índices para queries de telemetria
|
|
CREATE INDEX idx_agent_usage_date ON cr_agent_usage(created_at);
|
|
CREATE INDEX idx_agent_usage_agent ON cr_agent_usage(agent_id);
|
|
CREATE INDEX idx_skill_usage_date ON cr_skill_usage(created_at);
|
|
CREATE INDEX idx_skill_usage_skill ON cr_skill_usage(skill_id);
|
|
CREATE INDEX idx_mcp_tool_usage_date ON cr_mcp_tool_usage(created_at);
|
|
CREATE INDEX idx_mcp_tool_usage_mcp ON cr_mcp_tool_usage(mcp_id);
|
|
CREATE INDEX idx_lsp_usage_date ON cr_lsp_usage(created_at);
|
|
|
|
-- DOWN
|
|
DROP TABLE IF EXISTS cr_lsp_usage;
|
|
DROP TABLE IF EXISTS cr_mcp_tool_usage;
|
|
DROP TABLE IF EXISTS cr_skill_usage;
|
|
DROP TABLE IF EXISTS cr_agent_usage;
|