Laminar Exporter
Laminar is an open-source platform for engineering LLM products. The Laminar exporter sends your Mastra traces to Laminar via OTLP/HTTP (protobuf), with Laminar-native span attributes for correct rendering (paths, inputs/outputs, tags, metadata).
InstallationDirect link to Installation
- npm
- pnpm
- Yarn
- Bun
npm install @mastra/laminar@beta
pnpm add @mastra/laminar@beta
yarn add @mastra/laminar@beta
bun add @mastra/laminar@beta
ConfigurationDirect link to Configuration
PrerequisitesDirect link to Prerequisites
- Laminar Project: Create/select a project in Laminar
- Project API Key: Copy from Laminar Project Settings
- Environment Variables: Set your credentials
.env
# Required
LMNR_PROJECT_API_KEY=lmnr_...
# Optional
LMNR_BASE_URL=https://api.lmnr.ai
LAMINAR_ENDPOINT=https://api.lmnr.ai/v1/traces
Zero-Config SetupDirect link to Zero-Config Setup
With environment variables set, use the exporter with no configuration:
src/mastra/index.ts
import { Mastra } from "@mastra/core";
import { Observability } from "@mastra/observability";
import { LaminarExporter } from "@mastra/laminar";
export const mastra = new Mastra({
observability: new Observability({
configs: {
laminar: {
serviceName: "my-service",
exporters: [new LaminarExporter()],
},
},
}),
});
Explicit ConfigurationDirect link to Explicit Configuration
You can also pass credentials directly (takes precedence over environment variables):
src/mastra/index.ts
import { Mastra } from "@mastra/core";
import { Observability } from "@mastra/observability";
import { LaminarExporter } from "@mastra/laminar";
export const mastra = new Mastra({
observability: new Observability({
configs: {
laminar: {
serviceName: "my-service",
exporters: [
new LaminarExporter({
apiKey: process.env.LMNR_PROJECT_API_KEY!,
baseUrl: process.env.LMNR_BASE_URL, // Optional
endpoint: process.env.LAMINAR_ENDPOINT, // Optional
realtime: process.env.NODE_ENV === "development", // Optional
}),
],
},
},
}),
});