Files
saladeaula.digital/apps/admin.saladeaula.digital/app/middleware/logging.ts

21 lines
559 B
TypeScript

import { requestIdContext } from '@/context'
import { type LoaderFunctionArgs } from 'react-router'
export const loggingMiddleware = async (
{ request, context }: LoaderFunctionArgs,
next
) => {
const requestId = crypto.randomUUID()
context.set(requestIdContext, requestId)
console.log(`[${requestId}] ${request.method} ${request.url}`)
const start = performance.now()
const response = await next()
const duration = performance.now() - start
console.log(`[${requestId}] Response ${response.status} (${duration}ms)`)
return response
}