This file contains the Datadog Agent configuration.The configuration shown below assumes you want all Datadog features covered in this guide (logging, traces, and custom metrics).
site: <your-datadog-site> # e.g. us5.datadoghq.comhostname: pipecat.daily.co # (or whatever would be useful for you to see in the Datadog dashboards)# Include the following line only if you need logging (see "Enabling Logging")logs_enabled: true# Uncomment the below lines if you DON'T need traces (see "Enabling Traces")# apm_config:# enabled: false# Uncomment the below lines if you DON'T need custom metrics (see "Enabling Custom Metrics")# use_dogstatsd: falsekubelet_tls_verify: falseautoconfig_exclude_features: - kubernetes - orchestratorexplorer
This script runs before the agent launcher runs.The file shown below assumes you want all Datadog features covered in this guide (logging, traces, and custom metrics).
#!/bin/bash# Write the Datadog API key to the config fileecho "api_key: $DD_API_KEY" >> /etc/datadog-agent/datadog.yaml# Start the Datadog Agent serviceservice datadog-agent start || true# Include the below line only if you need traces (see "Enabling Traces")# HACK: here we restart the Datadog Trace Agent specifically, since we know it failed to start aboveservice datadog-agent-trace restart || true## DEBUGGING# Check the status of the Datadog Agent subsystems for logging, custom metrics, and traces# service datadog-agent status# service datadog-agent-trace status# datadog-agent status# Display the Datadog agent log# cat /var/log/datadog/agent.log
You may see Starting Datadog Agent: datadog-agent failed! in your logs,
triggered by service datadog-agent start. You can safely ignore this! As
long as service datadog-agent status and service datadog-agent-trace status indicate that both of those services end up running, then we should
have no trouble sending logs, traces, and custom metrics to Datadog.
The snippet shown below assumes you want all Datadog features covered in this guide (logging, traces, and custom metrics).
# Install the Datadog Agent# (note that you can literally use "dummy"—or anything else—as the API key)RUN apt-get -y update; apt-get -y install curlRUN DD_API_KEY=dummy \ DD_INSTALL_ONLY=true \ bash -c "$(curl -L https://install.datadoghq.com/scripts/install_script_agent7.sh)"# Configure Datadog AgentCOPY ./datadog.yaml /etc/datadog-agent# Include the below line if you need logging (see "Enabling Logging")COPY ./python.d /etc/datadog-agent/conf.d/python.d# Include the below lines only if you need traces or custom metrics (see "Enabling Traces" or "Enabling Custom Metrics")# Prepare file system for the Datadog Agent to use for Unix SocketsRUN mkdir -p /var/run/datadog/RUN chown dd-agent:dd-agent /var/run/datadog/# Start Datadog Agent (move pre-app script to expected place where it'll be invoked by Pipecat Cloud base image)COPY --chmod=755 ./pre-app.sh /app/
# Use whatever agent name would be useful for you to see in the Datadog dashboardlogs: - type: file path: /var/log/<my-agent-name>/datadog.log service: <my-agent-name> source: python sourcecategory: sourcecode
from datadog import statsddef my_function_call(): statsd.increment("myagent.my_function_call")
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Pipecat","description":"Documentation for Pipecat, the open source ecosystem for building real-time voice and multimodal AI agents: the Python framework, client SDKs, Pipecat Flows, and Pipecat Cloud hosting.","colors":{"primary":"#4f46e5","light":"#a5b4fc","dark":"#312e81"},"logo":{"light":"https://mintcdn.com/daily/r4jEtY4thtHXjZ16/logo/light.svg?fit=max\u0026auto=format\u0026n=r4jEtY4thtHXjZ16\u0026q=85\u0026s=46cda5b2f0afabd5f0298c64082c4125","dark":"https://mintcdn.com/daily/r4jEtY4thtHXjZ16/logo/dark.svg?fit=max\u0026auto=format\u0026n=r4jEtY4thtHXjZ16\u0026q=85\u0026s=f018b960ba26051755803a128139431b"},"favicon":"https://mintcdn.com/daily/r4jEtY4thtHXjZ16/favicon.svg?fit=max\u0026auto=format\u0026n=r4jEtY4thtHXjZ16\u0026q=85\u0026s=b1e0fb1fa81bb48e6f1e7af1f51fc916","navbar":{"links":[{"href":"https://discord.gg/pipecat","label":"Join the Discord"},{"icon":"github","href":"https://github.com/pipecat-ai/pipecat","label":"Github"}]},"footer":{"socials":{"x":"https://x.com/pipecat_ai","github":"https://github.com/pipecat-ai/pipecat","discord":"https://discord.gg/pipecat"}},"seo":{"metatags":{"og:site_name":"Pipecat","og:locale":"en_US","og:logo":"/logo/pipecat-logo.svg","article:publisher":"Pipecat AI","twitter:site":"@pipecat_ai","og:image:width":"1200","og:image:height":"630"},"indexing":"navigable"},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"cookies":{"key":"daily_analytics_consent","value":"granted"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"thumbnails":{"fonts":{"family":"Geist"}},"navigation":{"global":{"anchors":[{"anchor":"Pipecat Events","icon":"calendar","href":"https://pipecat.ai/events"},{"anchor":"Community","icon":"discord","href":"https://discord.gg/pipecat"},{"anchor":"GitHub","icon":"github","href":"https://github.com/pipecat-ai/pipecat"},{"anchor":"Changelog","icon":"file","href":"https://github.com/pipecat-ai/pipecat/blob/main/CHANGELOG.md"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"daily","hasAudioNarration":false,"actualSubdomain":"daily","customDomains":["docs.pipecat.ai"],"gitSource":{"type":"github","owner":"pipecat-ai","repo":"docs","deployBranch":"production","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae62a99f07e7eef79d4f5c2","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"default","tag":"API Reference","count":397},{"language":"default","tag":"Pipecat Server","count":307},{"language":"default","tag":"Services","count":216},{"language":"default","tag":"Pipecat","count":92},{"language":"default","tag":"Text-to-Speech","count":60},{"language":"default","tag":"Pipecat Cloud \u0026 Enterprise","count":54},{"language":"default","tag":"Utilities","count":45},{"language":"default","tag":"Speech-to-Text","count":39},{"language":"default","tag":"Client SDKs","count":34},{"language":"default","tag":"LLM","count":32}]},"assistantConfig":{"enableAskAiButton":true,"enableAskAiSearchBar":false},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".compatibility-table table,.compatibility-table th,.compatibility-table td{border:1px solid #ddd;padding:10px}.compatibility-table{width:90%;table-layout:fixed}.compatibility-table tr{width:100%}.compatibility-table th:first-child,.compatibility-table td:first-child{text-align:left;width:100%}.compatibility-table th{writing-mode:sideways-lr;text-align:left}.compatibility-table td{text-align:center;font-weight:bold}.compatibility-table .supported{color:#107714}.compatibility-table .unsupported{color:#de1126}"}],"page":{"pagePath":"pipecat-cloud/guides/using-datadog","slug":"/pipecat-cloud/guides/using-datadog","pageMetadata":{"title":"Datadog with Pipecat Cloud","sidebarTitle":"Using Datadog","description":"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.","href":"/pipecat-cloud/guides/using-datadog"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`This guide explains how to use `,_jsx(_components.a,{href:`https://www.datadoghq.com/`,children:`Datadog`}),` with your Pipecat Cloud agents for logging, traces, and custom metrics.`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`This guide is a work in progress and may have some sharp edges. However, it\nhas been vetted for basic usage.`})}),`\n`,_jsx(Heading,{level:`2`,id:`prerequisites`,children:`Prerequisites`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Have a Datadog account and API key.`}),`\n`,_jsxs(_components.li,{children:[`Use at least version `,_jsx(_components.code,{children:`0.0.7`}),` of the Pipecat Cloud base image:`]}),`\n`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`docker`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`docker`,children:_jsxs(_components.code,{language:`docker`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# dailyco/pipecat-base:latest should also work`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`FROM`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` dailyco/pipecat-base:0.0.7`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`add-datadog-api-key-as-a-secret`,children:`Add Datadog API key as a secret`}),`\n`,_jsxs(_components.p,{children:[`If you’re using keeping your secrets in an `,_jsx(_components.code,{children:`.env`}),` file `,_jsx(_components.a,{href:`/pipecat-cloud/fundamentals/secrets`,children:`as recommended`}),`, add your Datadog API key to that file:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`DD_API_KEY`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=\u003c`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`your-datadog-api-key`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Then update your secret set from that file:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`pipecat`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` cloud`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` secrets`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` set`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u003c`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`your-agent-secret`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`s`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --file`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` .env`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`See `,_jsx(_components.a,{href:`/pipecat-cloud/fundamentals/secrets`,children:`Secrets`}),` for more details.`]}),`\n`,_jsxs(Heading,{level:`2`,id:`create-datadog-yaml`,children:[`Create `,_jsx(_components.code,{children:`datadog.yaml`})]}),`\n`,_jsx(_components.p,{children:`This file contains the Datadog Agent configuration.`}),`\n`,_jsx(_components.p,{children:`The configuration shown below assumes you want all Datadog features covered in this guide (logging, traces, and custom metrics).`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`17`,language:`yaml`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`17`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`site`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\u003cyour-datadog-site>`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # e.g. us5.datadoghq.com`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`hostname`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`pipecat.daily.co`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # (or whatever would be useful for you to see in the Datadog dashboards)`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Include the following line only if you need logging (see \"Enabling Logging\")`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`logs_enabled`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Uncomment the below lines if you DON'T need traces (see \"Enabling Traces\")`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# apm_config:`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# enabled: false`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Uncomment the below lines if you DON'T need custom metrics (see \"Enabling Custom Metrics\")`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# use_dogstatsd: false`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`kubelet_tls_verify`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`autoconfig_exclude_features`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`kubernetes`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`orchestratorexplorer`})]}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`2`,id:`create-pre-app-sh`,children:[`Create `,_jsx(_components.code,{children:`pre-app.sh`})]}),`\n`,_jsx(_components.p,{children:`This script runs before the agent launcher runs.`}),`\n`,_jsx(_components.p,{children:`The file shown below assumes you want all Datadog features covered in this guide (logging, traces, and custom metrics).`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`21`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`21`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`#!/bin/bash`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Write the Datadog API key to the config file`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`echo`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"api_key: `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$DD_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` >>`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` /etc/datadog-agent/datadog.yaml`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Start the Datadog Agent service`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`service`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` datadog-agent`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` start`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ||`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` true`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Include the below line only if you need traces (see \"Enabling Traces\")`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# HACK: here we restart the Datadog Trace Agent specifically, since we know it failed to start above`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`service`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` datadog-agent-trace`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` restart`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ||`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` true`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`## DEBUGGING`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Check the status of the Datadog Agent subsystems for logging, custom metrics, and traces`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# service datadog-agent status`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# service datadog-agent-trace status`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# datadog-agent status`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Display the Datadog agent log`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# cat /var/log/datadog/agent.log`})}),`\n`]})})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`You may see `,_jsx(_components.code,{children:`Starting Datadog Agent: datadog-agent failed!`}),` in your logs,\ntriggered by `,_jsx(_components.code,{children:`service datadog-agent start`}),`. You can safely ignore this! As\nlong as `,_jsx(_components.code,{children:`service datadog-agent status`}),` and `,_jsx(_components.code,{children:`service datadog-agent-trace status`}),` indicate that both of those services end up running, then we should\nhave no trouble sending logs, traces, and custom metrics to Datadog.`]})}),`\n`,_jsxs(Heading,{level:`2`,id:`update-dockerfile-with-the-datadog-agent`,children:[`Update `,_jsx(_components.code,{children:`Dockerfile`}),` with the Datadog Agent`]}),`\n`,_jsx(_components.p,{children:`The snippet shown below assumes you want all Datadog features covered in this guide (logging, traces, and custom metrics).`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`19`,language:`docker`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`docker`,children:_jsxs(_components.code,{language:`docker`,numberOfLines:`19`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Install the Datadog Agent`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# (note that you can literally use \"dummy\"—or anything else—as the API key)`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` apt-get -y update; apt-get -y install curl`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` DD_API_KEY=dummy \\\\`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` DD_INSTALL_ONLY=true \\\\`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` bash -c `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"$(curl -L https://install.datadoghq.com/scripts/install_script_agent7.sh)\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Configure Datadog Agent`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`COPY`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ./datadog.yaml /etc/datadog-agent`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Include the below line if you need logging (see \"Enabling Logging\")`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`COPY`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ./python.d /etc/datadog-agent/conf.d/python.d`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Include the below lines only if you need traces or custom metrics (see \"Enabling Traces\" or \"Enabling Custom Metrics\")`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Prepare file system for the Datadog Agent to use for Unix Sockets`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` mkdir -p /var/run/datadog/`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` chown dd-agent:dd-agent /var/run/datadog/`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Start Datadog Agent (move pre-app script to expected place where it'll be invoked by Pipecat Cloud base image)`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`COPY`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` --chmod=755 ./pre-app.sh /app/`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`enabling-logging`,children:`Enabling logging`}),`\n`,_jsxs(Heading,{level:`3`,id:`enable-logging-in-datadog-yaml`,children:[`Enable logging in `,_jsx(_components.code,{children:`datadog.yaml`})]}),`\n`,_jsxs(_components.p,{children:[`Ensure the following is present in your `,_jsx(_components.a,{href:`#create-datadog-yaml`,children:_jsx(_components.code,{children:`datadog.yaml`})}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`yaml`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`logs_enabled`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`create-python-d/conf-yaml`,children:[`Create `,_jsx(_components.code,{children:`python.d/conf.yaml`})]}),`\n`,_jsx(_components.p,{children:`Configure log collection for your agent:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`yaml`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Use whatever agent name would be useful for you to see in the Datadog dashboard`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`logs`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`type`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`file`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` path`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`/var/log/\u003cmy-agent-name>/datadog.log`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` service`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\u003cmy-agent-name>`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` source`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`python`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` sourcecategory`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`sourcecode`})]}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`update-dockerfile-for-logging`,children:[`Update `,_jsx(_components.code,{children:`Dockerfile`}),` for logging`]}),`\n`,_jsxs(_components.p,{children:[`Ensure the following is present in your `,_jsx(_components.a,{href:`#update-dockerfile-with-the-datadog-agent`,children:_jsx(_components.code,{children:`Dockerfile`})}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`docker`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`docker`,children:_jsxs(_components.code,{language:`docker`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`COPY`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ./python.d /etc/datadog-agent/conf.d/python.d`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`This configures the Datadog Agent to collect logs from your agent.`}),`\n`,_jsxs(Heading,{level:`3`,id:`configure-logger-in-bot-py`,children:[`Configure `,_jsx(_components.code,{children:`logger`}),` in `,_jsx(_components.code,{children:`bot.py`})]}),`\n`,_jsx(_components.p,{children:`Add a Datadog sink to your logger.`}),`\n`,_jsx(_components.p,{children:`This sink will write log lines into a file that your Datadog Agent will read from, in a Datadog-friendly format.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`31`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`31`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` json`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Format log lines so that:`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# - Datadog can parse and display log levels, messages, and timestamps`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# - You can search Datadog logs by session_id`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` datadog_format`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`record`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`):`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` format_string_safe_message `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` json.dumps(record[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]).replace(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"{\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{{`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`).replace(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"}\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` session_id `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` record[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"extra\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`].get(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"session_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:` return`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{{`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '\"timestamp\":\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{time:YYYY-MM-DD HH:mm:ss.SSS}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\",'`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '\"levelname\":\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{level}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\",'`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '\"name\":\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{name}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\",'`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '\"function\":\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{function}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\",'`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '\"line\":`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{line}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`,'`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'\"message\":`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`format_string_safe_message`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`,'`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'\"session_id\": \"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`session_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"'`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}}`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:`\\\\n`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`async`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` bot`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`args`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: DailySessionArguments):`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # Add Datadog-specific sink`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` logger.add(`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"/var/log/\u003cmy-agent-name>/datadog.log\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Use same path as in python.d/conf.yaml`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` rotation`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"10 MB\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` retention`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"7 days\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` format`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`datadog_format,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` )`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # ...`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`enabling-traces`,children:`Enabling traces`}),`\n`,_jsxs(Heading,{level:`3`,id:`enable-traces-in-datadog-yaml`,children:[`Enable traces in `,_jsx(_components.code,{children:`datadog.yaml`})]}),`\n`,_jsxs(_components.p,{children:[`Ensure `,_jsx(_components.code,{children:`apm_config.enabled`}),` is NOT set to `,_jsx(_components.code,{children:`false`}),` in your `,_jsx(_components.a,{href:`#create-datadog-yaml`,children:_jsx(_components.code,{children:`datadog.yaml`})}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`yaml`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# DELETE or COMMENT OUT the following lines, if they're present`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# apm_config:`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# enabled: false`})}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`start-the-datadog-trace-agent-in-pre-app-sh`,children:[`Start the Datadog Trace Agent in `,_jsx(_components.code,{children:`pre-app.sh`})]}),`\n`,_jsxs(_components.p,{children:[`Ensure the following is present in your `,_jsx(_components.a,{href:`#create-pre-app-sh`,children:_jsx(_components.code,{children:`pre-app.sh`})}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`service`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` datadog-agent-trace`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` restart`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ||`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:` true`})]}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`prepare-file-system-in-dockerfile`,children:[`Prepare file system in `,_jsx(_components.code,{children:`Dockerfile`})]}),`\n`,_jsxs(_components.p,{children:[`Ensure the following is present in your `,_jsx(_components.a,{href:`#update-dockerfile-with-the-datadog-agent`,children:_jsx(_components.code,{children:`Dockerfile`})}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`docker`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`docker`,children:_jsxs(_components.code,{language:`docker`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` mkdir -p /var/run/datadog/`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` chown dd-agent:dd-agent /var/run/datadog/`})]}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`add-ddtrace-python-library`,children:[`Add `,_jsx(_components.code,{children:`ddtrace`}),` Python library`]}),`\n`,_jsxs(_components.p,{children:[`In your `,_jsx(_components.code,{children:`requirements.txt`}),`:`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`ddtrace`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`record-traces-in-bot-py`,children:[`Record traces in `,_jsx(_components.code,{children:`bot.py`})]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`5`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ddtrace `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` tracer`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`@tracer.wrap`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`()`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` my_function_call`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`():`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # ...`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`enabling-custom-metrics`,children:`Enabling custom metrics`}),`\n`,_jsxs(Heading,{level:`3`,id:`enable-custom-metrics-in-datadog-yaml`,children:[`Enable custom metrics in `,_jsx(_components.code,{children:`datadog.yaml`})]}),`\n`,_jsxs(_components.p,{children:[`Ensure `,_jsx(_components.code,{children:`use_dogstatsd`}),` is NOT set to `,_jsx(_components.code,{children:`false`}),` in your `,_jsx(_components.a,{href:`#create-datadog-yaml`,children:_jsx(_components.code,{children:`datadog.yaml`})}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`yaml`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# DELETE or COMMENT OUT the following line, if it's present`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# use_dogstatsd: false`})}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`prepare-file-system-in-dockerfile-2`,children:[`Prepare file system in `,_jsx(_components.code,{children:`Dockerfile`})]}),`\n`,_jsxs(_components.p,{children:[`Ensure the following is present in your `,_jsx(_components.a,{href:`#update-dockerfile-with-the-datadog-agent`,children:_jsx(_components.code,{children:`Dockerfile`})}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`docker`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`docker`,children:_jsxs(_components.code,{language:`docker`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` mkdir -p /var/run/datadog/`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`RUN`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` chown dd-agent:dd-agent /var/run/datadog/`})]}),`\n`]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`add-datadog-python-library`,children:[`Add `,_jsx(_components.code,{children:`datadog`}),` Python library`]}),`\n`,_jsxs(_components.p,{children:[`In your `,_jsx(_components.code,{children:`requirements.txt`}),`:`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`datadog`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(Heading,{level:`3`,id:`record-custom-metrics-in-bot-py`,children:[`Record custom metrics in `,_jsx(_components.code,{children:`bot.py`})]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` datadog `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` statsd`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`def`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` my_function_call`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`():`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` statsd.increment(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"myagent.my_function_call\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Datadog with Pipecat Cloud","sidebarTitle":"Using Datadog","description":"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.","href":"/pipecat-cloud/guides/using-datadog"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Prerequisites","slug":"prerequisites","depth":2,"children":[]},{"title":"Add Datadog API key as a secret","slug":"add-datadog-api-key-as-a-secret","depth":2,"children":[]},{"title":"Create datadog.yaml","slug":"create-datadog-yaml","depth":2,"children":[]},{"title":"Create pre-app.sh","slug":"create-pre-app-sh","depth":2,"children":[]},{"title":"Update Dockerfile with the Datadog Agent","slug":"update-dockerfile-with-the-datadog-agent","depth":2,"children":[]},{"title":"Enabling logging","slug":"enabling-logging","depth":2,"children":[{"title":"Enable logging in datadog.yaml","slug":"enable-logging-in-datadog-yaml","depth":3,"children":[]},{"title":"Create python.d/conf.yaml","slug":"create-python-d/conf-yaml","depth":3,"children":[]},{"title":"Update Dockerfile for logging","slug":"update-dockerfile-for-logging","depth":3,"children":[]},{"title":"Configure logger in bot.py","slug":"configure-logger-in-bot-py","depth":3,"children":[]}]},{"title":"Enabling traces","slug":"enabling-traces","depth":2,"children":[{"title":"Enable traces in datadog.yaml","slug":"enable-traces-in-datadog-yaml","depth":3,"children":[]},{"title":"Start the Datadog Trace Agent in pre-app.sh","slug":"start-the-datadog-trace-agent-in-pre-app-sh","depth":3,"children":[]},{"title":"Prepare file system in Dockerfile","slug":"prepare-file-system-in-dockerfile","depth":3,"children":[]},{"title":"Add ddtrace Python library","slug":"add-ddtrace-python-library","depth":3,"children":[]},{"title":"Record traces in bot.py","slug":"record-traces-in-bot-py","depth":3,"children":[]}]},{"title":"Enabling custom metrics","slug":"enabling-custom-metrics","depth":2,"children":[{"title":"Enable custom metrics in datadog.yaml","slug":"enable-custom-metrics-in-datadog-yaml","depth":3,"children":[]},{"title":"Prepare file system in Dockerfile","slug":"prepare-file-system-in-dockerfile-2","depth":3,"children":[]},{"title":"Add datadog Python library","slug":"add-datadog-python-library","depth":3,"children":[]},{"title":"Record custom metrics in bot.py","slug":"record-custom-metrics-in-bot-py","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/daily/8dde88c766733454/kapa-widget.js","/_mintlify/custom/daily/1c9d393ac913fca7/gtm.js"],"subdomain":"daily","siteName":"Pipecat","title":"Datadog with Pipecat Cloud - Pipecat","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-07T10:28:26.110Z","originalFileLocation":"pipecat-cloud/guides/using-datadog.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Pipecat\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Datadog with Pipecat Cloud - Pipecat\">\u003cmeta data-mint-head property=\"og:description\" content=\"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Pipecat\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://daily.mintlify.site/_mintlify/api/og/v2?division=Logging+%26+Observability\u0026amp;title=Datadog+with+Pipecat+Cloud\u0026amp;description=Ship+Datadog+logging%2C+traces%2C+and+custom+metrics+from+Pipecat+Cloud+agents+for+production+monitoring+and+alerting.\u0026amp;theme=10fd3eefd64c214de510caa7\u0026amp;signature=040a9c42a0a352393eea38a0f1b8e3dc2651488af01f194650cb35a5a37c957a\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Datadog with Pipecat Cloud - Pipecat\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://daily.mintlify.site/_mintlify/api/og/v2?division=Logging+%26+Observability\u0026amp;title=Datadog+with+Pipecat+Cloud\u0026amp;description=Ship+Datadog+logging%2C+traces%2C+and+custom+metrics+from+Pipecat+Cloud+agents+for+production+monitoring+and+alerting.\u0026amp;theme=10fd3eefd64c214de510caa7\u0026amp;signature=040a9c42a0a352393eea38a0f1b8e3dc2651488af01f194650cb35a5a37c957a\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/daily/p50_8aq8F9lsbdgG/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Pipecat\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4f46e5\">\u003cmeta data-mint-head name=\"og:locale\" content=\"en_US\">\u003cmeta data-mint-head name=\"og:logo\" content=\"/logo/pipecat-logo.svg\">\u003cmeta data-mint-head name=\"article:publisher\" content=\"Pipecat AI\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/pipecat-cloud/guides/using-datadog.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.pipecat.ai/#organization\",\"name\":\"Pipecat\",\"url\":\"https://docs.pipecat.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/daily/r4jEtY4thtHXjZ16/logo/light.svg?fit=max\u0026auto=format\u0026n=r4jEtY4thtHXjZ16\u0026q=85\u0026s=46cda5b2f0afabd5f0298c64082c4125\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.pipecat.ai#website\",\"name\":\"Pipecat\",\"url\":\"https://docs.pipecat.ai\",\"publisher\":{\"@id\":\"https://docs.pipecat.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog#webpage\",\"url\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog\",\"name\":\"Datadog with Pipecat Cloud\",\"description\":\"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.\",\"dateModified\":\"2026-08-07T10:28:26.110Z\",\"isPartOf\":{\"@id\":\"https://docs.pipecat.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Guides\",\"item\":\"https://docs.pipecat.ai/pipecat-cloud/guides/cloud-builds\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Datadog with Pipecat Cloud\",\"item\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog#article\",\"headline\":\"Datadog with Pipecat Cloud\",\"name\":\"Datadog with Pipecat Cloud\",\"description\":\"Ship Datadog logging, traces, and custom metrics from Pipecat Cloud agents for production monitoring and alerting.\",\"url\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog\",\"mainEntityOfPage\":{\"@id\":\"https://docs.pipecat.ai/pipecat-cloud/guides/using-datadog#webpage\"},\"dateModified\":\"2026-08-07T10:28:26.110Z\",\"publisher\":{\"@id\":\"https://docs.pipecat.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.pipecat.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Pipecat\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Pipecat\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/pipecat-cloud/guides/using-datadog.md","siteName":"Pipecat","nav":{"global":{"anchors":[{"anchor":"Pipecat Events","icon":"calendar","href":"https://pipecat.ai/events"},{"anchor":"Community","icon":"discord","href":"https://discord.gg/pipecat"},{"anchor":"GitHub","icon":"github","href":"https://github.com/pipecat-ai/pipecat"},{"anchor":"Changelog","icon":"file","href":"https://github.com/pipecat-ai/pipecat/blob/main/CHANGELOG.md"}]},"tabs":[{"tab":"Overview","pages":[{"title":"Overview","href":"/overview/introduction"}]},{"tab":"Pipecat","pages":[{"title":"Pipecat","href":"/pipecat/get-started/introduction"}]},{"tab":"Pipecat Clients","pages":[{"title":"Pipecat Clients","href":"/client/introduction"}]},{"tab":"Pipecat Cloud \u0026 Enterprise","groups":[{"group":"Get Started","pages":[{"title":"Pipecat Cloud \u0026 Pipecat Enterprise","sidebarTitle":"Introduction","href":"/pipecat-cloud/introduction"}]},{"group":"Fundamentals","pages":[{"title":"Pipecat Cloud Accounts and Organizations","sidebarTitle":"Accounts and Organizations","href":"/pipecat-cloud/fundamentals/accounts-and-organizations"},{"title":"Pipecat Cloud Agent Images","sidebarTitle":"Agent Images","href":"/pipecat-cloud/fundamentals/agent-images"},{"title":"Pipecat Cloud Deployments","sidebarTitle":"Deployments","href":"/pipecat-cloud/fundamentals/deploy"},{"title":"Pipecat Cloud Regions","sidebarTitle":"Regions","href":"/pipecat-cloud/guides/regions"},{"title":"Starting Pipecat Cloud Sessions","sidebarTitle":"Starting Sessions","href":"/pipecat-cloud/fundamentals/active-sessions"},{"title":"Pipecat Cloud Secrets","sidebarTitle":"Secrets","href":"/pipecat-cloud/fundamentals/secrets"},{"title":"Pipecat Cloud Scaling","sidebarTitle":"Scaling","href":"/pipecat-cloud/fundamentals/scaling"},{"title":"Pipecat Cloud Health Checks","sidebarTitle":"Health Checks","href":"/pipecat-cloud/fundamentals/health-checks"},{"title":"Pipecat Cloud Logging and Observability","sidebarTitle":"Logging and Observability","href":"/pipecat-cloud/fundamentals/logging"},{"title":"Pipecat Cloud Troubleshooting","sidebarTitle":"Troubleshooting","href":"/pipecat-cloud/fundamentals/error-codes"}]},{"group":"Guides","pages":[{"group":"Building \u0026 Deploying","pages":[{"title":"Pipecat Cloud Builds","sidebarTitle":"Deploy with the CLI","href":"/pipecat-cloud/guides/cloud-builds"},{"title":"Deploy from GitHub","href":"/pipecat-cloud/guides/deploy-from-github"},{"title":"Pipecat Cloud CI with GitHub Actions","sidebarTitle":"CI with GitHub Actions","href":"/pipecat-cloud/guides/ci-with-github-actions"},{"group":"Container Registries","pages":[{"title":"Pipecat Cloud Container Registries","sidebarTitle":"Overview","href":"/pipecat-cloud/guides/container-registries/overview"},{"title":"Deploy from Docker Hub","sidebarTitle":"Docker Hub","href":"/pipecat-cloud/guides/container-registries/docker-hub"},{"title":"Deploy from AWS ECR","sidebarTitle":"AWS ECR","href":"/pipecat-cloud/guides/container-registries/aws-ecr"},{"title":"Deploy from GCP Artifact Registry","sidebarTitle":"GCP Artifact Registry","href":"/pipecat-cloud/guides/container-registries/gcp-artifact-registry"}]}]},{"title":"Pipecat Cloud Capacity Planning","sidebarTitle":"Capacity Planning","href":"/pipecat-cloud/guides/capacity-planning"},{"title":"Pipecat Cloud Personal Access Tokens","sidebarTitle":"Personal Access Tokens","href":"/pipecat-cloud/guides/personal-access-tokens"},{"title":"Pipecat Cloud Daily WebRTC","sidebarTitle":"Daily WebRTC","href":"/pipecat-cloud/guides/daily-webrtc"},{"title":"Krisp VIVA on Pipecat Cloud","sidebarTitle":"Krisp VIVA Voice Isolation","description":"Enable Krisp VIVA voice isolation on Pipecat Cloud to remove background noise and voices for more reliable agent conversations.","href":"/pipecat-cloud/guides/krisp-viva"},{"group":"Logging \u0026 Observability","pages":[{"title":"Datadog with Pipecat Cloud","sidebarTitle":"Using Datadog","href":"/pipecat-cloud/guides/using-datadog"}]},{"title":"Pipecat Cloud Session API","sidebarTitle":"Session API","description":"Send HTTP requests directly to running Pipecat Cloud agent sessions through the session API proxy for custom control.","href":"/pipecat-cloud/guides/session-api"},{"title":"Smart Turn on Pipecat Cloud","sidebarTitle":"Smart Turn Detection","href":"/pipecat-cloud/guides/smart-turn"},{"group":"Webhooks","pages":[{"title":"Pipecat Cloud Webhooks","sidebarTitle":"Webhooks","href":"/pipecat-cloud/guides/webhooks"},{"title":"Webhook Event Reference","sidebarTitle":"Event Reference","href":"/pipecat-cloud/guides/webhook-events"}]},{"group":"WebSockets","pages":[{"title":"Pipecat Cloud Generic WebSocket","sidebarTitle":"Generic WebSocket","href":"/pipecat-cloud/guides/generic-websocket"},{"title":"Pipecat Cloud WebSocket Authentication","sidebarTitle":"WebSocket Authentication","href":"/pipecat-cloud/guides/websocket-authentication"}]},{"title":"Pipecat Cloud WhatsApp Business Calling","sidebarTitle":"WhatsApp Business Calling API","href":"/pipecat-cloud/guides/whatsapp"},{"group":"Telephony","pages":[{"title":"Pipecat Cloud Telephony","sidebarTitle":"Overview","href":"/pipecat-cloud/guides/telephony/overview"},{"title":"Twilio WebSockets on Pipecat Cloud","sidebarTitle":"Twilio Websocket Transport","href":"/pipecat-cloud/guides/telephony/twilio-websocket"},{"title":"Telnyx WebSockets on Pipecat Cloud","sidebarTitle":"Telnyx Websocket Transport","href":"/pipecat-cloud/guides/telephony/telnyx-websocket"},{"title":"Plivo WebSockets on Pipecat Cloud","sidebarTitle":"Plivo Websocket Transport","href":"/pipecat-cloud/guides/telephony/plivo-websocket"},{"title":"Exotel WebSockets on Pipecat Cloud","sidebarTitle":"Exotel Websocket Transport","href":"/pipecat-cloud/guides/telephony/exotel-websocket"},{"title":"Daily PSTN Dial-in on Pipecat Cloud","sidebarTitle":"Daily PSTN Dial-in","href":"/pipecat-cloud/guides/telephony/daily-dial-in"},{"title":"Daily PSTN Dial-out on Pipecat Cloud","sidebarTitle":"Daily PSTN Dial-out","href":"/pipecat-cloud/guides/telephony/daily-dial-out"}]}]},{"group":"Pipecat Enterprise","pages":[{"title":"Pipecat Enterprise","sidebarTitle":"Overview","href":"/pipecat-cloud/enterprise/overview"},{"title":"Pipecat Enterprise Architecture","sidebarTitle":"Architecture","href":"/pipecat-cloud/enterprise/architecture"},{"title":"What Pipecat Cloud Can See","href":"/pipecat-cloud/enterprise/what-daily-can-see"},{"group":"Set up a region","pages":[{"title":"Pipecat Enterprise Requirements","sidebarTitle":"Requirements","href":"/pipecat-cloud/enterprise/requirements"},{"title":"Set Up a Pipecat Enterprise Region","sidebarTitle":"Set up a region","href":"/pipecat-cloud/enterprise/setup"},{"title":"Pipecat Enterprise Configuration","sidebarTitle":"Configuration","href":"/pipecat-cloud/enterprise/configuration"},{"title":"Pipecat Enterprise Secrets","sidebarTitle":"Secrets","href":"/pipecat-cloud/enterprise/secrets"},{"title":"Pipecat Enterprise Agent Sizing","sidebarTitle":"Sizing \u0026 architecture","href":"/pipecat-cloud/enterprise/sizing"},{"title":"Pipecat Enterprise WebSockets","sidebarTitle":"WebSockets \u0026 telephony","href":"/pipecat-cloud/enterprise/websockets"}]},{"group":"Operate","pages":[{"title":"Pipecat Enterprise Logs","sidebarTitle":"Logs \u0026 observability","href":"/pipecat-cloud/enterprise/logs"},{"title":"Operating Pipecat Enterprise","sidebarTitle":"Operations","href":"/pipecat-cloud/enterprise/operations"},{"title":"Pipecat Enterprise Diagnostics","sidebarTitle":"Diagnostics \u0026 support","href":"/pipecat-cloud/enterprise/diagnostics"}]},{"group":"Reference architectures","pages":[{"title":"Pipecat Enterprise on AWS EKS","sidebarTitle":"AWS (EKS)","href":"/pipecat-cloud/enterprise/reference/aws-eks"},{"title":"Pipecat Enterprise on Oracle OKE","sidebarTitle":"Oracle Cloud (OKE)","href":"/pipecat-cloud/enterprise/reference/oci-oke"}]}]},{"group":"Security \u0026 Compliance","pages":[{"title":"Pipecat Cloud Security Guide","sidebarTitle":"Security Guide","href":"/pipecat-cloud/security/security-and-compliance"},{"title":"Pipecat Cloud HIPAA Compliance","sidebarTitle":"HIPAA","href":"/pipecat-cloud/security/hipaa"}]},{"group":"Support","pages":[{"title":"Support \u0026 Professional Services","sidebarTitle":"Support \u0026 services","href":"/pipecat-cloud/support"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference"}]}]},"basePath":"","title":"Datadog with Pipecat Cloud - Pipecat","buildId":"dpl_596ePT575z4qnAFksq1biRW97aLY","deploymentId":"dpl_596ePT575z4qnAFksq1biRW97aLY","dynamics":[],"chunks":[]}