To monitor performance of Prisma ORM using Atatus Node.js agent, use the prisma middleware setting as shown below:
Prisma Instrumentation
import * as atatus from "atatus-nodejs";
import { PrismaClient } from "@prisma/client";
const prisma = new PrismaClient();
prisma.$use(async (params, next) => {
let span;
try {
span = atatus.startSpan(`prisma.${params.model}.${params.action}`, "db", "prisma", "query");
const result = await next(params);
span?.end();
return result;
} catch (e) {
span?.end();
throw e;
}
});