From b433fef7e2cf32a8eb54bf5bce702cd4e82b3e8f Mon Sep 17 00:00:00 2001 From: Petr Heinz Date: Fri, 9 Jan 2026 17:32:50 +0100 Subject: [PATCH 1/2] BetterStackRequest extends NextRequest for better compatibility --- src/withBetterStack.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/withBetterStack.ts b/src/withBetterStack.ts index 72ba372..1aa3df3 100644 --- a/src/withBetterStack.ts +++ b/src/withBetterStack.ts @@ -48,7 +48,7 @@ export function withBetterStackNextConfig(nextConfig: NextConfig): NextConfig { }; } -export type BetterStackRequest = Request & { +export type BetterStackRequest = NextRequest & { log: Logger; nextUrl?: { hostname: string; pathname: string; protocol: string }; }; From bcbf812d2d45b54f67e5196d3e24968f0361a6d8 Mon Sep 17 00:00:00 2001 From: Petr Heinz Date: Fri, 9 Jan 2026 17:33:26 +0100 Subject: [PATCH 2/2] remove unused geo handling (geo removed in Next.js 15) --- src/withBetterStack.ts | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/withBetterStack.ts b/src/withBetterStack.ts index 1aa3df3..c88f89e 100644 --- a/src/withBetterStack.ts +++ b/src/withBetterStack.ts @@ -71,12 +71,6 @@ export function withBetterStackRouteHandler( config?: BetterStackRouteHandlerConfig ): RouteHandler { return async (request: NextRequest, context: any) => { - let region = ''; - if ('geo' in request) { - // @ts-ignore NextRequest.ip was removed in Next 15, works with undefined - region = request.geo?.region ?? ''; - } - const pathname = request.nextUrl.pathname; const requestDetails = @@ -93,7 +87,6 @@ export function withBetterStackRouteHandler( userAgent: request.headers.get('user-agent'), scheme: request.url.split('://')[0], ip: request.headers.get('x-forwarded-for'), - region, details: Array.isArray(config?.logRequestDetails) ? (Object.fromEntries( Object.entries(requestDetails as RequestJSON).filter(([key]) =>