Request lifecycle logging with correlation IDs
Fetches mock user data with full request tracing
Sends sensitive data to the API (watch how it's sanitized in logs)
{
"name": "Test User",
"email": "test@example.com",
"password": "secret123",
"creditCard": "4111111111111111"
}import { serverLogger } from '@/lib/logger'
import { withContext, createCorrelationContext } from 'vestig'
const log = serverLogger.child('api:users')
export async function GET(request: Request) {
const ctx = createCorrelationContext()
return withContext(ctx, async () => {
log.info('API request received', {
method: 'GET',
requestId: ctx.requestId,
})
const data = await fetchData()
return Response.json(data, {
headers: { 'X-Request-Id': ctx.requestId! },
})
})
}