Skip to main content

LangSmith Exporter

LangSmith is LangChain's platform for monitoring and evaluating LLM applications. The LangSmith exporter sends your traces to LangSmith, providing insights into model performance, debugging capabilities, and evaluation workflows.

Installation
Direct link to Installation

npm install @mastra/langsmith@beta

Configuration
Direct link to Configuration

Prerequisites
Direct link to Prerequisites

  1. LangSmith Account: Sign up at smith.langchain.com
  2. API Key: Generate an API key in LangSmith Settings → API Keys
  3. Environment Variables: Set your credentials
.env
LANGSMITH_API_KEY=ls-xxxxxxxxxxxx
LANGCHAIN_PROJECT=my-project # Optional: default project for traces
LANGSMITH_BASE_URL=https://api.smith.langchain.com # Optional for self-hosted

Basic Setup
Direct link to Basic Setup

src/mastra/index.ts
import { Mastra } from "@mastra/core";
import { Observability } from "@mastra/observability";
import { LangSmithExporter } from "@mastra/langsmith";

export const mastra = new Mastra({
observability: new Observability({
configs: {
langsmith: {
serviceName: "my-service",
exporters: [
new LangSmithExporter({
apiKey: process.env.LANGSMITH_API_KEY,
}),
],
},
},
}),
});

Configuration Options
Direct link to Configuration Options

Complete Configuration
Direct link to Complete Configuration

new LangSmithExporter({
// Required credentials
apiKey: process.env.LANGSMITH_API_KEY!,

// Optional settings
apiUrl: process.env.LANGSMITH_BASE_URL, // Default: https://api.smith.langchain.com
projectName: "my-project", // Project to send traces to (overrides LANGCHAIN_PROJECT env var)
callerOptions: {
// HTTP client options
timeout: 30000, // Request timeout in ms
maxRetries: 3, // Retry attempts
},
logLevel: "info", // Diagnostic logging: debug | info | warn | error

// LangSmith-specific options
hideInputs: false, // Hide input data in UI
hideOutputs: false, // Hide output data in UI
});

Environment Variables
Direct link to Environment Variables

VariableDescription
LANGSMITH_API_KEYYour LangSmith API key (required)
LANGCHAIN_PROJECTDefault project name for traces (optional, defaults to "default")
LANGSMITH_BASE_URLAPI URL for self-hosted instances (optional)

The projectName config option takes precedence over the LANGCHAIN_PROJECT environment variable, allowing you to programmatically route traces to different projects.