@mastra/mcp-docs-server 1.1.5 → 1.1.6-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/docs/agents/adding-voice.md +349 -0
- package/.docs/docs/agents/agent-approval.md +558 -0
- package/.docs/docs/agents/agent-memory.md +209 -0
- package/.docs/docs/agents/guardrails.md +374 -0
- package/.docs/docs/agents/network-approval.md +275 -0
- package/.docs/docs/agents/networks.md +299 -0
- package/.docs/docs/agents/overview.md +304 -0
- package/.docs/docs/agents/processors.md +622 -0
- package/.docs/docs/agents/structured-output.md +273 -0
- package/.docs/docs/agents/supervisor-agents.md +304 -0
- package/.docs/docs/agents/using-tools.md +214 -0
- package/.docs/docs/build-with-ai/mcp-docs-server.md +238 -0
- package/.docs/docs/build-with-ai/skills.md +35 -0
- package/.docs/docs/community/contributing-templates.md +3 -0
- package/.docs/docs/community/discord.md +9 -0
- package/.docs/docs/community/licensing.md +66 -0
- package/.docs/docs/deployment/cloud-providers.md +15 -0
- package/.docs/docs/deployment/mastra-server.md +122 -0
- package/.docs/docs/deployment/monorepo.md +142 -0
- package/.docs/docs/deployment/overview.md +62 -0
- package/.docs/docs/deployment/studio.md +239 -0
- package/.docs/docs/deployment/web-framework.md +52 -0
- package/.docs/docs/deployment/workflow-runners.md +9 -0
- package/.docs/docs/evals/built-in-scorers.md +47 -0
- package/.docs/docs/evals/custom-scorers.md +519 -0
- package/.docs/docs/evals/overview.md +141 -0
- package/.docs/docs/evals/running-in-ci.md +124 -0
- package/.docs/docs/getting-started/build-with-ai.md +68 -0
- package/.docs/docs/getting-started/manual-install.md +226 -0
- package/.docs/docs/getting-started/project-structure.md +60 -0
- package/.docs/docs/getting-started/start.md +28 -0
- package/.docs/docs/getting-started/studio.md +101 -0
- package/.docs/docs/index.md +43 -0
- package/.docs/docs/mastra-cloud/deployment.md +77 -0
- package/.docs/docs/mastra-cloud/observability.md +38 -0
- package/.docs/docs/mastra-cloud/overview.md +23 -0
- package/.docs/docs/mastra-cloud/setup.md +42 -0
- package/.docs/docs/mastra-cloud/studio.md +24 -0
- package/.docs/docs/mastra-code/configuration.md +299 -0
- package/.docs/docs/mastra-code/customization.md +228 -0
- package/.docs/docs/mastra-code/modes.md +104 -0
- package/.docs/docs/mastra-code/overview.md +135 -0
- package/.docs/docs/mastra-code/tools.md +229 -0
- package/.docs/docs/mcp/overview.md +373 -0
- package/.docs/docs/mcp/publishing-mcp-server.md +95 -0
- package/.docs/docs/memory/memory-processors.md +314 -0
- package/.docs/docs/memory/message-history.md +260 -0
- package/.docs/docs/memory/observational-memory.md +248 -0
- package/.docs/docs/memory/overview.md +45 -0
- package/.docs/docs/memory/semantic-recall.md +272 -0
- package/.docs/docs/memory/storage.md +261 -0
- package/.docs/docs/memory/working-memory.md +400 -0
- package/.docs/docs/observability/datasets/overview.md +198 -0
- package/.docs/docs/observability/datasets/running-experiments.md +274 -0
- package/.docs/docs/observability/logging.md +99 -0
- package/.docs/docs/observability/overview.md +70 -0
- package/.docs/docs/observability/tracing/bridges/otel.md +209 -0
- package/.docs/docs/observability/tracing/exporters/arize.md +272 -0
- package/.docs/docs/observability/tracing/exporters/braintrust.md +111 -0
- package/.docs/docs/observability/tracing/exporters/cloud.md +127 -0
- package/.docs/docs/observability/tracing/exporters/datadog.md +187 -0
- package/.docs/docs/observability/tracing/exporters/default.md +209 -0
- package/.docs/docs/observability/tracing/exporters/laminar.md +100 -0
- package/.docs/docs/observability/tracing/exporters/langfuse.md +213 -0
- package/.docs/docs/observability/tracing/exporters/langsmith.md +198 -0
- package/.docs/docs/observability/tracing/exporters/otel.md +476 -0
- package/.docs/docs/observability/tracing/exporters/posthog.md +148 -0
- package/.docs/docs/observability/tracing/exporters/sentry.md +208 -0
- package/.docs/docs/observability/tracing/overview.md +1112 -0
- package/.docs/docs/observability/tracing/processors/sensitive-data-filter.md +300 -0
- package/.docs/docs/rag/chunking-and-embedding.md +183 -0
- package/.docs/docs/rag/graph-rag.md +215 -0
- package/.docs/docs/rag/overview.md +72 -0
- package/.docs/docs/rag/retrieval.md +515 -0
- package/.docs/docs/rag/vector-databases.md +645 -0
- package/.docs/docs/server/auth/auth0.md +220 -0
- package/.docs/docs/server/auth/better-auth.md +203 -0
- package/.docs/docs/server/auth/clerk.md +132 -0
- package/.docs/docs/server/auth/composite-auth.md +234 -0
- package/.docs/docs/server/auth/custom-auth-provider.md +513 -0
- package/.docs/docs/server/auth/firebase.md +272 -0
- package/.docs/docs/server/auth/jwt.md +110 -0
- package/.docs/docs/server/auth/simple-auth.md +180 -0
- package/.docs/docs/server/auth/supabase.md +117 -0
- package/.docs/docs/server/auth/workos.md +186 -0
- package/.docs/docs/server/auth.md +38 -0
- package/.docs/docs/server/custom-adapters.md +378 -0
- package/.docs/docs/server/custom-api-routes.md +267 -0
- package/.docs/docs/server/mastra-client.md +243 -0
- package/.docs/docs/server/mastra-server.md +71 -0
- package/.docs/docs/server/middleware.md +225 -0
- package/.docs/docs/server/request-context.md +471 -0
- package/.docs/docs/server/server-adapters.md +547 -0
- package/.docs/docs/streaming/events.md +237 -0
- package/.docs/docs/streaming/overview.md +175 -0
- package/.docs/docs/streaming/tool-streaming.md +175 -0
- package/.docs/docs/streaming/workflow-streaming.md +109 -0
- package/.docs/docs/voice/overview.md +959 -0
- package/.docs/docs/voice/speech-to-speech.md +102 -0
- package/.docs/docs/voice/speech-to-text.md +79 -0
- package/.docs/docs/voice/text-to-speech.md +83 -0
- package/.docs/docs/workflows/agents-and-tools.md +166 -0
- package/.docs/docs/workflows/control-flow.md +822 -0
- package/.docs/docs/workflows/error-handling.md +360 -0
- package/.docs/docs/workflows/human-in-the-loop.md +215 -0
- package/.docs/docs/workflows/overview.md +370 -0
- package/.docs/docs/workflows/snapshots.md +238 -0
- package/.docs/docs/workflows/suspend-and-resume.md +205 -0
- package/.docs/docs/workflows/time-travel.md +309 -0
- package/.docs/docs/workflows/workflow-state.md +181 -0
- package/.docs/docs/workspace/filesystem.md +164 -0
- package/.docs/docs/workspace/overview.md +239 -0
- package/.docs/docs/workspace/sandbox.md +63 -0
- package/.docs/docs/workspace/search.md +243 -0
- package/.docs/docs/workspace/skills.md +169 -0
- package/.docs/guides/agent-frameworks/ai-sdk.md +140 -0
- package/.docs/guides/build-your-ui/ai-sdk-ui.md +1499 -0
- package/.docs/guides/build-your-ui/assistant-ui.md +156 -0
- package/.docs/guides/build-your-ui/copilotkit.md +289 -0
- package/.docs/guides/deployment/amazon-ec2.md +130 -0
- package/.docs/guides/deployment/aws-lambda.md +248 -0
- package/.docs/guides/deployment/azure-app-services.md +114 -0
- package/.docs/guides/deployment/cloudflare.md +99 -0
- package/.docs/guides/deployment/digital-ocean.md +168 -0
- package/.docs/guides/deployment/inngest.md +682 -0
- package/.docs/guides/deployment/netlify.md +77 -0
- package/.docs/guides/deployment/vercel.md +101 -0
- package/.docs/guides/getting-started/astro.md +398 -0
- package/.docs/guides/getting-started/electron.md +504 -0
- package/.docs/guides/getting-started/express.md +251 -0
- package/.docs/guides/getting-started/hono.md +190 -0
- package/.docs/guides/getting-started/next-js.md +347 -0
- package/.docs/guides/getting-started/nuxt.md +497 -0
- package/.docs/guides/getting-started/quickstart.md +67 -0
- package/.docs/guides/getting-started/sveltekit.md +296 -0
- package/.docs/guides/getting-started/vite-react.md +425 -0
- package/.docs/guides/guide/ai-recruiter.md +226 -0
- package/.docs/guides/guide/chef-michel.md +211 -0
- package/.docs/guides/guide/code-review-bot.md +226 -0
- package/.docs/guides/guide/dev-assistant.md +307 -0
- package/.docs/guides/guide/docs-manager.md +238 -0
- package/.docs/guides/guide/github-actions-pr-description.md +236 -0
- package/.docs/guides/guide/notes-mcp-server.md +416 -0
- package/.docs/guides/guide/research-assistant.md +348 -0
- package/.docs/guides/guide/research-coordinator.md +416 -0
- package/.docs/guides/guide/stock-agent.md +132 -0
- package/.docs/guides/guide/web-search.md +320 -0
- package/.docs/guides/guide/whatsapp-chat-bot.md +405 -0
- package/.docs/guides/index.md +3 -0
- package/.docs/guides/migrations/agentnetwork.md +97 -0
- package/.docs/guides/migrations/ai-sdk-v4-to-v5.md +112 -0
- package/.docs/guides/migrations/network-to-supervisor.md +261 -0
- package/.docs/guides/migrations/upgrade-to-v1/agent.md +404 -0
- package/.docs/guides/migrations/upgrade-to-v1/cli.md +57 -0
- package/.docs/guides/migrations/upgrade-to-v1/client.md +337 -0
- package/.docs/guides/migrations/upgrade-to-v1/deployment.md +37 -0
- package/.docs/guides/migrations/upgrade-to-v1/evals.md +239 -0
- package/.docs/guides/migrations/upgrade-to-v1/mastra.md +143 -0
- package/.docs/guides/migrations/upgrade-to-v1/mcp.md +97 -0
- package/.docs/guides/migrations/upgrade-to-v1/memory.md +285 -0
- package/.docs/guides/migrations/upgrade-to-v1/overview.md +119 -0
- package/.docs/guides/migrations/upgrade-to-v1/processors.md +68 -0
- package/.docs/guides/migrations/upgrade-to-v1/rag.md +42 -0
- package/.docs/guides/migrations/upgrade-to-v1/storage.md +553 -0
- package/.docs/guides/migrations/upgrade-to-v1/tools.md +180 -0
- package/.docs/guides/migrations/upgrade-to-v1/tracing.md +412 -0
- package/.docs/guides/migrations/upgrade-to-v1/vectors.md +87 -0
- package/.docs/guides/migrations/upgrade-to-v1/voice.md +30 -0
- package/.docs/guides/migrations/upgrade-to-v1/workflows.md +341 -0
- package/.docs/guides/migrations/vnext-to-standard-apis.md +362 -0
- package/.docs/models/embeddings.md +161 -0
- package/.docs/models/gateways/azure-openai.md +128 -0
- package/.docs/models/gateways/custom-gateways.md +545 -0
- package/.docs/models/gateways/netlify.md +88 -0
- package/.docs/models/gateways/openrouter.md +219 -0
- package/.docs/models/gateways/vercel.md +225 -0
- package/.docs/models/gateways.md +14 -0
- package/.docs/models/index.md +286 -0
- package/.docs/models/providers/302ai.md +134 -0
- package/.docs/models/providers/abacus.md +125 -0
- package/.docs/models/providers/agentrouter.md +90 -0
- package/.docs/models/providers/aihubmix.md +107 -0
- package/.docs/models/providers/alibaba-cn.md +135 -0
- package/.docs/models/providers/alibaba.md +111 -0
- package/.docs/models/providers/amazon-bedrock.md +33 -0
- package/.docs/models/providers/anthropic.md +153 -0
- package/.docs/models/providers/azure.md +33 -0
- package/.docs/models/providers/bailing.md +72 -0
- package/.docs/models/providers/baseten.md +77 -0
- package/.docs/models/providers/berget.md +78 -0
- package/.docs/models/providers/cerebras.md +101 -0
- package/.docs/models/providers/chutes.md +136 -0
- package/.docs/models/providers/cloudflare-ai-gateway.md +33 -0
- package/.docs/models/providers/cloudflare-workers-ai.md +109 -0
- package/.docs/models/providers/cohere.md +33 -0
- package/.docs/models/providers/cortecs.md +91 -0
- package/.docs/models/providers/deepinfra.md +112 -0
- package/.docs/models/providers/deepseek.md +88 -0
- package/.docs/models/providers/fastrouter.md +84 -0
- package/.docs/models/providers/fireworks-ai.md +89 -0
- package/.docs/models/providers/firmware.md +85 -0
- package/.docs/models/providers/friendli.md +78 -0
- package/.docs/models/providers/github-models.md +125 -0
- package/.docs/models/providers/google-vertex.md +33 -0
- package/.docs/models/providers/google.md +159 -0
- package/.docs/models/providers/groq.md +107 -0
- package/.docs/models/providers/helicone.md +161 -0
- package/.docs/models/providers/huggingface.md +90 -0
- package/.docs/models/providers/iflowcn.md +84 -0
- package/.docs/models/providers/inception.md +72 -0
- package/.docs/models/providers/inference.md +79 -0
- package/.docs/models/providers/io-intelligence.md +87 -0
- package/.docs/models/providers/io-net.md +87 -0
- package/.docs/models/providers/jiekou.md +131 -0
- package/.docs/models/providers/kilo.md +333 -0
- package/.docs/models/providers/kimi-for-coding.md +100 -0
- package/.docs/models/providers/kuae-cloud-coding-plan.md +71 -0
- package/.docs/models/providers/llama.md +77 -0
- package/.docs/models/providers/lmstudio.md +73 -0
- package/.docs/models/providers/lucidquery.md +72 -0
- package/.docs/models/providers/minimax-cn-coding-plan.md +102 -0
- package/.docs/models/providers/minimax-cn.md +102 -0
- package/.docs/models/providers/minimax-coding-plan.md +102 -0
- package/.docs/models/providers/minimax.md +104 -0
- package/.docs/models/providers/mistral.md +124 -0
- package/.docs/models/providers/moark.md +72 -0
- package/.docs/models/providers/modelscope.md +77 -0
- package/.docs/models/providers/moonshotai-cn.md +76 -0
- package/.docs/models/providers/moonshotai.md +76 -0
- package/.docs/models/providers/morph.md +73 -0
- package/.docs/models/providers/nano-gpt.md +103 -0
- package/.docs/models/providers/nebius.md +116 -0
- package/.docs/models/providers/nova.md +72 -0
- package/.docs/models/providers/novita-ai.md +154 -0
- package/.docs/models/providers/nvidia.md +141 -0
- package/.docs/models/providers/ollama-cloud.md +103 -0
- package/.docs/models/providers/ollama.md +33 -0
- package/.docs/models/providers/openai.md +193 -0
- package/.docs/models/providers/opencode.md +100 -0
- package/.docs/models/providers/ovhcloud.md +83 -0
- package/.docs/models/providers/perplexity.md +100 -0
- package/.docs/models/providers/poe.md +183 -0
- package/.docs/models/providers/privatemode-ai.md +75 -0
- package/.docs/models/providers/requesty.md +90 -0
- package/.docs/models/providers/scaleway.md +84 -0
- package/.docs/models/providers/siliconflow-cn.md +138 -0
- package/.docs/models/providers/siliconflow.md +140 -0
- package/.docs/models/providers/stackit.md +78 -0
- package/.docs/models/providers/stepfun.md +73 -0
- package/.docs/models/providers/submodel.md +79 -0
- package/.docs/models/providers/synthetic.md +96 -0
- package/.docs/models/providers/togetherai.md +115 -0
- package/.docs/models/providers/upstage.md +73 -0
- package/.docs/models/providers/venice.md +95 -0
- package/.docs/models/providers/vivgrid.md +106 -0
- package/.docs/models/providers/vultr.md +75 -0
- package/.docs/models/providers/wandb.md +80 -0
- package/.docs/models/providers/xai.md +141 -0
- package/.docs/models/providers/xiaomi.md +71 -0
- package/.docs/models/providers/zai-coding-plan.md +80 -0
- package/.docs/models/providers/zai.md +79 -0
- package/.docs/models/providers/zenmux.md +161 -0
- package/.docs/models/providers/zhipuai-coding-plan.md +79 -0
- package/.docs/models/providers/zhipuai.md +79 -0
- package/.docs/models/providers.md +81 -0
- package/.docs/reference/agents/agent.md +141 -0
- package/.docs/reference/agents/generate.md +186 -0
- package/.docs/reference/agents/generateLegacy.md +173 -0
- package/.docs/reference/agents/getDefaultGenerateOptions.md +36 -0
- package/.docs/reference/agents/getDefaultOptions.md +34 -0
- package/.docs/reference/agents/getDefaultStreamOptions.md +36 -0
- package/.docs/reference/agents/getDescription.md +21 -0
- package/.docs/reference/agents/getInstructions.md +34 -0
- package/.docs/reference/agents/getLLM.md +37 -0
- package/.docs/reference/agents/getMemory.md +34 -0
- package/.docs/reference/agents/getModel.md +34 -0
- package/.docs/reference/agents/getTools.md +29 -0
- package/.docs/reference/agents/getVoice.md +34 -0
- package/.docs/reference/agents/listAgents.md +35 -0
- package/.docs/reference/agents/listScorers.md +34 -0
- package/.docs/reference/agents/listTools.md +34 -0
- package/.docs/reference/agents/listWorkflows.md +34 -0
- package/.docs/reference/agents/network.md +133 -0
- package/.docs/reference/ai-sdk/chat-route.md +82 -0
- package/.docs/reference/ai-sdk/handle-chat-stream.md +53 -0
- package/.docs/reference/ai-sdk/handle-network-stream.md +37 -0
- package/.docs/reference/ai-sdk/handle-workflow-stream.md +55 -0
- package/.docs/reference/ai-sdk/network-route.md +74 -0
- package/.docs/reference/ai-sdk/to-ai-sdk-stream.md +231 -0
- package/.docs/reference/ai-sdk/to-ai-sdk-v4-messages.md +79 -0
- package/.docs/reference/ai-sdk/to-ai-sdk-v5-messages.md +76 -0
- package/.docs/reference/ai-sdk/with-mastra.md +59 -0
- package/.docs/reference/ai-sdk/workflow-route.md +79 -0
- package/.docs/reference/auth/auth0.md +73 -0
- package/.docs/reference/auth/better-auth.md +71 -0
- package/.docs/reference/auth/clerk.md +36 -0
- package/.docs/reference/auth/firebase.md +80 -0
- package/.docs/reference/auth/jwt.md +26 -0
- package/.docs/reference/auth/supabase.md +33 -0
- package/.docs/reference/auth/workos.md +84 -0
- package/.docs/reference/cli/create-mastra.md +137 -0
- package/.docs/reference/cli/mastra.md +336 -0
- package/.docs/reference/client-js/agents.md +437 -0
- package/.docs/reference/client-js/error-handling.md +16 -0
- package/.docs/reference/client-js/logs.md +24 -0
- package/.docs/reference/client-js/mastra-client.md +63 -0
- package/.docs/reference/client-js/memory.md +221 -0
- package/.docs/reference/client-js/observability.md +72 -0
- package/.docs/reference/client-js/telemetry.md +20 -0
- package/.docs/reference/client-js/tools.md +44 -0
- package/.docs/reference/client-js/vectors.md +79 -0
- package/.docs/reference/client-js/workflows.md +199 -0
- package/.docs/reference/configuration.md +752 -0
- package/.docs/reference/core/addGateway.md +42 -0
- package/.docs/reference/core/getAgent.md +21 -0
- package/.docs/reference/core/getAgentById.md +21 -0
- package/.docs/reference/core/getDeployer.md +22 -0
- package/.docs/reference/core/getGateway.md +38 -0
- package/.docs/reference/core/getGatewayById.md +41 -0
- package/.docs/reference/core/getLogger.md +22 -0
- package/.docs/reference/core/getMCPServer.md +47 -0
- package/.docs/reference/core/getMCPServerById.md +55 -0
- package/.docs/reference/core/getMemory.md +50 -0
- package/.docs/reference/core/getScorer.md +54 -0
- package/.docs/reference/core/getScorerById.md +54 -0
- package/.docs/reference/core/getServer.md +22 -0
- package/.docs/reference/core/getStorage.md +22 -0
- package/.docs/reference/core/getStoredAgentById.md +89 -0
- package/.docs/reference/core/getTelemetry.md +22 -0
- package/.docs/reference/core/getVector.md +22 -0
- package/.docs/reference/core/getWorkflow.md +42 -0
- package/.docs/reference/core/listAgents.md +21 -0
- package/.docs/reference/core/listGateways.md +40 -0
- package/.docs/reference/core/listLogs.md +38 -0
- package/.docs/reference/core/listLogsByRunId.md +36 -0
- package/.docs/reference/core/listMCPServers.md +55 -0
- package/.docs/reference/core/listMemory.md +56 -0
- package/.docs/reference/core/listScorers.md +29 -0
- package/.docs/reference/core/listStoredAgents.md +93 -0
- package/.docs/reference/core/listVectors.md +22 -0
- package/.docs/reference/core/listWorkflows.md +21 -0
- package/.docs/reference/core/mastra-class.md +66 -0
- package/.docs/reference/core/mastra-model-gateway.md +153 -0
- package/.docs/reference/core/setLogger.md +26 -0
- package/.docs/reference/core/setStorage.md +27 -0
- package/.docs/reference/datasets/addItem.md +37 -0
- package/.docs/reference/datasets/addItems.md +35 -0
- package/.docs/reference/datasets/compareExperiments.md +52 -0
- package/.docs/reference/datasets/create.md +51 -0
- package/.docs/reference/datasets/dataset.md +82 -0
- package/.docs/reference/datasets/datasets-manager.md +94 -0
- package/.docs/reference/datasets/delete.md +25 -0
- package/.docs/reference/datasets/deleteExperiment.md +27 -0
- package/.docs/reference/datasets/deleteItem.md +27 -0
- package/.docs/reference/datasets/deleteItems.md +29 -0
- package/.docs/reference/datasets/get.md +31 -0
- package/.docs/reference/datasets/getDetails.md +47 -0
- package/.docs/reference/datasets/getExperiment.md +30 -0
- package/.docs/reference/datasets/getItem.md +33 -0
- package/.docs/reference/datasets/getItemHistory.md +31 -0
- package/.docs/reference/datasets/list.md +31 -0
- package/.docs/reference/datasets/listExperimentResults.md +39 -0
- package/.docs/reference/datasets/listExperiments.md +33 -0
- package/.docs/reference/datasets/listItems.md +46 -0
- package/.docs/reference/datasets/listVersions.md +33 -0
- package/.docs/reference/datasets/startExperiment.md +62 -0
- package/.docs/reference/datasets/startExperimentAsync.md +43 -0
- package/.docs/reference/datasets/update.md +48 -0
- package/.docs/reference/datasets/updateItem.md +38 -0
- package/.docs/reference/deployer/cloudflare.md +79 -0
- package/.docs/reference/deployer/netlify.md +80 -0
- package/.docs/reference/deployer/vercel.md +91 -0
- package/.docs/reference/deployer.md +100 -0
- package/.docs/reference/evals/answer-relevancy.md +105 -0
- package/.docs/reference/evals/answer-similarity.md +99 -0
- package/.docs/reference/evals/bias.md +120 -0
- package/.docs/reference/evals/completeness.md +136 -0
- package/.docs/reference/evals/content-similarity.md +101 -0
- package/.docs/reference/evals/context-precision.md +196 -0
- package/.docs/reference/evals/context-relevance.md +531 -0
- package/.docs/reference/evals/create-scorer.md +270 -0
- package/.docs/reference/evals/faithfulness.md +114 -0
- package/.docs/reference/evals/hallucination.md +213 -0
- package/.docs/reference/evals/keyword-coverage.md +128 -0
- package/.docs/reference/evals/mastra-scorer.md +123 -0
- package/.docs/reference/evals/noise-sensitivity.md +675 -0
- package/.docs/reference/evals/prompt-alignment.md +614 -0
- package/.docs/reference/evals/run-evals.md +179 -0
- package/.docs/reference/evals/scorer-utils.md +326 -0
- package/.docs/reference/evals/textual-difference.md +113 -0
- package/.docs/reference/evals/tone-consistency.md +119 -0
- package/.docs/reference/evals/tool-call-accuracy.md +533 -0
- package/.docs/reference/evals/toxicity.md +123 -0
- package/.docs/reference/harness/harness-class.md +708 -0
- package/.docs/reference/index.md +277 -0
- package/.docs/reference/logging/pino-logger.md +117 -0
- package/.docs/reference/mastra-code/createMastraCode.md +108 -0
- package/.docs/reference/memory/clone-utilities.md +199 -0
- package/.docs/reference/memory/cloneThread.md +130 -0
- package/.docs/reference/memory/createThread.md +68 -0
- package/.docs/reference/memory/deleteMessages.md +38 -0
- package/.docs/reference/memory/getThreadById.md +24 -0
- package/.docs/reference/memory/listThreads.md +145 -0
- package/.docs/reference/memory/memory-class.md +147 -0
- package/.docs/reference/memory/observational-memory.md +565 -0
- package/.docs/reference/memory/recall.md +91 -0
- package/.docs/reference/observability/tracing/bridges/otel.md +131 -0
- package/.docs/reference/observability/tracing/configuration.md +178 -0
- package/.docs/reference/observability/tracing/exporters/arize.md +141 -0
- package/.docs/reference/observability/tracing/exporters/braintrust.md +93 -0
- package/.docs/reference/observability/tracing/exporters/cloud-exporter.md +163 -0
- package/.docs/reference/observability/tracing/exporters/console-exporter.md +138 -0
- package/.docs/reference/observability/tracing/exporters/datadog.md +116 -0
- package/.docs/reference/observability/tracing/exporters/default-exporter.md +174 -0
- package/.docs/reference/observability/tracing/exporters/laminar.md +78 -0
- package/.docs/reference/observability/tracing/exporters/langfuse.md +134 -0
- package/.docs/reference/observability/tracing/exporters/langsmith.md +108 -0
- package/.docs/reference/observability/tracing/exporters/otel.md +199 -0
- package/.docs/reference/observability/tracing/exporters/posthog.md +92 -0
- package/.docs/reference/observability/tracing/exporters/sentry.md +184 -0
- package/.docs/reference/observability/tracing/instances.md +107 -0
- package/.docs/reference/observability/tracing/interfaces.md +743 -0
- package/.docs/reference/observability/tracing/processors/sensitive-data-filter.md +144 -0
- package/.docs/reference/observability/tracing/spans.md +224 -0
- package/.docs/reference/processors/batch-parts-processor.md +61 -0
- package/.docs/reference/processors/language-detector.md +82 -0
- package/.docs/reference/processors/message-history-processor.md +85 -0
- package/.docs/reference/processors/moderation-processor.md +104 -0
- package/.docs/reference/processors/pii-detector.md +108 -0
- package/.docs/reference/processors/processor-interface.md +521 -0
- package/.docs/reference/processors/prompt-injection-detector.md +72 -0
- package/.docs/reference/processors/semantic-recall-processor.md +117 -0
- package/.docs/reference/processors/system-prompt-scrubber.md +80 -0
- package/.docs/reference/processors/token-limiter-processor.md +115 -0
- package/.docs/reference/processors/tool-call-filter.md +85 -0
- package/.docs/reference/processors/tool-search-processor.md +111 -0
- package/.docs/reference/processors/unicode-normalizer.md +62 -0
- package/.docs/reference/processors/working-memory-processor.md +152 -0
- package/.docs/reference/rag/chunk.md +221 -0
- package/.docs/reference/rag/database-config.md +261 -0
- package/.docs/reference/rag/document.md +114 -0
- package/.docs/reference/rag/embeddings.md +92 -0
- package/.docs/reference/rag/extract-params.md +168 -0
- package/.docs/reference/rag/graph-rag.md +111 -0
- package/.docs/reference/rag/metadata-filters.md +216 -0
- package/.docs/reference/rag/rerank.md +75 -0
- package/.docs/reference/rag/rerankWithScorer.md +80 -0
- package/.docs/reference/server/create-route.md +262 -0
- package/.docs/reference/server/express-adapter.md +176 -0
- package/.docs/reference/server/fastify-adapter.md +90 -0
- package/.docs/reference/server/hono-adapter.md +162 -0
- package/.docs/reference/server/koa-adapter.md +127 -0
- package/.docs/reference/server/mastra-server.md +298 -0
- package/.docs/reference/server/register-api-route.md +249 -0
- package/.docs/reference/server/routes.md +306 -0
- package/.docs/reference/storage/cloudflare-d1.md +218 -0
- package/.docs/reference/storage/cloudflare.md +88 -0
- package/.docs/reference/storage/composite.md +235 -0
- package/.docs/reference/storage/convex.md +161 -0
- package/.docs/reference/storage/dynamodb.md +282 -0
- package/.docs/reference/storage/lance.md +131 -0
- package/.docs/reference/storage/libsql.md +135 -0
- package/.docs/reference/storage/mongodb.md +262 -0
- package/.docs/reference/storage/mssql.md +157 -0
- package/.docs/reference/storage/overview.md +121 -0
- package/.docs/reference/storage/postgresql.md +526 -0
- package/.docs/reference/storage/upstash.md +160 -0
- package/.docs/reference/streaming/ChunkType.md +292 -0
- package/.docs/reference/streaming/agents/MastraModelOutput.md +182 -0
- package/.docs/reference/streaming/agents/stream.md +221 -0
- package/.docs/reference/streaming/agents/streamLegacy.md +142 -0
- package/.docs/reference/streaming/workflows/observeStream.md +42 -0
- package/.docs/reference/streaming/workflows/resumeStream.md +61 -0
- package/.docs/reference/streaming/workflows/stream.md +88 -0
- package/.docs/reference/streaming/workflows/timeTravelStream.md +142 -0
- package/.docs/reference/templates/overview.md +194 -0
- package/.docs/reference/tools/create-tool.md +237 -0
- package/.docs/reference/tools/document-chunker-tool.md +89 -0
- package/.docs/reference/tools/graph-rag-tool.md +182 -0
- package/.docs/reference/tools/mcp-client.md +954 -0
- package/.docs/reference/tools/mcp-server.md +1271 -0
- package/.docs/reference/tools/vector-query-tool.md +459 -0
- package/.docs/reference/vectors/astra.md +121 -0
- package/.docs/reference/vectors/chroma.md +264 -0
- package/.docs/reference/vectors/convex.md +300 -0
- package/.docs/reference/vectors/couchbase.md +226 -0
- package/.docs/reference/vectors/duckdb.md +318 -0
- package/.docs/reference/vectors/elasticsearch.md +189 -0
- package/.docs/reference/vectors/lance.md +220 -0
- package/.docs/reference/vectors/libsql.md +305 -0
- package/.docs/reference/vectors/mongodb.md +295 -0
- package/.docs/reference/vectors/opensearch.md +99 -0
- package/.docs/reference/vectors/pg.md +408 -0
- package/.docs/reference/vectors/pinecone.md +168 -0
- package/.docs/reference/vectors/qdrant.md +222 -0
- package/.docs/reference/vectors/s3vectors.md +277 -0
- package/.docs/reference/vectors/turbopuffer.md +157 -0
- package/.docs/reference/vectors/upstash.md +294 -0
- package/.docs/reference/vectors/vectorize.md +147 -0
- package/.docs/reference/voice/azure.md +148 -0
- package/.docs/reference/voice/cloudflare.md +83 -0
- package/.docs/reference/voice/composite-voice.md +121 -0
- package/.docs/reference/voice/deepgram.md +79 -0
- package/.docs/reference/voice/elevenlabs.md +98 -0
- package/.docs/reference/voice/google-gemini-live.md +378 -0
- package/.docs/reference/voice/google.md +228 -0
- package/.docs/reference/voice/mastra-voice.md +311 -0
- package/.docs/reference/voice/murf.md +122 -0
- package/.docs/reference/voice/openai-realtime.md +203 -0
- package/.docs/reference/voice/openai.md +88 -0
- package/.docs/reference/voice/playai.md +80 -0
- package/.docs/reference/voice/sarvam.md +126 -0
- package/.docs/reference/voice/speechify.md +75 -0
- package/.docs/reference/voice/voice.addInstructions.md +55 -0
- package/.docs/reference/voice/voice.addTools.md +67 -0
- package/.docs/reference/voice/voice.answer.md +54 -0
- package/.docs/reference/voice/voice.close.md +51 -0
- package/.docs/reference/voice/voice.connect.md +94 -0
- package/.docs/reference/voice/voice.events.md +37 -0
- package/.docs/reference/voice/voice.getSpeakers.md +129 -0
- package/.docs/reference/voice/voice.listen.md +164 -0
- package/.docs/reference/voice/voice.off.md +54 -0
- package/.docs/reference/voice/voice.on.md +111 -0
- package/.docs/reference/voice/voice.send.md +65 -0
- package/.docs/reference/voice/voice.speak.md +157 -0
- package/.docs/reference/voice/voice.updateConfig.md +60 -0
- package/.docs/reference/workflows/run-methods/cancel.md +86 -0
- package/.docs/reference/workflows/run-methods/restart.md +33 -0
- package/.docs/reference/workflows/run-methods/resume.md +59 -0
- package/.docs/reference/workflows/run-methods/start.md +58 -0
- package/.docs/reference/workflows/run-methods/startAsync.md +67 -0
- package/.docs/reference/workflows/run-methods/timeTravel.md +142 -0
- package/.docs/reference/workflows/run.md +59 -0
- package/.docs/reference/workflows/step.md +119 -0
- package/.docs/reference/workflows/workflow-methods/branch.md +25 -0
- package/.docs/reference/workflows/workflow-methods/commit.md +17 -0
- package/.docs/reference/workflows/workflow-methods/create-run.md +63 -0
- package/.docs/reference/workflows/workflow-methods/dountil.md +25 -0
- package/.docs/reference/workflows/workflow-methods/dowhile.md +25 -0
- package/.docs/reference/workflows/workflow-methods/foreach.md +118 -0
- package/.docs/reference/workflows/workflow-methods/map.md +93 -0
- package/.docs/reference/workflows/workflow-methods/parallel.md +21 -0
- package/.docs/reference/workflows/workflow-methods/sleep.md +35 -0
- package/.docs/reference/workflows/workflow-methods/sleepUntil.md +35 -0
- package/.docs/reference/workflows/workflow-methods/then.md +21 -0
- package/.docs/reference/workflows/workflow.md +157 -0
- package/.docs/reference/workspace/e2b-sandbox.md +289 -0
- package/.docs/reference/workspace/filesystem.md +255 -0
- package/.docs/reference/workspace/gcs-filesystem.md +174 -0
- package/.docs/reference/workspace/local-filesystem.md +343 -0
- package/.docs/reference/workspace/local-sandbox.md +301 -0
- package/.docs/reference/workspace/s3-filesystem.md +175 -0
- package/.docs/reference/workspace/sandbox.md +87 -0
- package/.docs/reference/workspace/workspace-class.md +244 -0
- package/CHANGELOG.md +8 -0
- package/package.json +5 -5
|
@@ -0,0 +1,476 @@
|
|
|
1
|
+
# OpenTelemetry Exporter
|
|
2
|
+
|
|
3
|
+
The OpenTelemetry (OTEL) exporter sends your traces to any OTEL-compatible observability platform using standardized [OpenTelemetry Semantic Conventions for GenAI](https://opentelemetry.io/docs/specs/semconv/gen-ai/). This ensures broad compatibility with platforms like Datadog, New Relic, SigNoz, MLflow, Dash0, Traceloop, Laminar, and more.
|
|
4
|
+
|
|
5
|
+
> **Looking for bidirectional OTEL integration?:** If you have existing OpenTelemetry instrumentation and want Mastra traces to inherit context from active OTEL spans, see the [OpenTelemetry Bridge](https://mastra.ai/docs/observability/tracing/bridges/otel) instead.
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
Each provider requires specific protocol packages. Install the base exporter plus the protocol package for your provider:
|
|
10
|
+
|
|
11
|
+
### For HTTP/Protobuf Providers (SigNoz, New Relic, Laminar, MLflow)
|
|
12
|
+
|
|
13
|
+
**npm**:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-proto
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**pnpm**:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
pnpm add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-proto
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**Yarn**:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
yarn add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-proto
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Bun**:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
bun add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-proto
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### For gRPC Providers (Dash0, Datadog)
|
|
38
|
+
|
|
39
|
+
**npm**:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
npm install @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-grpc @grpc/grpc-js
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**pnpm**:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
pnpm add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-grpc @grpc/grpc-js
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Yarn**:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
yarn add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-grpc @grpc/grpc-js
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**Bun**:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
bun add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-grpc @grpc/grpc-js
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### For HTTP/JSON Providers (Traceloop)
|
|
64
|
+
|
|
65
|
+
**npm**:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
npm install @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-http
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**pnpm**:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
pnpm add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-http
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**Yarn**:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
yarn add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-http
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**Bun**:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
bun add @mastra/otel-exporter@latest @opentelemetry/exporter-trace-otlp-http
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Environment Variables
|
|
90
|
+
|
|
91
|
+
All providers support zero-config setup via environment variables. Set the appropriate variables and the exporter will automatically use them:
|
|
92
|
+
|
|
93
|
+
| Provider | Environment Variables |
|
|
94
|
+
| --------- | ------------------------------------------------------------------------------------------- |
|
|
95
|
+
| Dash0 | `DASH0_API_KEY` (required), `DASH0_ENDPOINT` (required), `DASH0_DATASET` (optional) |
|
|
96
|
+
| SigNoz | `SIGNOZ_API_KEY` (required), `SIGNOZ_REGION` (optional), `SIGNOZ_ENDPOINT` (optional) |
|
|
97
|
+
| New Relic | `NEW_RELIC_LICENSE_KEY` (required), `NEW_RELIC_ENDPOINT` (optional) |
|
|
98
|
+
| Traceloop | `TRACELOOP_API_KEY` (required), `TRACELOOP_DESTINATION_ID`, `TRACELOOP_ENDPOINT` (optional) |
|
|
99
|
+
| Laminar | `LMNR_PROJECT_API_KEY` (required), `LAMINAR_ENDPOINT` (optional) |
|
|
100
|
+
|
|
101
|
+
## Provider Configurations
|
|
102
|
+
|
|
103
|
+
### MLflow
|
|
104
|
+
|
|
105
|
+
[MLflow](https://mlflow.org/docs/latest/genai/tracing/integrations/listing/mastra) supports native Mastra tracing through its OTLP endpoint at `/v1/traces`. Use the `custom` provider with HTTP/Protobuf and include the experiment header so traces land in the correct MLflow experiment:
|
|
106
|
+
|
|
107
|
+
```typescript
|
|
108
|
+
new OtelExporter({
|
|
109
|
+
provider: {
|
|
110
|
+
custom: {
|
|
111
|
+
endpoint: `${process.env.MLFLOW_TRACKING_URI}/v1/traces`,
|
|
112
|
+
protocol: 'http/protobuf',
|
|
113
|
+
headers: {
|
|
114
|
+
'x-mlflow-experiment-id': process.env.MLFLOW_EXPERIMENT_ID,
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
})
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Dash0
|
|
122
|
+
|
|
123
|
+
[Dash0](https://www.dash0.com/) provides real-time observability with automatic insights.
|
|
124
|
+
|
|
125
|
+
#### Zero-Config Setup
|
|
126
|
+
|
|
127
|
+
Set environment variables and use the exporter with an empty config:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# Required
|
|
131
|
+
DASH0_API_KEY=your-api-key
|
|
132
|
+
DASH0_ENDPOINT=ingress.us-west-2.aws.dash0.com:4317
|
|
133
|
+
|
|
134
|
+
# Optional
|
|
135
|
+
DASH0_DATASET=production
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
```typescript
|
|
139
|
+
import { Mastra } from '@mastra/core'
|
|
140
|
+
import { Observability } from '@mastra/observability'
|
|
141
|
+
import { OtelExporter } from '@mastra/otel-exporter'
|
|
142
|
+
|
|
143
|
+
export const mastra = new Mastra({
|
|
144
|
+
observability: new Observability({
|
|
145
|
+
configs: {
|
|
146
|
+
otel: {
|
|
147
|
+
serviceName: 'my-service',
|
|
148
|
+
exporters: [new OtelExporter({ provider: { dash0: {} } })],
|
|
149
|
+
},
|
|
150
|
+
},
|
|
151
|
+
}),
|
|
152
|
+
})
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
#### Explicit Configuration
|
|
156
|
+
|
|
157
|
+
```typescript
|
|
158
|
+
import { Mastra } from '@mastra/core'
|
|
159
|
+
import { Observability } from '@mastra/observability'
|
|
160
|
+
import { OtelExporter } from '@mastra/otel-exporter'
|
|
161
|
+
|
|
162
|
+
export const mastra = new Mastra({
|
|
163
|
+
observability: new Observability({
|
|
164
|
+
configs: {
|
|
165
|
+
otel: {
|
|
166
|
+
serviceName: 'my-service',
|
|
167
|
+
exporters: [
|
|
168
|
+
new OtelExporter({
|
|
169
|
+
provider: {
|
|
170
|
+
dash0: {
|
|
171
|
+
apiKey: process.env.DASH0_API_KEY,
|
|
172
|
+
endpoint: process.env.DASH0_ENDPOINT, // e.g., 'ingress.us-west-2.aws.dash0.com:4317'
|
|
173
|
+
dataset: 'production', // Optional dataset name
|
|
174
|
+
},
|
|
175
|
+
},
|
|
176
|
+
resourceAttributes: {
|
|
177
|
+
// Optional OpenTelemetry Resource Attributes for the trace
|
|
178
|
+
['deployment.environment']: 'dev',
|
|
179
|
+
},
|
|
180
|
+
}),
|
|
181
|
+
],
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
}),
|
|
185
|
+
})
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
> **Info:** Get your Dash0 endpoint from your dashboard. It should be in the format `ingress.{region}.aws.dash0.com:4317`.
|
|
189
|
+
|
|
190
|
+
### SigNoz
|
|
191
|
+
|
|
192
|
+
[SigNoz](https://signoz.io/) is an open-source APM alternative with built-in Tracing support.
|
|
193
|
+
|
|
194
|
+
#### Zero-Config Setup
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
# Required
|
|
198
|
+
SIGNOZ_API_KEY=your-api-key
|
|
199
|
+
|
|
200
|
+
# Optional
|
|
201
|
+
SIGNOZ_REGION=us # 'us' | 'eu' | 'in'
|
|
202
|
+
SIGNOZ_ENDPOINT=https://my-signoz.example.com # For self-hosted
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
```typescript
|
|
206
|
+
new OtelExporter({ provider: { signoz: {} } })
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
#### Explicit Configuration
|
|
210
|
+
|
|
211
|
+
```typescript
|
|
212
|
+
new OtelExporter({
|
|
213
|
+
provider: {
|
|
214
|
+
signoz: {
|
|
215
|
+
apiKey: process.env.SIGNOZ_API_KEY,
|
|
216
|
+
region: 'us', // 'us' | 'eu' | 'in'
|
|
217
|
+
// endpoint: 'https://my-signoz.example.com', // For self-hosted
|
|
218
|
+
},
|
|
219
|
+
},
|
|
220
|
+
})
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### New Relic
|
|
224
|
+
|
|
225
|
+
[New Relic](https://newrelic.com/) provides comprehensive observability with AI monitoring capabilities.
|
|
226
|
+
|
|
227
|
+
#### Zero-Config Setup
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
# Required
|
|
231
|
+
NEW_RELIC_LICENSE_KEY=your-license-key
|
|
232
|
+
|
|
233
|
+
# Optional
|
|
234
|
+
NEW_RELIC_ENDPOINT=https://otlp.eu01.nr-data.net # For EU region
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
```typescript
|
|
238
|
+
new OtelExporter({ provider: { newrelic: {} } })
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
#### Explicit Configuration
|
|
242
|
+
|
|
243
|
+
```typescript
|
|
244
|
+
new OtelExporter({
|
|
245
|
+
provider: {
|
|
246
|
+
newrelic: {
|
|
247
|
+
apiKey: process.env.NEW_RELIC_LICENSE_KEY,
|
|
248
|
+
// endpoint: 'https://otlp.eu01.nr-data.net', // For EU region
|
|
249
|
+
},
|
|
250
|
+
},
|
|
251
|
+
})
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
### Traceloop
|
|
255
|
+
|
|
256
|
+
[Traceloop](https://www.traceloop.com/) specializes in LLM observability with automatic prompt tracking.
|
|
257
|
+
|
|
258
|
+
#### Zero-Config Setup
|
|
259
|
+
|
|
260
|
+
```bash
|
|
261
|
+
# Required
|
|
262
|
+
TRACELOOP_API_KEY=your-api-key
|
|
263
|
+
|
|
264
|
+
# Optional
|
|
265
|
+
TRACELOOP_DESTINATION_ID=my-destination
|
|
266
|
+
TRACELOOP_ENDPOINT=https://custom.traceloop.com
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
```typescript
|
|
270
|
+
new OtelExporter({ provider: { traceloop: {} } })
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
#### Explicit Configuration
|
|
274
|
+
|
|
275
|
+
```typescript
|
|
276
|
+
new OtelExporter({
|
|
277
|
+
provider: {
|
|
278
|
+
traceloop: {
|
|
279
|
+
apiKey: process.env.TRACELOOP_API_KEY,
|
|
280
|
+
destinationId: 'my-destination', // Optional
|
|
281
|
+
},
|
|
282
|
+
},
|
|
283
|
+
})
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
### Laminar
|
|
287
|
+
|
|
288
|
+
[Laminar](https://laminar.sh/) provides specialized LLM observability and analytics.
|
|
289
|
+
|
|
290
|
+
#### Zero-Config Setup
|
|
291
|
+
|
|
292
|
+
```bash
|
|
293
|
+
# Required
|
|
294
|
+
LMNR_PROJECT_API_KEY=your-api-key
|
|
295
|
+
|
|
296
|
+
# Optional
|
|
297
|
+
LAMINAR_ENDPOINT=https://api.lmnr.ai/v1/traces
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
```typescript
|
|
301
|
+
new OtelExporter({ provider: { laminar: {} } })
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
#### Explicit Configuration
|
|
305
|
+
|
|
306
|
+
```typescript
|
|
307
|
+
new OtelExporter({
|
|
308
|
+
provider: {
|
|
309
|
+
laminar: {
|
|
310
|
+
apiKey: process.env.LMNR_PROJECT_API_KEY,
|
|
311
|
+
},
|
|
312
|
+
},
|
|
313
|
+
})
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
> **Laminar-Native Exporter:** For Laminar-specific features like native span paths, metadata, and tags rendering in the Laminar dashboard, consider using the dedicated [`@mastra/laminar`](https://mastra.ai/docs/observability/tracing/exporters/laminar) exporter instead. It provides optimized integration with Laminar's platform.
|
|
317
|
+
|
|
318
|
+
### Datadog
|
|
319
|
+
|
|
320
|
+
[Datadog](https://www.datadoghq.com/) APM provides application performance monitoring with distributed tracing. To send traces to Datadog via OTLP, you need the Datadog Agent running with OTLP ingestion enabled.
|
|
321
|
+
|
|
322
|
+
Datadog uses gRPC for OTLP ingestion, which requires explicit imports and [bundler configuration](https://mastra.ai/reference/configuration) to work correctly:
|
|
323
|
+
|
|
324
|
+
```typescript
|
|
325
|
+
// Explicitly import gRPC dependencies for the bundler
|
|
326
|
+
import '@grpc/grpc-js'
|
|
327
|
+
import '@opentelemetry/exporter-trace-otlp-grpc'
|
|
328
|
+
import { Mastra } from '@mastra/core'
|
|
329
|
+
import { Observability } from '@mastra/observability'
|
|
330
|
+
import { OtelExporter, type ExportProtocol } from '@mastra/otel-exporter'
|
|
331
|
+
|
|
332
|
+
export const mastra = new Mastra({
|
|
333
|
+
// Add grpc-js to externals so it's handled at runtime
|
|
334
|
+
bundler: {
|
|
335
|
+
externals: ['@grpc/grpc-js'],
|
|
336
|
+
},
|
|
337
|
+
observability: new Observability({
|
|
338
|
+
configs: {
|
|
339
|
+
default: {
|
|
340
|
+
serviceName: 'my-service',
|
|
341
|
+
exporters: [
|
|
342
|
+
new OtelExporter({
|
|
343
|
+
provider: {
|
|
344
|
+
custom: {
|
|
345
|
+
endpoint: process.env.OTEL_EXPORTER_OTLP_ENDPOINT || 'http://localhost:4317',
|
|
346
|
+
protocol: (process.env.OTEL_EXPORTER_OTLP_PROTOCOL || 'grpc') as ExportProtocol,
|
|
347
|
+
headers: {},
|
|
348
|
+
},
|
|
349
|
+
},
|
|
350
|
+
}),
|
|
351
|
+
],
|
|
352
|
+
},
|
|
353
|
+
},
|
|
354
|
+
}),
|
|
355
|
+
})
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
> **Info:** The Datadog Agent must be configured with OTLP ingestion enabled. Add the following to your `datadog.yaml`:
|
|
359
|
+
>
|
|
360
|
+
> ```yaml
|
|
361
|
+
> otlp_config:
|
|
362
|
+
> receiver:
|
|
363
|
+
> protocols:
|
|
364
|
+
> grpc:
|
|
365
|
+
> endpoint: 0.0.0.0:4317
|
|
366
|
+
> ```
|
|
367
|
+
>
|
|
368
|
+
> The default OTLP endpoint is `http://localhost:4317` when running the Datadog Agent locally.
|
|
369
|
+
|
|
370
|
+
> **Warning:** The explicit imports of `@grpc/grpc-js` and `@opentelemetry/exporter-trace-otlp-grpc` at the top of the file, along with the [`bundler.externals`](https://mastra.ai/reference/configuration) configuration, are required for the gRPC transport to work correctly. Without these, you may encounter connection issues.
|
|
371
|
+
|
|
372
|
+
> **Datadog-Native Exporter:** For Datadog-specific features like automatic span type mapping, LLM span categorization, and simplified setup without gRPC configuration, consider using the dedicated [`@mastra/datadog`](https://mastra.ai/docs/observability/tracing/exporters/datadog) exporter instead. It provides optimized integration with Datadog's APM platform.
|
|
373
|
+
|
|
374
|
+
### Custom/Generic OTEL Endpoints
|
|
375
|
+
|
|
376
|
+
For other OTEL-compatible platforms or custom collectors:
|
|
377
|
+
|
|
378
|
+
```typescript
|
|
379
|
+
new OtelExporter({
|
|
380
|
+
provider: {
|
|
381
|
+
custom: {
|
|
382
|
+
endpoint: 'https://your-collector.example.com/v1/traces',
|
|
383
|
+
protocol: 'http/protobuf', // 'http/json' | 'http/protobuf' | 'grpc'
|
|
384
|
+
headers: {
|
|
385
|
+
'x-api-key': process.env.API_KEY,
|
|
386
|
+
},
|
|
387
|
+
},
|
|
388
|
+
},
|
|
389
|
+
})
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
## Configuration Options
|
|
393
|
+
|
|
394
|
+
### Complete Configuration
|
|
395
|
+
|
|
396
|
+
```typescript
|
|
397
|
+
new OtelExporter({
|
|
398
|
+
// Provider configuration (required)
|
|
399
|
+
provider: {
|
|
400
|
+
// Use one of: dash0, signoz, newrelic, traceloop, laminar, custom
|
|
401
|
+
},
|
|
402
|
+
|
|
403
|
+
// Export configuration
|
|
404
|
+
timeout: 30000, // Export timeout in milliseconds
|
|
405
|
+
batchSize: 100, // Number of spans per batch
|
|
406
|
+
|
|
407
|
+
// Debug options
|
|
408
|
+
logLevel: 'info', // 'debug' | 'info' | 'warn' | 'error'
|
|
409
|
+
})
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
## OpenTelemetry Semantic Conventions
|
|
413
|
+
|
|
414
|
+
The exporter follows [OpenTelemetry Semantic Conventions for GenAI v1.38.0](https://github.com/open-telemetry/semantic-conventions/tree/v1.38.0/docs/gen-ai), ensuring compatibility with observability platforms:
|
|
415
|
+
|
|
416
|
+
### Span Naming
|
|
417
|
+
|
|
418
|
+
- **LLM Operations**: `chat {model}`
|
|
419
|
+
- **Tool Execution**: `execute_tool {tool_name}`
|
|
420
|
+
- **Agent Runs**: `invoke_agent {agent_id}`
|
|
421
|
+
- **Workflow Runs**: `invoke_workflow {workflow_id}`
|
|
422
|
+
|
|
423
|
+
### Key Attributes
|
|
424
|
+
|
|
425
|
+
- `gen_ai.operation.name` - Operation type (chat, tool.execute, etc.)
|
|
426
|
+
- `gen_ai.provider.name` - AI provider (openai, anthropic, etc.)
|
|
427
|
+
- `gen_ai.request.model` - Model identifier
|
|
428
|
+
- `gen_ai.input.messages` - Chat history provided to the model
|
|
429
|
+
- `gen_ai.output.messages` - Messages returned by the model
|
|
430
|
+
- `gen_ai.usage.input_tokens` - Number of input tokens
|
|
431
|
+
- `gen_ai.usage.output_tokens` - Number of output tokens
|
|
432
|
+
- `gen_ai.request.temperature` - Sampling temperature
|
|
433
|
+
- `gen_ai.response.finish_reasons` - Completion reasons
|
|
434
|
+
|
|
435
|
+
## Protocol Selection Guide
|
|
436
|
+
|
|
437
|
+
Choose the right protocol package based on your provider:
|
|
438
|
+
|
|
439
|
+
| Provider | Protocol | Required Package |
|
|
440
|
+
| --------- | ------------- | ------------------------------------------ |
|
|
441
|
+
| Dash0 | gRPC | `@opentelemetry/exporter-trace-otlp-grpc` |
|
|
442
|
+
| Datadog | gRPC | `@opentelemetry/exporter-trace-otlp-grpc` |
|
|
443
|
+
| SigNoz | HTTP/Protobuf | `@opentelemetry/exporter-trace-otlp-proto` |
|
|
444
|
+
| New Relic | HTTP/Protobuf | `@opentelemetry/exporter-trace-otlp-proto` |
|
|
445
|
+
| Traceloop | HTTP/JSON | `@opentelemetry/exporter-trace-otlp-http` |
|
|
446
|
+
| Laminar | HTTP/Protobuf | `@opentelemetry/exporter-trace-otlp-proto` |
|
|
447
|
+
| Custom | Varies | Depends on your collector |
|
|
448
|
+
|
|
449
|
+
> **Warning:** Make sure to install the correct protocol package for your provider. The exporter will provide a helpful error message if the wrong package is installed.
|
|
450
|
+
|
|
451
|
+
## Troubleshooting
|
|
452
|
+
|
|
453
|
+
### Missing Dependency Error
|
|
454
|
+
|
|
455
|
+
If you see an error like:
|
|
456
|
+
|
|
457
|
+
```text
|
|
458
|
+
HTTP/Protobuf exporter is not installed (required for signoz).
|
|
459
|
+
To use HTTP/Protobuf export, install the required package:
|
|
460
|
+
npm install @opentelemetry/exporter-trace-otlp-proto
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
Install the suggested package for your provider.
|
|
464
|
+
|
|
465
|
+
### Common Issues
|
|
466
|
+
|
|
467
|
+
1. **Wrong protocol package**: Verify you installed the correct exporter for your provider
|
|
468
|
+
2. **Invalid endpoint**: Check endpoint format matches provider requirements
|
|
469
|
+
3. **Authentication failures**: Verify API keys and headers are correct
|
|
470
|
+
|
|
471
|
+
## Related
|
|
472
|
+
|
|
473
|
+
- [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
|
|
474
|
+
- [OpenTelemetry Bridge](https://mastra.ai/docs/observability/tracing/bridges/otel)
|
|
475
|
+
- [OpenTelemetry Semantic Conventions for GenAI v1.38.0](https://github.com/open-telemetry/semantic-conventions/tree/v1.38.0/docs/gen-ai)
|
|
476
|
+
- [OTEL Exporter Reference](https://mastra.ai/reference/observability/tracing/exporters/otel)
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# PostHog Exporter
|
|
2
|
+
|
|
3
|
+
[PostHog](https://posthog.com/) is an analytics platform with AI observability features for monitoring LLM applications. The PostHog exporter sends your traces to PostHog as structured events, providing insights into token usage, costs, latency, and conversation flows.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
**npm**:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install @mastra/posthog@latest
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
**pnpm**:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
pnpm add @mastra/posthog@latest
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
**Yarn**:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
yarn add @mastra/posthog@latest
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**Bun**:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
bun add @mastra/posthog@latest
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Configuration
|
|
32
|
+
|
|
33
|
+
### Prerequisites
|
|
34
|
+
|
|
35
|
+
1. **PostHog Account**: Sign up at [posthog.com](https://posthog.com/)
|
|
36
|
+
2. **Project API Key**: Get your project API key from PostHog Settings → Project API Key
|
|
37
|
+
3. **Environment Variables**: Set your credentials
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Required
|
|
41
|
+
POSTHOG_API_KEY=phc_xxxxxxxxxxxxxxxx
|
|
42
|
+
|
|
43
|
+
# Optional
|
|
44
|
+
POSTHOG_HOST=https://us.i.posthog.com # or eu.i.posthog.com for EU region
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Zero-Config Setup
|
|
48
|
+
|
|
49
|
+
With environment variables set, use the exporter with no configuration:
|
|
50
|
+
|
|
51
|
+
```typescript
|
|
52
|
+
import { Mastra } from '@mastra/core'
|
|
53
|
+
import { Observability } from '@mastra/observability'
|
|
54
|
+
import { PosthogExporter } from '@mastra/posthog'
|
|
55
|
+
|
|
56
|
+
export const mastra = new Mastra({
|
|
57
|
+
observability: new Observability({
|
|
58
|
+
configs: {
|
|
59
|
+
posthog: {
|
|
60
|
+
serviceName: 'my-service',
|
|
61
|
+
exporters: [new PosthogExporter()],
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
}),
|
|
65
|
+
})
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Explicit Configuration
|
|
69
|
+
|
|
70
|
+
You can also pass credentials directly (takes precedence over environment variables):
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
import { Mastra } from '@mastra/core'
|
|
74
|
+
import { Observability } from '@mastra/observability'
|
|
75
|
+
import { PosthogExporter } from '@mastra/posthog'
|
|
76
|
+
|
|
77
|
+
export const mastra = new Mastra({
|
|
78
|
+
observability: new Observability({
|
|
79
|
+
configs: {
|
|
80
|
+
posthog: {
|
|
81
|
+
serviceName: 'my-service',
|
|
82
|
+
exporters: [
|
|
83
|
+
new PosthogExporter({
|
|
84
|
+
apiKey: process.env.POSTHOG_API_KEY,
|
|
85
|
+
}),
|
|
86
|
+
],
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
}),
|
|
90
|
+
})
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## Configuration Options
|
|
94
|
+
|
|
95
|
+
### Complete Configuration
|
|
96
|
+
|
|
97
|
+
```typescript
|
|
98
|
+
new PosthogExporter({
|
|
99
|
+
// Required credentials
|
|
100
|
+
apiKey: process.env.POSTHOG_API_KEY!,
|
|
101
|
+
|
|
102
|
+
// Optional settings
|
|
103
|
+
host: 'https://us.i.posthog.com', // Default: US region
|
|
104
|
+
// or "https://eu.i.posthog.com" for EU region
|
|
105
|
+
// or your self-hosted URL
|
|
106
|
+
|
|
107
|
+
// Batching configuration
|
|
108
|
+
flushAt: 20, // Batch size (default: 20)
|
|
109
|
+
flushInterval: 10000, // Flush interval in ms (default: 10000)
|
|
110
|
+
serverless: false, // Serverless mode: flushAt=10, flushInterval=2000
|
|
111
|
+
|
|
112
|
+
// User identification
|
|
113
|
+
defaultDistinctId: 'anonymous', // Fallback if no userId in metadata
|
|
114
|
+
|
|
115
|
+
// Privacy settings
|
|
116
|
+
enablePrivacyMode: false, // Excludes input/output from generation events
|
|
117
|
+
|
|
118
|
+
// Diagnostic logging
|
|
119
|
+
logLevel: 'info', // debug | info | warn | error
|
|
120
|
+
})
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Serverless Mode
|
|
124
|
+
|
|
125
|
+
Optimized batching for serverless environments:
|
|
126
|
+
|
|
127
|
+
```typescript
|
|
128
|
+
new PosthogExporter({
|
|
129
|
+
apiKey: process.env.POSTHOG_API_KEY!,
|
|
130
|
+
serverless: true, // Configures smaller batches for faster flushing
|
|
131
|
+
})
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Privacy Mode
|
|
135
|
+
|
|
136
|
+
Exclude input/output data from generation events while preserving token metrics:
|
|
137
|
+
|
|
138
|
+
```typescript
|
|
139
|
+
new PosthogExporter({
|
|
140
|
+
apiKey: process.env.POSTHOG_API_KEY!,
|
|
141
|
+
enablePrivacyMode: true, // Removes $ai_input and $ai_output_choices
|
|
142
|
+
})
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## Related
|
|
146
|
+
|
|
147
|
+
- [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
|
|
148
|
+
- [PostHog Documentation](https://posthog.com/docs)
|