From 3d4ce8bb5ea1cc29551899c28ae789fed59c3c62 Mon Sep 17 00:00:00 2001 From: Arya Date: Fri, 15 May 2026 12:18:51 +0530 Subject: [PATCH 1/2] chore: fixed mariadb url capture for esm --- .../tracing/instrumentation/databases/prisma.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/core/src/tracing/instrumentation/databases/prisma.js b/packages/core/src/tracing/instrumentation/databases/prisma.js index 8243b16485..9ab89a9018 100644 --- a/packages/core/src/tracing/instrumentation/databases/prisma.js +++ b/packages/core/src/tracing/instrumentation/databases/prisma.js @@ -30,7 +30,7 @@ const mariadbAdapterConfigMap = new WeakMap(); exports.init = function init(config) { logger = config.logger; - hook.onModuleLoad('@prisma/adapter-mariadb', instrumentMariaDbAdapter); + hook.onModuleLoad('@prisma/adapter-mariadb', instrumentMariaDbAdapter, { nativeEsm: true }); hook.onModuleLoad('@prisma/client', instrumentPrismaClient); }; @@ -64,10 +64,17 @@ function instrumentMariaDbAdapter(mariadbAdapterModule) { } } - return { - ...mariadbAdapterModule, - PrismaMariaDb: InstanaPrismaMariaDb - }; + const isGetterExport = !!Object.getOwnPropertyDescriptor(mariadbAdapterModule, 'PrismaMariaDb')?.get; + // CJS: PrismaMariaDb is a getter property + if (isGetterExport) { + return { + ...mariadbAdapterModule, + PrismaMariaDb: InstanaPrismaMariaDb + }; + } + // ESM: PrismaMariaDb is a direct export + mariadbAdapterModule.PrismaMariaDb = InstanaPrismaMariaDb; + return mariadbAdapterModule; } function instrumentPrismaClient(prismaClientModule) { From 3ea65d18dc306fe04ff6b5a581fb1c8f00be94c3 Mon Sep 17 00:00:00 2001 From: Arya Date: Fri, 15 May 2026 16:13:08 +0530 Subject: [PATCH 2/2] chore: updated --- packages/core/src/tracing/instrumentation/databases/prisma.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/core/src/tracing/instrumentation/databases/prisma.js b/packages/core/src/tracing/instrumentation/databases/prisma.js index 9ab89a9018..45e64171f9 100644 --- a/packages/core/src/tracing/instrumentation/databases/prisma.js +++ b/packages/core/src/tracing/instrumentation/databases/prisma.js @@ -69,7 +69,9 @@ function instrumentMariaDbAdapter(mariadbAdapterModule) { if (isGetterExport) { return { ...mariadbAdapterModule, - PrismaMariaDb: InstanaPrismaMariaDb + get PrismaMariaDb() { + return InstanaPrismaMariaDb; + } }; } // ESM: PrismaMariaDb is a direct export