🚀 Auto-deploy: melhoria no snap e medição AR em 22/05/2026 21:20:32
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
import { supabase } from '@/integrations/supabase/client';
|
||||
|
||||
const logChannel = supabase.channel('global-app-logs', {
|
||||
config: { broadcast: { self: true, ack: false } },
|
||||
});
|
||||
|
||||
logChannel.subscribe();
|
||||
|
||||
export function sendRemoteLog(level: 'info' | 'warn' | 'error', message: string, data?: any) {
|
||||
console.log(`[RemoteLog] [${level}] ${message}`, data || '');
|
||||
logChannel.send({
|
||||
type: 'broadcast',
|
||||
event: 'log',
|
||||
payload: {
|
||||
level,
|
||||
message,
|
||||
data: data ? JSON.parse(JSON.stringify(data)) : null,
|
||||
timestamp: new Date().toISOString(),
|
||||
userAgent: navigator.userAgent,
|
||||
},
|
||||
}).catch(err => {
|
||||
console.error('Falha ao enviar log remoto:', err);
|
||||
});
|
||||
}
|
||||
|
||||
// Captura global de erros em tempo de execução
|
||||
if (typeof window !== 'undefined') {
|
||||
window.addEventListener('error', (event) => {
|
||||
sendRemoteLog('error', `Global error: ${event.message} at ${event.filename}:${event.lineno}`, {
|
||||
colno: event.colno,
|
||||
stack: event.error?.stack,
|
||||
});
|
||||
});
|
||||
|
||||
window.addEventListener('unhandledrejection', (event) => {
|
||||
sendRemoteLog('error', `Unhandled Promise rejection: ${event.reason}`, {
|
||||
reason: event.reason?.stack || event.reason,
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user