> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Daily Datadog Health Digest

export const UseCaseHero = ({title, description, prompt, category, features, devinUrl, agent, intent, playbookId, type}) => {
  const encodedPrompt = encodeURIComponent(prompt || '');
  const tag = 'docs-use-case-gallery';
  const utm = 'utm_source=docs&utm_medium=use-case-gallery&utm_campaign=hero-cta';
  const agentParams = (agent ? '&agent=' + agent : '') + (intent ? '&intent=' + intent : '') + (playbookId ? '&playbookId=' + playbookId : '');
  const devinHref = type === 'schedule' ? 'https://app.devin.ai/settings/schedules/create?' + utm + agentParams + (prompt ? '&prompt=' + encodedPrompt : '') : type === 'review' ? 'https://app.devin.ai/review?' + utm : agent === 'ada' ? 'https://app.devin.ai/search?' + utm + '&noSubmit=true' + (prompt ? '&prompt=' + encodedPrompt : '') : devinUrl ? devinUrl.includes('?') ? devinUrl + '&' + utm + agentParams : devinUrl + '?' + utm + agentParams : prompt ? 'https://app.devin.ai/?tags=' + tag + '&' + utm + agentParams + '&prompt=' + encodedPrompt : 'https://app.devin.ai/?' + utm + agentParams;
  const buttonLabel = type === 'schedule' ? 'Schedule in Devin ↗' : type === 'review' ? 'Set Up Devin Review ↗' : agent === 'advanced' ? 'Try in Devin ↗' : agent === 'dana' ? 'Try in Dana ↗' : agent === 'ada' ? 'Try in Ask Devin ↗' : 'Try in Devin ↗';
  const featureList = features ? features.split(',').map(f => f.trim()) : [];
  return <div className="uc-hero">
      <div className="uc-hero-inner">
        <div className="uc-hero-left">
          <h1 className="uc-hero-title">{title}</h1>
          <p className="uc-hero-desc">{description}</p>
          <div>
            <a href={devinHref} target="_blank" rel="noopener noreferrer" className="try-in-devin-btn">
              {buttonLabel}
            </a>
          </div>
        </div>
        <div className="uc-hero-meta">
          <div className="uc-meta-item">
            <span className="uc-meta-label">Author</span>
            <span className="uc-meta-value">Cognition</span>
          </div>
          <div className="uc-meta-item">
            <span className="uc-meta-label">Category</span>
            <span className="uc-meta-value">{category}</span>
          </div>
          {featureList.length > 0 && <div className="uc-meta-item">
              <span className="uc-meta-label">Features</span>
              <span className="uc-meta-value">{featureList.join(', ')}</span>
            </div>}
        </div>
      </div>
    </div>;
};

export const PromptBlock = ({children, type, agent, intent, playbookId}) => {
  var utm = 'utm_source=docs&utm_medium=use-case-gallery&utm_campaign=prompt-block';
  var tag = 'docs-use-case-gallery';
  var agentParams = (agent ? '&agent=' + agent : '') + (intent ? '&intent=' + intent : '') + (playbookId ? '&playbookId=' + playbookId : '');
  var label = type === 'schedule' ? 'Schedule in Devin' : type === 'playbook' ? 'Create Playbook' : type === 'knowledge' ? 'Add to Knowledge' : agent === 'advanced' ? 'Try in Devin' : agent === 'dana' ? 'Try in Dana' : agent === 'ada' ? 'Try in Ask Devin' : 'Try in Devin';
  var buildUrl = function (text) {
    var encoded = encodeURIComponent(text);
    if (type === 'schedule') return 'https://app.devin.ai/settings/schedules/create?' + utm + agentParams + '&prompt=' + encoded;
    if (type === 'playbook') return 'https://app.devin.ai/settings/playbooks/create?' + utm + '&body=' + encoded;
    if (type === 'knowledge') return 'https://app.devin.ai/knowledge?' + utm + '&body=' + encoded;
    if (agent === 'ada') return 'https://app.devin.ai/search?' + utm + '&noSubmit=true&prompt=' + encoded;
    return 'https://app.devin.ai/?tags=' + tag + '&' + utm + agentParams + '&prompt=' + encoded;
  };
  const ref = React.useRef(null);
  const [href, setHref] = React.useState('#');
  React.useEffect(() => {
    if (!ref.current) return;
    var codeEl = ref.current.querySelector('pre code');
    if (codeEl) {
      var text = codeEl.textContent.trim();
      if (text) setHref(buildUrl(text));
    }
    var header = ref.current.querySelector('[data-component-part="code-block-header"]');
    if (header && !header.querySelector('.prompt-block-devin-link')) {
      var link = document.createElement('a');
      link.href = href;
      link.target = '_blank';
      link.rel = 'noopener noreferrer';
      link.className = 'prompt-block-devin-link';
      link.style.cssText = 'display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#fff;font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;white-space:nowrap;background:#317CFF;transition:background 0.2s;margin-left:8px;';
      link.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/><polyline points="15 3 21 3 21 9"/><line x1="10" y1="14" x2="21" y2="3"/></svg> ' + label;
      link.onmouseenter = function () {
        link.style.background = '#2968D9';
      };
      link.onmouseleave = function () {
        link.style.background = '#317CFF';
      };
      header.appendChild(link);
    }
    var existingLink = ref.current.querySelector('.prompt-block-devin-link');
    if (existingLink && href !== '#') existingLink.href = href;
  });
  return <div className="prompt-block" ref={ref}>{children}</div>;
};

<UseCaseHero title="Daily Datadog Health Digest" description="Daily session that scans Datadog for errors and posts a health digest to Slack." prompt="Connect to Datadog via MCP. Check error rates, p99 latency, and monitor alerts from the past 24 hours. Summarize findings with severity ratings and recommended next steps." category="Automations" features="Schedules, MCP, Integrations" type="schedule" />

<div className="uc-detail-wrapper">
  <Tip>For a more detailed Datadog integration guide, [click here](/enterprise/integrations/datadog).</Tip>

  <Steps>
    <Step title="Enable the Datadog MCP">
      Go to **Settings > Connections > MCP servers** and search for **Datadog**. Click **Enable**, select your Datadog site/region, and add two headers:

      * `DD-API-KEY` — find yours in Datadog under [Organization Settings > API Keys](https://app.datadoghq.com/organization-settings/api-keys)
      * `DD-APPLICATION-KEY` — find yours under [Organization Settings > Application Keys](https://app.datadoghq.com/organization-settings/application-keys)
    </Step>

    <Step title="Create the daily schedule">
      Navigate to **Schedules** in the left sidebar of [app.devin.ai](https://app.devin.ai/?utm_source=docs\&utm_medium=use-case-gallery) and click **Create schedule**:

      * **Frequency:** Daily — pick a time 30–60 minutes before standup so the team can review findings during the meeting
      * **Slack channel:** Select a channel (e.g., `#ops-alerts`) so your team gets the digest automatically
      * **Prompt:** Be specific about thresholds — vague instructions like "look for issues" produce noisy digests that get ignored

      <PromptBlock type="schedule">
        ```txt Daily health check prompt theme={null}
        Use the Datadog MCP to review system health for the past 24 hours:

        1. Error rates — flag any service above 1%
        2. p99 latency — flag any endpoint above 500ms
        3. CPU and memory — flag anything above 80% utilization
        4. Monitor status — list any monitors currently in Alert or Warn state
        5. Newly recurring errors — errors that reappeared after being resolved

        For each finding, include:
        - Severity (Critical / Warning / Info)
        - Affected service and current metric values
        - Recommended next steps

        If everything is healthy, confirm all-clear.
        ```
      </PromptBlock>

      Add [Knowledge](/product-guides/knowledge) entries about your services so Devin can distinguish normal from abnormal — for example: *"The payments service normally runs at 200ms p99; anything above 400ms is a concern. The search service has a known baseline error rate of 0.5%."*
    </Step>

    <Step title="What your team sees in Slack">
      Each morning, Devin queries Datadog via MCP, checks results against your thresholds, and posts a digest to your channel:

      ```
      Daily Health Digest — Feb 10, 2026

      CRITICAL
        payments-service: Error rate at 3.2% (threshold: 1%)
        Started 4h ago, correlates with deploy #487.
        -> Check /api/checkout handler and recent changes.

      WARNING
        search-service: p99 latency at 620ms (threshold: 500ms)
        Gradual increase over 3 days. Likely index degradation.
        -> Review query plans for the product search endpoint.

        web-app: Memory at 82% (threshold: 80%)
        Trending upward since Tuesday.
        -> Investigate session handler for possible memory leak.

      INFO
        All other services within normal parameters.
        2 monitors recovered in past 24h: cdn-latency, db-replication-lag.
      ```

      Reply in the Slack thread to dig into any finding — Devin keeps full context from the scan:

      <PromptBlock>
        ```txt Investigate critical finding theme={null}
        The payments-service error rate spike correlates with deploy #487.
        Pull the error logs from Datadog for the past 6 hours, identify the
        root cause, and open a PR with a fix if possible.
        ```
      </PromptBlock>

      <PromptBlock>
        ```txt Add weekly trend report theme={null}
        Every Friday, also post a 7-day trend for each metric — are error
        rates improving or worsening? Include week-over-week comparisons
        and post to #engineering-metrics.
        ```
      </PromptBlock>
    </Step>

    <Step title="Schedule weekly knowledge updates">
      Your daily health checks generate a stream of [knowledge suggestions](/product-guides/knowledge) — especially when you reply to findings with feedback like "this is a known baseline" or "ignore this monitor during deploys." Schedule a weekly Devin session to process those suggestions so future runs get smarter automatically.

      <PromptBlock type="schedule" agent="advanced">
        ```txt Weekly Datadog knowledge maintenance theme={null}
        Review all pending knowledge suggestions related to Datadog,
        monitoring, alerting, and infrastructure health. Pay special
        attention to suggestions that came from user feedback on daily
        digest sessions — these capture real-world context about what
        matters and what's noise.

        Incorporate useful suggestions into existing knowledge entries
        or create new ones. Dismiss suggestions that are too vague or
        already covered. If any existing entries contradict recent
        feedback, update them.
        ```
      </PromptBlock>

      Set this to run weekly (e.g., Monday morning) as a Devin session so it has access to the Knowledge management tools. Over time, this feedback loop means your daily digests become more accurate — fewer false alarms, better severity ratings, and smarter recommendations.
    </Step>
  </Steps>
</div>
