feat: implement error handling and logging in server hooks to capture and notify on 404 and 500 errors, enhancing server reliability and monitoring

This commit is contained in:
2025-12-08 11:52:27 -03:00
parent e1f1af7530
commit fdfbd8b051
31 changed files with 7305 additions and 932 deletions

View File

@@ -217,5 +217,24 @@ export const systemTables = {
sshUsername: v.optional(v.string()), // Usuário SSH para acesso ao servidor
sshPasswordHash: v.optional(v.string()), // Hash da senha SSH (criptografada)
sshPort: v.optional(v.number()) // Porta SSH (padrão: 22)
}).index('by_ativo', ['ativo'])
}).index('by_ativo', ['ativo']),
// Logs de Erros do Servidor (500, etc)
errosServidor: defineTable({
statusCode: v.number(), // Código HTTP do erro (500, 502, etc)
mensagem: v.string(), // Mensagem do erro
stack: v.optional(v.string()), // Stack trace do erro
url: v.optional(v.string()), // URL onde ocorreu o erro
method: v.optional(v.string()), // Método HTTP (GET, POST, etc)
ipAddress: v.optional(v.string()), // IP do cliente
userAgent: v.optional(v.string()), // User agent do navegador
usuarioId: v.optional(v.id('usuarios')), // Usuário autenticado (se houver)
notificado: v.boolean(), // Se a equipe técnica já foi notificada
notificadoEm: v.optional(v.number()), // Timestamp da notificação
criadoEm: v.number() // Timestamp do erro
})
.index('by_status_code', ['statusCode'])
.index('by_notificado', ['notificado'])
.index('by_criado_em', ['criadoEm'])
.index('by_usuario', ['usuarioId'])
};