feat: api log wrapper 추가

This commit is contained in:
Daseul Kim 2025-06-13 17:26:34 +09:00
parent 7597700e7b
commit ed8c6187d3
2 changed files with 14 additions and 4 deletions

10
src/libs/api-wrapper.ts Normal file
View File

@ -0,0 +1,10 @@
import { NextRequest, NextResponse } from 'next/server'
import { writeApiLog } from './logger'
export function loggerWrapper(handler: (req: NextRequest) => Promise<NextResponse>): (req: NextRequest) => Promise<NextResponse> {
return async function (request: NextRequest) {
const response = await handler(request)
await writeApiLog(request, response.status)
return response
}
}

View File

@ -3,7 +3,7 @@ import { join } from 'path'
import pino from 'pino'
/* 로그 데이터 인터페이스 */
interface LogData {
interface ApiLogData {
timestamp: string
status: number
method: string
@ -79,9 +79,9 @@ class DailyLogger {
/* 로거 인스턴스 */
const dailyLogger = new DailyLogger()
/* 로그 기록 함수 */
export const writeLog = async (request: NextRequest, responseStatus: number): Promise<void> => {
const logData: LogData = {
/* API 로그 기록 함수 */
export const writeApiLog = async (request: NextRequest, responseStatus: number): Promise<void> => {
const logData: ApiLogData = {
timestamp: new Date().toISOString(),
status: responseStatus,
method: request.method,