11/* eslint-disable sonarjs/no-nested-template-literals */
2+ import type { IncomingMessage } from 'node:http' ;
3+
24import { gray , white } from 'colorette' ;
35import pinoHttp , { Options } from 'pino-http' ;
46import { match } from 'ts-pattern' ;
@@ -19,16 +21,16 @@ export const createHTTPConfig = ({ format, level }: LoggerOptions): Options => (
1921 } ,
2022 wrapSerializers : true ,
2123
22- ...match < LogFormat , Options > ( format )
24+ ...match < LogFormat , Options < IncomingMessage & { originalUrl ?: string } > > ( format )
2325 . with ( LogFormat . INLINE , ( ) => ( {
2426 customSuccessMessage : ( req , res ) =>
25- `${ getColorizer ( res ) ( `(${ res . statusCode } )` ) } ${ white ( `${ req . method } ${ req . url } ` ) } ${ gray (
27+ `${ getColorizer ( res ) ( `(${ res . statusCode } )` ) } ${ white ( `${ req . method } ${ req . originalUrl ?? req . url } ` ) } ${ gray (
2628 `(${ req . socket . remoteAddress } :${ req . socket . remotePort } )`
2729 ) } `,
2830 customErrorMessage : ( req , res ) =>
29- `${ getColorizer ( res ) ( `(${ res . statusCode } )` ) } ${ white ( `${ req . method } ${ req . url } - ` ) } ${ gray (
31+ `${ getColorizer ( res ) ( `(${ res . statusCode } )` ) } ${ white ( `${ req . method } ${ req . originalUrl ?? req . url } ` ) } ${ gray (
3032 `(${ req . socket . remoteAddress } :${ req . socket . remotePort } )`
31- ) } ${ res . err ?. message } `,
33+ ) } - ${ res . err ?. message } `,
3234 ...createInlineConfig ( level ) ,
3335 } ) )
3436 . with ( LogFormat . DETAILED , ( ) => createDetailedConfig ( level ) )
0 commit comments