Updated Logging System to Include Application Logs
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
// Office 365 connector ("MessageCard"). Best-effort delivery — failures are counted, never thrown,
|
||||
// so a bad Teams endpoint can't break the alert cycle.
|
||||
const { all, audit, now, run } = require('../db');
|
||||
const { logEvent } = require('../logger');
|
||||
|
||||
const TIMEOUT_MS = 10000;
|
||||
const FORMATS = ['adaptive', 'messagecard'];
|
||||
@@ -161,8 +162,10 @@ async function deliverAlerts(alerts) {
|
||||
if (!relevant.length) return { attempted: false, delivered: 0, failed: 0 };
|
||||
try {
|
||||
const result = await postPayload(c.webhookUrl, buildPayload(relevant, c));
|
||||
logEvent('teams', `Posted ${relevant.length} alert(s) to Teams (HTTP ${result.status})`, { count: relevant.length, status: result.status, format: c.format }, result.ok ? 'info' : 'warn');
|
||||
return { attempted: true, delivered: result.ok ? 1 : 0, failed: result.ok ? 0 : 1, status: result.status, count: relevant.length };
|
||||
} catch {
|
||||
} catch (error) {
|
||||
logEvent('teams', `Teams alert post failed: ${error.message}`, { count: relevant.length }, 'error');
|
||||
return { attempted: true, delivered: 0, failed: 1 };
|
||||
}
|
||||
}
|
||||
@@ -177,8 +180,10 @@ async function sendTest(userId) {
|
||||
try {
|
||||
result = await postPayload(c.webhookUrl, payload);
|
||||
} catch (error) {
|
||||
logEvent('teams', `Test card request failed: ${error.message}`, {}, 'error');
|
||||
throw Object.assign(new Error(`Teams request failed: ${error.message}`), { status: 400 });
|
||||
}
|
||||
logEvent('teams', `Test card sent (HTTP ${result.status})`, { status: result.status, format: c.format }, result.ok ? 'info' : 'warn');
|
||||
audit(userId, 'send', 'teams_test', null, null, { status: result.status });
|
||||
if (!result.ok) throw Object.assign(new Error(`Teams endpoint returned HTTP ${result.status}`), { status: 400 });
|
||||
return { ok: true, status: result.status };
|
||||
|
||||
Reference in New Issue
Block a user