fix: Update request logging to use request_tracking table instead of dashboard_request_log
This commit is contained in:
parent
2814fb50b9
commit
ff090de82b
@ -8,7 +8,7 @@ export class RequestLogger {
|
||||
constructor(private db: Pool) {}
|
||||
|
||||
/**
|
||||
* Log a completion request to dashboard_request_log table
|
||||
* Log a completion request to request_tracking table
|
||||
* Also emits event for real-time SSE subscribers
|
||||
*/
|
||||
async logRequest(
|
||||
@ -32,9 +32,9 @@ export class RequestLogger {
|
||||
// Write to database
|
||||
await this.db.query(
|
||||
`
|
||||
INSERT INTO dashboard_request_log (
|
||||
INSERT INTO request_tracking (
|
||||
request_id,
|
||||
caller,
|
||||
caller_id,
|
||||
task_type,
|
||||
model,
|
||||
status,
|
||||
@ -45,9 +45,8 @@ export class RequestLogger {
|
||||
latency_ms,
|
||||
fallback_used,
|
||||
error_message,
|
||||
created_at,
|
||||
created_at_epoch
|
||||
) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14)
|
||||
created_at
|
||||
) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13)
|
||||
`,
|
||||
[
|
||||
requestId,
|
||||
@ -62,8 +61,7 @@ export class RequestLogger {
|
||||
latencyMs,
|
||||
fallbackUsed || false,
|
||||
errorMessage || null,
|
||||
now,
|
||||
epochSeconds
|
||||
now
|
||||
]
|
||||
);
|
||||
|
||||
@ -92,7 +90,7 @@ export class RequestLogger {
|
||||
}
|
||||
|
||||
/**
|
||||
* Get recent requests from dashboard_request_log
|
||||
* Get recent requests from request_tracking
|
||||
* Used by /api/dashboard/requests endpoint
|
||||
*/
|
||||
async getRecentRequests(
|
||||
@ -119,7 +117,7 @@ export class RequestLogger {
|
||||
`
|
||||
SELECT
|
||||
request_id,
|
||||
caller,
|
||||
caller_id as caller,
|
||||
task_type,
|
||||
model,
|
||||
status,
|
||||
@ -131,8 +129,8 @@ export class RequestLogger {
|
||||
fallback_used,
|
||||
error_message,
|
||||
created_at
|
||||
FROM dashboard_request_log
|
||||
WHERE created_at > NOW() - INTERVAL $1 HOUR
|
||||
FROM request_tracking
|
||||
WHERE created_at > NOW() - MAKE_INTERVAL(hours => $1)
|
||||
ORDER BY created_at DESC
|
||||
LIMIT $2
|
||||
`,
|
||||
@ -184,18 +182,18 @@ export class RequestLogger {
|
||||
SUM(CASE WHEN status = 'approved' THEN 1 ELSE 0 END)::FLOAT / COUNT(*) as success_rate,
|
||||
AVG(confidence_score) as avg_confidence,
|
||||
SUM(CASE WHEN fallback_used = true THEN 1 ELSE 0 END)::FLOAT / COUNT(*) as fallback_percentage
|
||||
FROM dashboard_request_log
|
||||
WHERE created_at > NOW() - INTERVAL $1 MINUTE
|
||||
FROM request_tracking
|
||||
WHERE created_at > NOW() - MAKE_INTERVAL(mins => $1)
|
||||
`,
|
||||
[bucketMinutes]
|
||||
);
|
||||
|
||||
const topCallersResult = await this.db.query(
|
||||
`
|
||||
SELECT caller, COUNT(*) as count
|
||||
FROM dashboard_request_log
|
||||
WHERE created_at > NOW() - INTERVAL $1 MINUTE
|
||||
GROUP BY caller
|
||||
SELECT caller_id as caller, COUNT(*) as count
|
||||
FROM request_tracking
|
||||
WHERE created_at > NOW() - MAKE_INTERVAL(mins => $1)
|
||||
GROUP BY caller_id
|
||||
ORDER BY count DESC
|
||||
LIMIT 5
|
||||
`,
|
||||
@ -205,8 +203,8 @@ export class RequestLogger {
|
||||
const topModelsResult = await this.db.query(
|
||||
`
|
||||
SELECT model, COUNT(*) as count
|
||||
FROM dashboard_request_log
|
||||
WHERE created_at > NOW() - INTERVAL $1 MINUTE
|
||||
FROM request_tracking
|
||||
WHERE created_at > NOW() - MAKE_INTERVAL(mins => $1)
|
||||
GROUP BY model
|
||||
ORDER BY count DESC
|
||||
LIMIT 5
|
||||
@ -216,10 +214,10 @@ export class RequestLogger {
|
||||
|
||||
const recentErrorsResult = await this.db.query(
|
||||
`
|
||||
SELECT request_id, caller, error_message, created_at
|
||||
FROM dashboard_request_log
|
||||
SELECT request_id, caller_id as caller, error_message, created_at
|
||||
FROM request_tracking
|
||||
WHERE status IN ('rejected', 'error')
|
||||
AND created_at > NOW() - INTERVAL $1 MINUTE
|
||||
AND created_at > NOW() - ($1 * INTERVAL '1 minute')
|
||||
ORDER BY created_at DESC
|
||||
LIMIT 10
|
||||
`,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user