UNPKG

request-log-starter

Version:

Request logging middleware for Nuxt 3 applications

64 lines (60 loc) 1.61 kB
import * as _nuxt_schema from '@nuxt/schema'; import { H3Event } from 'h3'; interface RequestLogOptions { /** * Enable request logging * @default true */ enabled?: boolean; /** * Include request body in logs * @default false */ logBody?: boolean; /** * Include request headers in logs * @default false */ logHeaders?: boolean; /** * Custom filter function to determine which requests to log * @param event H3Event object * @returns Boolean indicating whether to log the request */ filter?: (event: H3Event) => boolean; /** * Output format for logs * @default 'json' */ format?: "json" | "text"; /** * Headers to mask in logs (e.g. for sensitive information) * @default ['authorization', 'cookie'] */ maskHeaders?: string[]; } type ModuleOptions = RequestLogOptions; declare module "nuxt/schema" { interface NuxtConfig { requestLog?: RequestLogOptions; } interface NuxtOptions { requestLog?: RequestLogOptions; } } interface RequestLogInfo { timestamp: string; method: string; url: string; statusCode: number; responseTime?: number; ip?: string; userAgent?: string; body?: any; headers?: Record<string, string>; } interface RequestLogHandler { (logInfo: RequestLogInfo): void; } declare const _default: _nuxt_schema.NuxtModule<RequestLogOptions, RequestLogOptions, false>; export { type ModuleOptions, type RequestLogHandler, type RequestLogInfo, type RequestLogOptions, _default as default };