<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: AIdevops2088</title>
    <description>The latest articles on DEV Community by AIdevops2088 (@logan_zhang_8ca3575087c5b).</description>
    <link>https://dev.to/logan_zhang_8ca3575087c5b</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4015667%2F7c92f80a-41f9-41d6-bf3c-2ae97be4f5df.png</url>
      <title>DEV Community: AIdevops2088</title>
      <link>https://dev.to/logan_zhang_8ca3575087c5b</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/logan_zhang_8ca3575087c5b"/>
    <language>en</language>
    <item>
      <title>AI Agent Squad for Ops: One Complex Request, Multiple Agents in Action</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:19:55 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/ai-agent-squad-for-ops-one-complex-request-multiple-agents-in-action-2ibn</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/ai-agent-squad-for-ops-one-complex-request-multiple-agents-in-action-2ibn</guid>
      <description>&lt;h2&gt;
  
  
  Complex incidents: 5 tabs, 30 minutes of stitching
&lt;/h2&gt;

&lt;p&gt;2am alert: &lt;strong&gt;“Why is checkout slowing down?”&lt;/strong&gt; You need P99, slow traces, root cause, and an incident report.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The old way:&lt;/strong&gt; Grafana → Jaeger → topology → hand-written summary. &lt;strong&gt;Charts everywhere, root cause nowhere&lt;/strong&gt; — 20–30 minutes per round.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9wl5ta0c9cr67stvfu6v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9wl5ta0c9cr67stvfu6v.png" alt="Searching for slow requests in trace list" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: hopping across systems, no evidence chain&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pain point:&lt;/strong&gt; Monitoring gives data, not conclusions. Every tool is a separate hunt.&lt;/p&gt;

&lt;h2&gt;
  
  
  DataBuff: one goal, an AI squad wires the evidence
&lt;/h2&gt;

&lt;p&gt;Open-source &lt;strong&gt;AI Native OTel APM&lt;/strong&gt;. OTel ingest + Doris storage + multi-agent troubleshooting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In one line:&lt;/strong&gt; orchestrate an AI squad to turn metrics, traces, and topology into an incident-ready report.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwmouywv8tga07vndyy4i.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwmouywv8tga07vndyy4i.jpg" alt="DataBuff three-component architecture" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: Ingest → Doris → Platform&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcbrxsnure54pu2oiu3hk.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcbrxsnure54pu2oiu3hk.jpg" alt="Global service topology" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: global topology — agents judge blast radius&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Up and running in 5 minutes
&lt;/h2&gt;

&lt;p&gt;curl -fsSL &lt;a href="https://databuff.ai/databuff/ai-apm-install.sh" rel="noopener noreferrer"&gt;https://databuff.ai/databuff/ai-apm-install.sh&lt;/a&gt; | bash&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4p8rp042r3ue8x2jv4so.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4p8rp042r3ue8x2jv4so.png" alt="Install success" width="800" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: one command install, Web UI URL in output&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Open &lt;strong&gt;&lt;a href="http://localhost:27403" rel="noopener noreferrer"&gt;http://localhost:27403&lt;/a&gt;&lt;/strong&gt; (admin / Databuff@123)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F42e2rkqipauak4w975ft.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F42e2rkqipauak4w975ft.jpg" alt="Service overview" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: traffic-light service health overview&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Settings → AI model — add your LLM API key:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpuvm8vaad01agyw39dn0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpuvm8vaad01agyw39dn0.png" alt="AI model configuration" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: natural-language troubleshooting after API key setup&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Demo data: &lt;code&gt;curl -fsSL https://databuff.ai/databuff/ai-apm-demo-install.sh | bash&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Back to §1: multi-agent joint ops
&lt;/h2&gt;

&lt;p&gt;Drop the §1 request into the AI chat — all 5 screenshots below are from &lt;strong&gt;one conversation&lt;/strong&gt; (live demo).&lt;/p&gt;

&lt;p&gt;①&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;State the goal&lt;/strong&gt; — P99, traces, root cause, report in one message.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faq7h4lyj6sbmar5s9s61.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faq7h4lyj6sbmar5s9s61.png" alt="User enters complex troubleshooting request" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: full incident goal in one prompt&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;②&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Brain dispatches&lt;/strong&gt; — &lt;code&gt;dispatchExpertTask&lt;/code&gt; to metrics + inspection experts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu2cq0kebb8c9crewe19a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu2cq0kebb8c9crewe19a.png" alt="AI brain dispatching experts" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: concurrent dispatch to metrics + inspection&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;③&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Smart query&lt;/strong&gt; — breaks down the 240ms entry span.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0uk5kh1xfnehc8jigqh4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0uk5kh1xfnehc8jigqh4.png" alt="Metrics expert trace breakdown" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: trace latency breakdown — 240ms entry&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;④&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Health inspection&lt;/strong&gt; — topology + slow traces + metrics to find the bottleneck.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frbzffgm7egmwe3ooieru.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frbzffgm7egmwe3ooieru.png" alt="Inspection tool chain" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: inspect queryTraceList → queryMetricData&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;⑤&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Deliver summary&lt;/strong&gt; — remediation + incident report.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcy20h5ebj6rg4zuux4bc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcy20h5ebj6rg4zuux4bc.png" alt="Recommendations and summary" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: P0 actions + brain-merged report&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;vs §1:&lt;/strong&gt; 5 tabs, 30 minutes → one message, root-cause report in minutes.&lt;/p&gt;

&lt;h2&gt;
  
  
  From manual stitching to commanding an AI squad
&lt;/h2&gt;

&lt;p&gt;No more five browser tabs. &lt;strong&gt;Data stays local; code is open and auditable.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Module** — What you get - **📊 APM** — Topology, P99, slow-trace drill-down - **🤖 AI squad** — Multi-agent queries, synthesized reports - **🔌 OTel** — Unified trace / metric / log storage&lt;/p&gt;

&lt;h3&gt;
  
  
  ⭐ Deploy your ops AI squad in 5 minutes
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Try: “Analyze why checkout slowed down and draft an incident report.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;View on GitHub →&lt;/a&gt;&lt;/p&gt;

</description>
      <category>apm</category>
      <category>opentelemetry</category>
      <category>ai</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Celebrating! This Open-Source CN Project Is Now an Official OpenTelemetry Vendor</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:19:35 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/celebrating-this-open-source-cn-project-is-now-an-official-opentelemetry-vendor-3m8j</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/celebrating-this-open-source-cn-project-is-now-an-official-opentelemetry-vendor-3m8j</guid>
      <description>&lt;p&gt;&lt;strong&gt;DataBuff&lt;/strong&gt; is the second China-built open-source professional APM — after SkyWalking — to appear on the OpenTelemetry official &lt;strong&gt;Vendors&lt;/strong&gt; page, marked as &lt;strong&gt;Native OTLP&lt;/strong&gt;. Why did the community list it? What does it mean for teams still choosing an OTel backend? This article includes demo screenshots and walks through standards, architecture, and AI-powered troubleshooting.&lt;/p&gt;

&lt;p&gt;If you're an SRE or ops engineer, read this through. Let's dive in.&lt;/p&gt;

&lt;h2&gt;
  
  
  OpenTelemetry: CNCF's Second-Largest Project After Kubernetes
&lt;/h2&gt;

&lt;p&gt;OpenTelemetry (OTel or OTLP) is a CNCF-hosted, &lt;strong&gt;vendor-neutral&lt;/strong&gt; observability standard. CNCF's 2025 project velocity report shows OTel commits up &lt;strong&gt;39%&lt;/strong&gt; year over year, contributors &lt;strong&gt;+35%&lt;/strong&gt; — making it the &lt;strong&gt;second-largest CNCF project after Kubernetes&lt;/strong&gt;. Contributors include AWS, Microsoft, Google, Splunk, Dynatrace, New Relic, and other industry leaders.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbecwkncw2qaqbuk5a7o6.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbecwkncw2qaqbuk5a7o6.jpg" alt="Image" width="799" height="553"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0y0pmifen8x41khcux5t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0y0pmifen8x41khcux5t.png" alt="Image" width="800" height="552"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  DataBuff Listed on OpenTelemetry Vendors Within Two Weeks of Launch
&lt;/h2&gt;

&lt;p&gt;The OpenTelemetry website maintains a &lt;strong&gt;Vendors&lt;/strong&gt; ecosystem list — observability backends that &lt;strong&gt;natively consume OTLP&lt;/strong&gt; telemetry for end users. Think of it as a publicly verifiable whitelist.&lt;/p&gt;

&lt;p&gt;In the Pure OSS group, &lt;strong&gt;DataBuff&lt;/strong&gt; is marked Open Source &lt;strong&gt;Yes&lt;/strong&gt;, Commercial &lt;strong&gt;No&lt;/strong&gt;, &lt;strong&gt;Native OTLP Yes&lt;/strong&gt;, with Learn more linking to OTLP integration docs.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs5on38zk56ggpmcc779i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs5on38zk56ggpmcc779i.png" alt="Image" width="800" height="183"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What Makes DataBuff Stand Out
&lt;/h2&gt;

&lt;h3&gt;
  
  
  DataBuff Tagline: AI Native OpenTelemetry APM
&lt;/h3&gt;

&lt;p&gt;The project's goal is to help enterprises move from application performance observation to performance governance, and ultimately to autonomous operations — emphasizing the technical value of AI-native capabilities in SRE workflows.&lt;/p&gt;

&lt;h3&gt;
  
  
  .1 Minimal Architecture
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;DataBuff&lt;/strong&gt; uses a &lt;strong&gt;minimal three-component&lt;/strong&gt; design: &lt;strong&gt;Ingest → Doris (storage) → Web (platform)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;No traditional Elasticsearch + Kafka + microservices stack. One Docker command gets the demo running. The direct payoff: fewer ops components, runs on 8 GB RAM, and a single storage entry point for AI queries — the engineering foundation for an AI-native OpenTelemetry APM.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl1y20w9pg13fzg340s0f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fl1y20w9pg13fzg340s0f.png" alt="Image" width="799" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  .2 OpenTelemetry-Native Capabilities
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdx2s11df0ybbw8hju1d3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdx2s11df0ybbw8hju1d3.png" alt="Image" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fig. 1 · Service List &amp;amp; RED Dashboard&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;Application Performance&lt;/strong&gt; module directly consumes Traces and Metrics reported via OTLP from the OTel SDK, aggregating RED metrics and visualizing service dependencies on the platform — no proprietary agent protocol required. It shows request volume, response time, and error rate for each service, with trend curves for health comparison — the core troubleshooting entry point after OTel Metrics land in storage.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftcjnqw421t4xwe6r5ycs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftcjnqw421t4xwe6r5ycs.png" alt="Image" width="800" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fig. 2 · Global Topology&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Automatically draws service and middleware dependency graphs from Span parent-child relationships in Traces. Node colors indicate health status — get a full system view without manually maintaining a CMDB.&lt;/p&gt;

&lt;h3&gt;
  
  
  .3 AI-Native Capabilities
&lt;/h3&gt;

&lt;p&gt;Many tools treat AI as a generic chat window. The &lt;strong&gt;DataBuff AI Platform&lt;/strong&gt; is different: Skills invoke platform tools to &lt;strong&gt;directly query OTel data stored in Doris&lt;/strong&gt;. Below is a fault-diagnosis example of its AI-native capabilities.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdevgpfkh5ro8dspfx3yp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdevgpfkh5ro8dspfx3yp.png" alt="Image" width="800" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fig. 3-1 · Ask About a Service Failure&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6mm7crj5wful8695i96j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6mm7crj5wful8695i96j.png" alt="Image" width="800" height="438"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fig. 3-2 · AI Fault Deduction Tree&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Foc7njnt97r6km560rr1t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Foc7njnt97r6km560rr1t.png" alt="Image" width="799" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fig. 3-3 · AI Root Cause Analysis&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fig. 3-4 · AI Remediation Advice &amp;amp; Summary&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Describe an anomaly in natural language in the AI chat (e.g., "A topology node turned red — help me diagnose the cause") to trigger multi-expert collaborative analysis. The AI brain automatically dispatches inspection and data-query experts, pulls service latency trends, cross-validates topology and traces, and outputs a structured diagnostic report with remediation advice — translating distributed tracing data into actionable troubleshooting paths.&lt;/p&gt;

&lt;p&gt;Upcoming roadmap: OTLP Logs ingestion, AI application monitoring, eBPF collection&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;p&gt;[1] &lt;a href="https://www.cncf.io/blog/2026/02/09/what-cncf-project-velocity-in-2025-reveals-about-cloud-natives-future/" rel="noopener noreferrer"&gt;https://www.cncf.io/blog/2026/02/09/what-cncf-project-velocity-in-2025-reveals-about-cloud-natives-future/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[2] &lt;a href="https://opentelemetry.io/ecosystem/vendors/" rel="noopener noreferrer"&gt;https://opentelemetry.io/ecosystem/vendors/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[3] &lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[4] &lt;a href="https://github.com/databufflabs/databuff/blob/master/deploy/docker/README.md" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff/blob/master/deploy/docker/README.md&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[5] &lt;a href="https://databuff.ai/databuff/ai-apm-install.sh" rel="noopener noreferrer"&gt;https://databuff.ai/databuff/ai-apm-install.sh&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[6] &lt;a href="https://github.com/databufflabs/databuff/blob/master/docs/%E4%BA%A7%E5%93%81%E4%BB%8B%E7%BB%8D.md" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff/blob/master/docs/产品介绍.md&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[7] &lt;a href="https://github.com/databufflabs/databuff/blob/master/docs/Roadmap.md" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff/blob/master/docs/Roadmap.md&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[8] &lt;a href="https://demo.databuff.ai/" rel="noopener noreferrer"&gt;https://demo.databuff.ai/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>opentelemetry</category>
      <category>apm</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Open Source APM Feature Comparison: SkyWalking vs Databuff</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:19:13 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/open-source-apm-feature-comparison-skywalking-vs-databuff-22d</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/open-source-apm-feature-comparison-skywalking-vs-databuff-22d</guid>
      <description>&lt;p&gt;&amp;gt; Summary: When evaluating open-source APM, feature checklists often look alike — the real gap is troubleshooting paths and onboarding cost. This article skips architecture pitches and goes straight into the official SkyWalking and Databuff Demos, comparing service monitoring, distributed tracing, topology, alerts, and AI Q&amp;amp;A with live screenshots. After the comparison tables, you'll have a clear view of who to keep and who to try.&lt;/p&gt;

&lt;p&gt;Comparison environment: &lt;strong&gt;demo.databuff.ai&lt;/strong&gt; and &lt;strong&gt;demo.skywalking.apache.org&lt;/strong&gt;[1][2]; SkyWalking UI is in Chinese (Simplified). Each chapter includes dual-product screenshots and a feature comparison table, with a selection summary at the end.&lt;/p&gt;

&lt;p&gt;No concept dumping here — we open both products' real feature pages side by side in the Demo: from single-service monitoring drill-down, to Trace list and Span detail comparison, through topology and alerts, plus Databuff's unique AI Q&amp;amp;A — differences are in the screenshots, one chapter per capability.&lt;/p&gt;

&lt;h2&gt;
  
  
  Service Monitoring
&lt;/h2&gt;

&lt;p&gt;Drill from the service list into &lt;strong&gt;single-service&lt;/strong&gt; monitoring detail: metric trends, instance/API rankings, and service dependencies.&lt;/p&gt;

&lt;h3&gt;
  
  
  SkyWalking · General Service → rating Service Detail
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;SkyWalking Demo · Chinese UI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm9m51d9hvue7ovmqmz98.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm9m51d9hvue7ovmqmz98.png" alt="Figure 1-1 · rating service selected: RPM / Apdex / error rate, top 20 APIs, traffic and response-time percentiles, instance ranking\[2\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 1-1 · rating service selected: RPM / Apdex / error rate, top 20 APIs, traffic and response-time percentiles, instance ranking[2]&lt;/p&gt;

&lt;p&gt;After selecting a specific service (e.g. &lt;strong&gt;rating&lt;/strong&gt; in the Demo) under General Service, SkyWalking shows a full &lt;strong&gt;application performance monitoring&lt;/strong&gt; dashboard: Top APIs, traffic/error-rate/Apdex time series, response-time percentiles, instance load ranking — with further drill-down to instances, endpoints, Trace Profiling / eBPF, and more. Deep feature set for teams already invested in SkyWalking agents.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Service / instance / API / Trace multi-level menu linkage&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Rich Profiling (Trace / eBPF / pprof) entry points&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fine-grained metrics, but deeper menu hierarchy&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Databuff · Application Performance → service-a Detail
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh4ga3on9f7osbpapyap5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh4ga3on9f7osbpapyap5.png" alt="Figure 1-2 · service-a detail: health status, service relationship graph (Web → HTTP/RPC/DB/external calls), instance list, shortcuts to API analysis and service flow\[1\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 1-2 · service-a detail: health status, service relationship graph (Web → HTTP/RPC/DB/external calls), instance list, shortcuts to API analysis and service flow[1]&lt;/p&gt;

&lt;p&gt;Databuff opens &lt;strong&gt;single-service detail&lt;/strong&gt; from the service list with a &lt;strong&gt;service relationship graph + instance table&lt;/strong&gt; by default: Web entry, downstream HTTP/RPC, MySQL/Redis dependencies at a glance, plus "API Analysis" and "Service Flow" shortcuts. Data comes from OTLP — no SkyWalking proprietary probe protocol.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Service relationship visualization on the detail landing page — shorter troubleshooting path&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Unified OTLP ingestion, language/framework agnostic&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Same page links alerts, JVM metrics, and other tabs&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;§1 Comparison summary: SkyWalking offers richer per-service metric charts and stronger Profiling; Databuff puts dependency relationships and service instances on the detail landing page — a more intuitive path for OTel teams from list → relationship graph → Trace. If you're already on OTel or planning a unified Collector, Databuff service detail needs zero extra probe protocols.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;§1 Feature comparison · Service monitoring&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Dimension** — SkyWalking · Databuff · Databuff advantage - **Detail page focus** — Top APIs, traffic/Apdex/error-rate time series, instance/API ranking · Service relationship graph + instance table on landing page, health at a glance · See full dependency picture on entry, fewer page switches - **Drill-down path** — Instance → API → Trace → Profiling multi-level menus · API analysis / service flow / JVM / alerts tabs on one page · Common capabilities aggregated — shorter troubleshooting chain - **Dependency view** — Jump to Topology / API dependency modules · Built-in Web→HTTP/RPC/DB/external relationship graph on detail page · Dependencies and metrics on one screen — faster impact assessment - **Data ingestion** — SkyWalking agents primary; OTLP needs extra config · OTLP 4317/4318 unified ingestion; point Exporter at Ingest · Zero proprietary agents for OTel teams, lower migration cost - **Onboarding** — Deep feature set, deeper menu hierarchy · Relationship graph landing + native Chinese UI, Demo out of the box · Newcomers build "service→dependency→Trace" mental model faster&lt;/p&gt;

&lt;h2&gt;
  
  
  Distributed Tracing
&lt;/h2&gt;

&lt;p&gt;Two screenshots per product: &lt;strong&gt;Trace list&lt;/strong&gt; search entry + &lt;strong&gt;single Trace detail&lt;/strong&gt; (Span tree / waterfall).&lt;/p&gt;

&lt;h3&gt;
  
  
  SkyWalking · Distributed Tracing
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;SkyWalking Demo · Chinese UI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fj0llscq3pwq0hp31nf9n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fj0llscq3pwq0hp31nf9n.png" alt="Figure 2-1 · Traces list: instance/endpoint/status filters, distribution scatter plot (success/error), Trace list after query\[2\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-1 · Traces list: instance/endpoint/status filters, distribution scatter plot (success/error), Trace list after query[2]&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fd57oo5hzry0j510yg3t9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fd57oo5hzry0j510yg3t9.png" alt="Figure 2-2 · After clicking a Trace: TraceID, duration, Span tree (default/tree/statistics views), expandable Tags and Logs\[2\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-2 · After clicking a Trace: TraceID, duration, Span tree (default/tree/statistics views), expandable Tags and Logs[2]&lt;/p&gt;

&lt;p&gt;SkyWalking Trace supports multi-dimensional filters and a Distribution scatter plot; clicking a list row shows the Span tree and Tags. A mature &lt;strong&gt;distributed tracing&lt;/strong&gt; solution for long-term troubleshooting in complex microservices.&lt;/p&gt;

&lt;h3&gt;
  
  
  Databuff · Distributed Tracing
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm4w1ald91jqihkydcu2z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm4w1ald91jqihkydcu2z.png" alt="Figure 2-3 · Trace list after chart time-point click: TraceID, API, duration, service, status code, left-side quick filters\[1\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-3 · Trace list after chart time-point click: TraceID, API, duration, service, status code, left-side quick filters[1]&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3ghz9vy764hmfgzofbvv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3ghz9vy764hmfgzofbvv.png" alt="Figure 2-4 · Call chain detail: GET /demo/checkout waterfall, Redis/MySQL/remote calls/service-b full-chain Spans with execution share\[1\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-4 · Call chain detail: GET /demo/checkout waterfall, Redis/MySQL/remote calls/service-b full-chain Spans with execution share[1]&lt;/p&gt;

&lt;p&gt;Databuff tracing flows &lt;strong&gt;distribution chart → list → waterfall&lt;/strong&gt; seamlessly; Spans are color-coded by Web/DB/cache/MQ, with TraceID/SpanID and environment info on the right. Shares OTLP-ingested data with topology, service detail, and AI Q&amp;amp;A.&lt;/p&gt;

&lt;p&gt;§2 Comparison summary: Both meet production-grade Trace search and drill-down. SkyWalking has stronger filter dimensions and Profiling linkage; Databuff's waterfall distinguishes middleware Span types more clearly, and Trace shares the OTLP pipeline with metrics/topology/AI — no second Trace format to maintain during migration.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;§2 Feature comparison · Distributed tracing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Dimension** — SkyWalking · Databuff · Databuff advantage - **Trace list entry** — Instance/endpoint/status/tag filters + Distribution scatter · Chart point-select → list, chart and Trace on one screen · See trends before single-Trace lookup — more intuitive slow-request pinpointing - **List fields** — Endpoint, duration, TraceID, success/error status · TraceID, API name / status code / host, service, duration · More on-call-readable fields, less guessing Endpoint meaning - **Detail view** — Span tree (default/tree/statistics), expandable Tags and Logs · Waterfall + Web/DB/cache/MQ coloring + execution share · Middleware time contribution visible at a glance — faster root cause - **Search capability** — Trace ID, duration range, tag key=value — rich dimensions · Left-side quick filters (response time/status/service/API) · Common filters out of the box — no tag expressions required - **Protocol &amp;amp; data** — Segment native or OTLP, separate pipeline config · OTLP sole entry, same source as topology/metrics/AI Q&amp;amp;A · No second Trace format during dual-write or migration&lt;/p&gt;

&lt;h2&gt;
  
  
  Service Topology
&lt;/h2&gt;

&lt;p&gt;Visualize service dependencies and middleware calls to quickly scope incident impact.&lt;/p&gt;

&lt;h3&gt;
  
  
  SkyWalking · Topology
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;SkyWalking Demo · Chinese UI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0rfesyi0p6hmdpa61oyd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0rfesyi0p6hmdpa61oyd.png" alt="Figure 3-1 · Topology: rating / gateway / app / frontend nodes, RPM and latency on edges, Go/Spring/Node tech stack on nodes\[2\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 3-1 · Topology: rating / gateway / app / frontend nodes, RPM and latency on edges, Go/Spring/Node tech stack on nodes[2]&lt;/p&gt;

&lt;p&gt;SkyWalking topology aggregates call edges by service; nodes show tech-stack icons with RPM/latency — the familiar "war map" for the community, linkable to alerts and Trace modules.&lt;/p&gt;

&lt;h3&gt;
  
  
  Databuff · Global Topology
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flmtpa5zfpd9m4whuc1wn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flmtpa5zfpd9m4whuc1wn.png" alt="Figure 3-2 · Global topology: service-a/b with Redis, Kafka, MySQL, ES, remote payment middleware dependencies\[1\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 3-2 · Global topology: service-a/b with Redis, Kafka, MySQL, ES, remote payment middleware dependencies[1]&lt;/p&gt;

&lt;p&gt;Databuff derives topology from OTLP Traces automatically; middleware labeled as [redis]/[mysql]/[kafka], nodes drill down to service detail. Easy to &lt;strong&gt;run in parallel&lt;/strong&gt; with OTel Collector or other OTel backends to verify dependencies match.&lt;/p&gt;

&lt;p&gt;§3 Comparison summary: Both have mature topology. SkyWalking annotates edges with real-time RPM/latency more finely; Databuff middleware naming aligns with OTel semantics — lower cost to validate during migration.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;§3 Feature comparison · Service topology&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Dimension** — SkyWalking · Databuff · Databuff advantage - **Node presentation** — Service nodes + tech-stack icons (Go/Spring/Node, etc.) · Services + [redis]/[mysql]/[kafka] semantic middleware nodes · Middleware type readable, aligned with OTel resource attributes - **Edge metrics** — RPM, latency annotated on call edges in real time · Dependency arrows + node health color (abnormal services highlighted) · Faulty nodes visible at a glance — no need to read edge numbers first - **Drill-down linkage** — Click node → Service / Trace / alerts · Click node → service detail and Trace directly · Shorter topology→root-cause Span path - **Data source** — SkyWalking Segment aggregation · OTLP Trace auto-derived, consistent with Collector semantics · Same semantics as OTel ecosystem — simple parallel validation - **Migration validation** — Parallel OTel backend needs conversion or dual-write · Parallel validation against OTel stack on same workload · Low-cost topology consistency check during SkyWalking migration&lt;/p&gt;

&lt;h2&gt;
  
  
  Alerting Comparison
&lt;/h2&gt;

&lt;p&gt;Alert rules, event lists, and timelines — critical for on-call and migration periods.&lt;/p&gt;

&lt;h3&gt;
  
  
  SkyWalking · Alert Center
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;SkyWalking Demo · Chinese UI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fig7hkrwudyq85ed7l37e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fig7hkrwudyq85ed7l37e.png" alt="Figure 4-1 · Alerts: active/other stats, layer/service/instance filters, Timeline, Mesh/General category tabs\[2\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 4-1 · Alerts: active/other stats, layer/service/instance filters, Timeline, Mesh/General category tabs[2]&lt;/p&gt;

&lt;p&gt;SkyWalking alerts offer Active/Other categories, Layer/Service/Instance multi-dimensional filters and a Timeline; messages include SLA, response-time thresholds, etc. — for teams needing &lt;strong&gt;fine-grained alert policies&lt;/strong&gt; and long-term rule history.&lt;/p&gt;

&lt;h3&gt;
  
  
  Databuff · Alert List
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe6xnzl7f53mavo9dr7fa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe6xnzl7f53mavo9dr7fa.png" alt="Figure 4-2 · Alert center → alert list: severity filters, alert frequency bar chart, alert ID/description/service/trigger time/event count\[1\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 4-2 · Alert center → alert list: severity filters, alert frequency bar chart, alert ID/description/service/trigger time/event count[1]&lt;/p&gt;

&lt;p&gt;Databuff alert list filters by &lt;strong&gt;critical/minor&lt;/strong&gt; severity and service; bar chart shows alert frequency distribution; each alert gives readable text like "avg latency 240ms exceeds threshold 60ms", sharing the data foundation with global dashboard and AI inspection.&lt;/p&gt;

&lt;p&gt;§4 Comparison summary: SkyWalking has finer alert rule engine and Layer dimensions with more community config samples; Databuff alert list Chinese descriptions + frequency visualization are closer to on-call reading habits, and can link to AI intelligent inspection for natural-language follow-up.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;§4 Feature comparison · Alerting&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Dimension** — SkyWalking · Databuff · Databuff advantage - **Alert view** — Active/other stats + Timeline brush selection · Alert list + frequency bar chart, severity distribution intuitive · On-call landing shows "which minute had most alerts" - **Filter dimensions** — Layer / Service / Instance / Endpoint / keywords · Critical/minor severity + service name — simple filters · Two-step filter for common on-call scenarios - **Alert description** — SLA, response-time threshold rule trigger messages · Plain-language "metric vs threshold" (e.g. 240ms &amp;gt; 60ms) · No need to reverse-engineer rule syntax — messages forwardable directly - **Classification** — Mesh / General Layer tabs · Aggregated by service + severity, event count column · Grouped by business service — matches SRE on-call habits - **Intelligent linkage** — AI Pipeline ML detection, separate from dashboards · Shares OTLP data with AI Q&amp;amp;A/intelligent inspection · Natural-language root-cause follow-up after alerts — no broken chain&lt;/p&gt;

&lt;h2&gt;
  
  
  AI Smart Q&amp;amp;A and Inspection
&lt;/h2&gt;

&lt;p&gt;From "dashboard clicking" to "natural language questions" — Databuff's core differentiator.&lt;/p&gt;

&lt;h3&gt;
  
  
  SkyWalking · AI / Intelligence
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;SkyWalking&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;SkyWalking offers &lt;strong&gt;AI Pipeline&lt;/strong&gt; and other ML detection capabilities, focused on anomaly detection models and pipeline configuration — a "in-platform ML module" path. Day-to-day troubleshooting still centers on Trace/Topology/Log dashboards; &lt;strong&gt;conversational Q&amp;amp;A is not the default interaction&lt;/strong&gt;[3].&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;ML pipelines and metric anomaly detection&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Mature alerting + event management&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;No built-in conversational APM main interface&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Databuff · AI Platform Conversational Q&amp;amp;A
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhbc1e6ntwbafccam6zb4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhbc1e6ntwbafccam6zb4.png" alt="Figure 5-1 · AI platform → chat: ask " width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 5-1 · AI platform → chat: ask "query upstream/downstream topology of the first service", returns upstream/downstream table and natural-language topology summary[1]&lt;/p&gt;

&lt;p&gt;Databuff has built-in &lt;strong&gt;AI-native APM&lt;/strong&gt;: natural-language questions query service lists, topology, metrics, and Traces; Agent answers from OTLP-ingested data. Supports intelligent inspection, MCP exposure, and external MCP integration — a unified entry for SRE and AI Agent workflows.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Q&amp;amp;A reads Trace/Metrics/Topology directly&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;One-click intelligent inspection for full-environment health checks&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MCP / Skill extends IDE toolchains&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;§5 Comparison summary (biggest gap): SkyWalking excels at ML pipelines and traditional alerting; Databuff excels at conversational APM + MCP openness. If selection criteria include intelligent ops / agent monitoring, Databuff has a clear functional lead.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;§5 Feature comparison · AI smart Q&amp;amp;A&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Dimension** — SkyWalking · Databuff · Databuff advantage - **Intelligence path** — AI Pipeline / ML anomaly detection pipelines · Conversational Q&amp;amp;A + intelligent inspection, built-in AI platform · Default interaction for 2026 agent ops — not an add-on module - **Interaction** — Dashboard clicking + rule configuration · Natural language questions, table + text summary responses · SRE/devs query APM in plain language — lower learning curve - **Q&amp;amp;A scope** — ML pipeline independently configured metrics · Service list, topology, metrics, Trace same-source queries · One question spans multiple modules — no switching five dashboards - **Data consistency** — ML module separate from Trace dashboards · Shares OTLP ingestion with APM — answers verifiable · AI conclusions match dashboard data — avoids "chat hallucination" - **Extension integration** — Open API / plugin ecosystem · MCP Server exposure + bidirectional external MCP · Cursor/IDE Agents can call APM directly — DevOps chain connected&lt;/p&gt;

&lt;h2&gt;
  
  
  Full-Dimension Summary
&lt;/h2&gt;

&lt;p&gt;Based on five chapters of live Demo experience — selection reference on architecture, UX, and intelligence (not scoring; focused on OTel unification and 2026 intelligent-ops needs).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;§6 Full-dimension summary table&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Dimension** — SkyWalking · Databuff · Selection hint - **Data ingestion** — SkyWalking agents + OTLP/Mesh, etc. · OTLP 4317/4318 unified entry · Already on OTel → Databuff zero extra protocol - **Deployment** — OAP + UI + storage (more components) · Ingest + Doris + Web three components · Lightweight self-host → Databuff stack simpler - **Service monitoring** — Deepest metrics/Profiling · Service relationship graph landing + instance table · Deep Profiling → SW; fast troubleshooting → DB - **Distributed tracing** — Multi-dimensional search + Distribution scatter · Distribution chart → list → waterfall · Dual-write migration → DB OTLP same source - **Topology** — Fine RPM/latency on edges · Clear OTel middleware semantics · Parallel OTel validation → DB low comparison cost - **Alerting** — Mature Layer rules + Timeline · Chinese descriptions + frequency chart + AI linkage · Long rule history → SW; fast on-call reading → DB - **AI / intelligence** — AI Pipeline ML detection · Conversational Q&amp;amp;A + inspection + MCP · Agent ops → Databuff clearly ahead - **UI language** — Chinese supported (some English terms) · Native Chinese · Domestic teams — both work; DB more unified - **Community &amp;amp; ecosystem** — ASF top-level project, vast case library · Emerging OTel-native stack, MCP open · Deep SW footprint → OTLP parallel validation of DB&lt;/p&gt;

&lt;p&gt;Summary: SkyWalking is a mature full-stack observability platform with deep Profiling, alert rules, and large-scale experience; Databuff is closer to 2026's "OTel unification + intelligent ops" with &lt;strong&gt;OTLP-native ingestion, three-component lightweight deployment, service-relationship/waterfall troubleshooting paths, readable alerts, and conversational APM&lt;/strong&gt;. SkyWalking users should OTLP dual-write to the Demo for parallel comparison, then evaluate whether AI Q&amp;amp;A and a lightweight stack are worth adding incrementally.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;[1] &lt;a href="https://demo.databuff.ai/" rel="noopener noreferrer"&gt;https://demo.databuff.ai/&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;[2] &lt;a href="https://demo.skywalking.apache.org/" rel="noopener noreferrer"&gt;https://demo.skywalking.apache.org/&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;[3] &lt;a href="https://skywalking.apache.org/" rel="noopener noreferrer"&gt;https://skywalking.apache.org/&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;[4] &lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;[5] &lt;a href="https://databuff.ai/databuff/ai-apm-install.sh" rel="noopener noreferrer"&gt;https://databuff.ai/databuff/ai-apm-install.sh&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Learn more:&lt;/strong&gt; &lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;github.com/databufflabs/databuff&lt;/a&gt;&lt;/p&gt;

</description>
      <category>apm</category>
      <category>java</category>
      <category>opentelemetry</category>
      <category>devops</category>
    </item>
    <item>
      <title>Why Do IT Systems Need Observability?</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:18:52 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/why-do-it-systems-need-observability-4dpg</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/why-do-it-systems-need-observability-4dpg</guid>
      <description>&lt;p&gt;&lt;strong&gt;Summary:&lt;/strong&gt; In the microservices and cloud-native era, "the server is still alive" cannot answer why the business failed or which segment is slow. Starting from Metrics / Logs / Traces, this article uses live screenshots from the official Databuff Demo to explain how observability differs from traditional monitoring, why it is production-critical, and an OTel adoption path plus self-check questions for selection.&lt;/p&gt;

&lt;p&gt;Before debating "which product to buy," let's narrow the question: &lt;strong&gt;what does observability actually solve, and how is it different from monitoring?&lt;/strong&gt; The sections below follow concept clarification → three signal types with demos → why it's more needed now → adoption path. Demo environment: &lt;strong&gt;demo.databuff.ai&lt;/strong&gt;[3], with real UI screenshots at each step so you can see which piece your team is missing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Monitoring ≠ Observability
&lt;/h2&gt;

&lt;p&gt;Many equate "observability" with "we deployed Prometheus + ELK." They focus on different questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Traditional monitoring&lt;/strong&gt; answers: Is CPU spiking? Is disk almost full? Is the process alive?&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Observability&lt;/strong&gt; answers: Why did this order fail? Which call segment pushed P99 from 200ms to 2s? Did the canary release introduce new errors?&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Monitoring is &lt;strong&gt;threshold alerting&lt;/strong&gt;; observability is &lt;strong&gt;drill-down and correlation across arbitrary dimensions&lt;/strong&gt; — you can still "ask" what happened from existing telemetry[1]. During a flash-sale traffic spike, host monitoring may say "all Pods are fine"; with Traces and RED metrics, you see a downstream RPC timeout dragging down the whole chain.&lt;/p&gt;

&lt;p&gt;Key takeaway: IT systems need observability because once architecture grows complex, you can no longer answer "why is the business broken, where, and who is affected?" with "machines are alive" alone. In the monolith era, tailing logs often sufficed; in microservices one request crosses a dozen services — error logs may not contain the root cause, and on-call engineers bounce between views, inflating MTTR.&lt;/p&gt;

&lt;h2&gt;
  
  
  Three Signals: Metrics, Logs, Traces
&lt;/h2&gt;

&lt;p&gt;- **Signal** — Typical use · Troubleshooting role - **Metrics** — Request volume, error rate, latency percentiles · Find "which service is red" - **Logs** — What the process printed at a moment · Exception stacks, business context - **Traces** — Full path of one request across services · Pinpoint "which hop is slow"&lt;/p&gt;

&lt;p&gt;They complement each other: &lt;strong&gt;metrics surface anomalies, traces narrow scope, logs fill in details&lt;/strong&gt;. This is why &lt;strong&gt;application performance monitoring (APM)&lt;/strong&gt; and &lt;strong&gt;distributed tracing&lt;/strong&gt; keep coming up in microservices.&lt;/p&gt;

&lt;h3&gt;
  
  
  .1 Metrics: see "who is slow, who is wrong" first
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo · Service list&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftfalfy4nydgspdajlm0e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftfalfy4nydgspdajlm0e.png" alt="Figure 2-1 · Service list RED metrics: service-a avg 240ms, service-b ~70ms, 0% error rate\[3\]" width="800" height="699"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-1 · Service list RED metrics: service-a avg 240ms, service-b ~70ms, 0% error rate[3]&lt;/p&gt;

&lt;p&gt;Open-source APM &lt;strong&gt;Databuff&lt;/strong&gt; puts &lt;strong&gt;RED metrics&lt;/strong&gt; (request rate, error rate, response time) on one screen — observability's "business-view health," not just CPU curves.&lt;/p&gt;

&lt;h3&gt;
  
  
  .2 Traces: one click into the full call chain
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo · Distributed tracing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbltczsdmwd2sg3xfci7z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbltczsdmwd2sg3xfci7z.png" alt="Figure 2-2 · Trace count, error stats, and P50–P99 response time; click the chart to drill into slow requests\[3\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-2 · Trace count, error stats, and P50–P99 response time; click the chart to drill into slow requests[3]&lt;/p&gt;

&lt;p&gt;Metrics alone are not enough. The tracing page shows Trace distribution and latency percentiles; click any point on the chart to drill into a specific slow request — the jump from "metrics to evidence."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh3aw3vh7aehtgptos05a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh3aw3vh7aehtgptos05a.png" alt="Figure 2-3 · Single Trace Span waterfall: pinpoint which SQL, RPC, or gateway hop slowed the whole request\[3\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-3 · Single Trace Span waterfall: pinpoint which SQL, RPC, or gateway hop slowed the whole request[3]&lt;/p&gt;

&lt;h3&gt;
  
  
  .3 Topology: understand "who depends on whom"
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo · Global topology&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqxx8ngo36ewdlr8i6qel.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqxx8ngo36ewdlr8i6qel.png" alt="Figure 2-4 · Global topology: service-a / service-b with MySQL, Redis, Kafka, Elasticsearch dependencies\[3\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 2-4 · Global topology: service-a / service-b with MySQL, Redis, Kafka, Elasticsearch dependencies[3]&lt;/p&gt;

&lt;p&gt;With many services, no one can draw the full call graph from memory. &lt;strong&gt;Global topology&lt;/strong&gt; auto-draws service and middleware dependencies — during incidents, quickly tell whether the app or a downstream component is the bottleneck.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why It's "More Needed" Now
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Rising architecture complexity&lt;/strong&gt;: More services mean call paths keep changing with releases and scaling.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Faster change cadence&lt;/strong&gt;: Multiple CI/CD deploys per day — without trace-level evidence, hard to tell which change caused a regression.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;UX tied to SLA&lt;/strong&gt;: P99 latency and payment failure rate directly affect revenue.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;SRE culture&lt;/strong&gt;: On-call needs &lt;strong&gt;one evidence chain&lt;/strong&gt;, not five disconnected tools.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The &lt;strong&gt;global dashboard&lt;/strong&gt; shows per-service alerts and abnormal states on a minute-level timeline side by side — ideal for first-pass on-call inspection, and the foundation for observability moving from reactive firefighting to proactive discovery.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo · Global dashboard&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvbcbnf7fzyc2baj3bmdo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvbcbnf7fzyc2baj3bmdo.png" alt="Figure 3-1 · Global dashboard: per-minute alert and health timeline per service\[3\]" width="800" height="699"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 3-1 · Global dashboard: per-minute alert and health timeline per service[3]&lt;/p&gt;

&lt;h2&gt;
  
  
  Adoption Path
&lt;/h2&gt;

&lt;p&gt;Engineering teams usually take three steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Unified collection&lt;/strong&gt;: OpenTelemetry is the de facto multi-language instrumentation standard[2], ingested via OTLP — common ports gRPC &lt;strong&gt;4317&lt;/strong&gt;, HTTP &lt;strong&gt;4318&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Storage/compute separation&lt;/strong&gt;: Traces and metrics go to time-series or OLAP storage; the query layer correlates them.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Troubleshooting loop&lt;/strong&gt;: Topology for dependencies, Trace waterfall for slow points, alerts for proactive discovery; ideally one UI covers "alert → topology → Trace → log context."&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Also watch &lt;strong&gt;sampling rate&lt;/strong&gt; and &lt;strong&gt;TraceId propagation&lt;/strong&gt; — full Trace storage is expensive; broken instrumentation makes even the prettiest topology misleading.&lt;/p&gt;

&lt;p&gt;Many teams start with SkyWalking, Jaeger, or other open-source APM; others want &lt;strong&gt;OTel as the sole data plane&lt;/strong&gt;, putting metrics, traces, and assisted analysis in one stack. Databuff uses native OTLP ingestion, supports topology and RED metrics in the UI, and offers &lt;strong&gt;natural-language Q&amp;amp;A&lt;/strong&gt; for service lists, topology, and trends — less DSL to memorize for on-call engineers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Databuff Demo · AI Q&amp;amp;A&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftn18jps7sjqczrdrnb3l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftn18jps7sjqczrdrnb3l.png" alt="Figure 4-1 · AI Q&amp;amp;A: natural-language queries for service list, topology, and metric trends\[3\]" width="800" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Figure 4-1 · AI Q&amp;amp;A: natural-language queries for service list, topology, and metric trends[3]&lt;/p&gt;

&lt;p&gt;If you already run SkyWalking or similar, new services can OTel-ize and ingest in parallel, comparing Traces for the same request to evaluate dual-stack cost. &lt;strong&gt;Not a replacement for every scenario&lt;/strong&gt; — one more option to consider.&lt;/p&gt;

&lt;h2&gt;
  
  
  Summary
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;IT systems need observability because complexity exceeds what humans can hold in working memory.&lt;/strong&gt; Whenever a system delivers business value through multiple cooperating components, observability shifts from "nice to have" to "production essential."&lt;/p&gt;

&lt;p&gt;When prioritizing, ask three questions first: &lt;strong&gt;Do you have cross-service Traces? Can you drill from a slow request to a Span? How many tools do you switch after an alert?&lt;/strong&gt; The more answers lean toward "no / many," the higher the build priority — more important than arguing "which vendor" first.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;p&gt;[1] &lt;a href="https://opentelemetry.io/docs/concepts/observability-primer/" rel="noopener noreferrer"&gt;https://opentelemetry.io/docs/concepts/observability-primer/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[2] &lt;a href="https://opentelemetry.io/docs/languages/" rel="noopener noreferrer"&gt;https://opentelemetry.io/docs/languages/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[3] &lt;a href="https://demo.databuff.ai/" rel="noopener noreferrer"&gt;https://demo.databuff.ai/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Learn more:&lt;/strong&gt; &lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;github.com/databufflabs/databuff&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>opentelemetry</category>
      <category>apm</category>
      <category>trace</category>
    </item>
    <item>
      <title>AI Ops Squad Evolves Again: Log Analysis Gets a Rescue</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:18:31 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/ai-ops-squad-evolves-again-log-analysis-gets-a-rescue-o1n</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/ai-ops-squad-evolves-again-log-analysis-gets-a-rescue-o1n</guid>
      <description>&lt;h2&gt;
  
  
  Demo scenario: InsufficientStockException
&lt;/h2&gt;

&lt;p&gt;The demo app keeps hitting &lt;code&gt;GET /demo/checkout&lt;/code&gt;. When inventory runs out, &lt;strong&gt;service-b&lt;/strong&gt; throws &lt;code&gt;InsufficientStockException: inventory unavailable for skuId=…&lt;/code&gt;. OTLP logs land in Doris with &lt;code&gt;trace_id&lt;/code&gt; / &lt;code&gt;span_id&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Every screenshot below comes from the same incident window (last 1 hour), walked in on-call order three ways:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Path A&lt;/strong&gt; — You know the exception class: facet search on the global Logs page&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Path B&lt;/strong&gt; — You have a slow trace: span logs on the flame graph + deep link back to global logs&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Path C&lt;/strong&gt; — One sentence to AI, dispatching &lt;code&gt;log.queryLog*&lt;/code&gt; tools for ERROR logs&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Path A: global Log Analysis search
&lt;/h2&gt;

&lt;p&gt;Menu: &lt;strong&gt;Application Performance → Log Analysis&lt;/strong&gt;. No LogQL required — &lt;strong&gt;keywords + facets&lt;/strong&gt; are enough.&lt;/p&gt;

&lt;p&gt;Steps: search &lt;code&gt;InsufficientStockException&lt;/code&gt; → filter &lt;strong&gt;ERROR&lt;/strong&gt; + &lt;strong&gt;service-b&lt;/strong&gt; → 95 log lines, bar chart shows ERROR spike windows.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6nmzns6n94in9v4g7twy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6nmzns6n94in9v4g7twy.png" alt="Log Analysis filtered by InsufficientStockException ERROR service-b" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene A: keyword + ERROR + service-b — each row has “Trace · View” to jump to the call chain&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Path B: span logs in Trace + bidirectional deep links
&lt;/h2&gt;

&lt;h4&gt;
  
  
  B1 · Trace header: Log Analysis next to TraceID
&lt;/h4&gt;

&lt;p&gt;Open a slow &lt;code&gt;GET /demo/checkout&lt;/code&gt; trace (240ms) from Trace Search. The header shows TraceID; &lt;strong&gt;Log Analysis&lt;/strong&gt; on the right jumps to the global page with traceId prefilled.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fce65gmq9kck0v5bp606i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fce65gmq9kck0v5bp606i.png" alt="Trace detail TraceID and Log Analysis link" width="791" height="38"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene B1: TraceID + Log Analysis entry — no copy-paste of traceId&lt;/em&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  B2 · Span sidebar: flame graph + Logs tab
&lt;/h4&gt;

&lt;p&gt;Spans marked &lt;strong&gt;Logs&lt;/strong&gt; on the flame tree open a sidebar Logs tab: timeline shows &lt;code&gt;Received checkout request&lt;/code&gt; → &lt;code&gt;Delegating inventory check to service-b&lt;/code&gt; INFO lines; selecting service-b’s span surfaces the ERROR stack.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftwqedkiw6muccwecuowg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftwqedkiw6muccwecuowg.png" alt="Trace flame graph and span log sidebar" width="799" height="438"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene B2: flame graph (SELECT demo_inventory highlighted) + span log timeline on the right&lt;/em&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  B3 · Deep link: “View all in Log Analysis”
&lt;/h4&gt;

&lt;p&gt;Click the sidebar footer link — the global page &lt;strong&gt;auto-fills traceId + spanId&lt;/strong&gt; and shows only the 4 logs in that span’s context.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk7lcc5gg37lgzd186cjr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk7lcc5gg37lgzd186cjr.png" alt="Deep link from Trace to Log Analysis" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene B3: URL carries traceId/spanId — checkout context logs in one view&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Path C: ask AI about logs
&lt;/h2&gt;

&lt;p&gt;The UI is for precision; AI is for &lt;strong&gt;one-sentence delegation&lt;/strong&gt;. The smart-query expert registers log tool families visible under Tool Management:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F676zcdwu0qtubw7zsvlz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F676zcdwu0qtubw7zsvlz.png" alt="AI tool management log.queryLogDetail etc" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene C0: &lt;code&gt;log.queryLogDetail&lt;/code&gt; · &lt;code&gt;queryLogsByTraceId&lt;/code&gt; · &lt;code&gt;queryLogsBySpanId&lt;/code&gt; · &lt;code&gt;queryLogTrend&lt;/code&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scenario 1&lt;/strong&gt; — search ERROR logs by service + keyword:&lt;/p&gt;

&lt;p&gt;Find service-b ERROR logs in the last hour related to InsufficientStockException. List traceId and key log summaries.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx50gr8ezkesjn9jlbvt7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx50gr8ezkesjn9jlbvt7.png" alt="AI dispatches smart query for logs" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene C1: AI brain → dispatch smart query → &lt;code&gt;getCurrentTimeRange&lt;/code&gt; + &lt;code&gt;queryLogDetail&lt;/code&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdbb6tybbfzgxw3t00piq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdbb6tybbfzgxw3t00piq.png" alt="AI returns traceId and log summary table" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene C2: summary table with traceId + &lt;code&gt;InsufficientStockException: inventory unavailable&lt;/code&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scenario 2&lt;/strong&gt; — known traceId, ask for ERROR logs and root cause:&lt;/p&gt;

&lt;p&gt;Given traceId edfa44615dcee4d6bdfeed46d84bfb20, list all ERROR logs on this trace and explain why checkout failed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1wf103zjnxudq71egexc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1wf103zjnxudq71egexc.png" alt="AI queries logs by traceId and explains checkout failure" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene C3: &lt;code&gt;queryLogsByTraceId&lt;/code&gt; → 13-span chain + ERROR logs + insufficient-inventory conclusion&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scenario 3&lt;/strong&gt; — check for ERROR log volume spikes (&lt;code&gt;queryLogTrend&lt;/code&gt;):&lt;/p&gt;

&lt;p&gt;How does service-b ERROR log volume trend over the last hour? Any obvious spike windows?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnhehdhbt5frxs691gwcy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnhehdhbt5frxs691gwcy.png" alt="AI analyzes service-b ERROR log volume trend" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Scene C4: &lt;code&gt;queryLogTrend&lt;/code&gt; → steady 2/min · no spike · ongoing inventory shortage&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tool selection&lt;/strong&gt;: search by service/level → &lt;code&gt;queryLogDetail&lt;/code&gt;; known traceId → &lt;code&gt;queryLogsByTraceId&lt;/code&gt;; specific span → &lt;code&gt;queryLogsBySpanId&lt;/code&gt;; volume spikes → &lt;code&gt;queryLogTrend&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the data comes from · vs ELK
&lt;/h2&gt;

&lt;p&gt;OTLP Logs (&lt;code&gt;:4317&lt;/code&gt; / &lt;code&gt;:4318&lt;/code&gt;) → Ingest → Doris &lt;code&gt;log_dc_record&lt;/code&gt; → &lt;code&gt;POST /log/search&lt;/code&gt;. Inject traceId via MDC on the Java side for correlation.&lt;/p&gt;

&lt;p&gt;DataBuff is &lt;strong&gt;log exploration in an APM context&lt;/strong&gt;, not a replacement for ELK/Loki. The win is Trace/Metrics/AI in one context — fewer system hops.&lt;/p&gt;

&lt;p&gt;Companion to article ⑤: ⑤ covers T→M→T→L troubleshooting &lt;strong&gt;order&lt;/strong&gt;; this article shows &lt;strong&gt;three entry points&lt;/strong&gt; for L in DataBuff on the same checkout scenario.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it yourself
&lt;/h2&gt;

&lt;h3&gt;
  
  
  One-command deploy · demo includes checkout + inventory failure
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;Star on GitHub →&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;OpenTelemetry LogsTrace correlationAI Native&lt;/p&gt;

</description>
      <category>apm</category>
      <category>devops</category>
      <category>opentelemetry</category>
      <category>ai</category>
    </item>
    <item>
      <title>OpenClaw Finally Understands OpenTelemetry APM</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:18:10 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/openclaw-finally-understands-opentelemetry-apm-4lfp</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/openclaw-finally-understands-opentelemetry-apm-4lfp</guid>
      <description>&lt;h2&gt;
  
  
  Meet DataBuff: AI-native OpenTelemetry APM
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;DataBuff&lt;/strong&gt; (&lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;github.com/databufflabs/databuff&lt;/a&gt;) is an &lt;strong&gt;open-source&lt;/strong&gt; AI-native OpenTelemetry APM — deploy with one Docker command.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In one line:&lt;/strong&gt; ingest telemetry via OTel standards first, then let AI read traces, metrics, topology, and alerts — not a chat box bolted onto dashboards.&lt;/p&gt;

&lt;h4&gt;
  
  
  📊 OpenTelemetry APM foundation
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;  Native OTLP — traces, service metrics, topology, alerting&lt;/li&gt;
&lt;li&gt;  Rich data model derived from traces (services, APIs, flows, component metrics)&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Three components&lt;/strong&gt;: Ingest → Doris → Web, low ops overhead&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  🤖 AI-native capabilities
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Multi-agent collaboration&lt;/strong&gt;: AI brain + metrics / inspection experts&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Smart query&lt;/strong&gt;: natural language over metrics, traces, topology, alerts&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Health inspection&lt;/strong&gt;: threshold-free anomaly screening with evidence chains&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;- **Capability** — What it does - **In-platform AI chat** — Ask in the Web UI: “Why is this trace slow?” or “Inspect order-service” - **MCP for external agents (this article)** — Cursor, Claude Code, OpenClaw call the same APM tools - **Official Skills** — Constrain query semantics and inspection flows — agents don't invent metrics&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fty3ygrndcoypdkbm71dl.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fty3ygrndcoypdkbm71dl.jpg" alt="DataBuff three-component architecture" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: Ingest → Doris → Platform — one command to run&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjw0iq3b6lx1x4795outq.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjw0iq3b6lx1x4795outq.jpg" alt="Global service topology" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: global topology — AI and MCP tools read the same live data&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F53czqi3l1hwtcdl5yhr2.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F53czqi3l1hwtcdl5yhr2.jpg" alt="Multi-agent troubleshooting" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: in-platform AI brain dispatches experts — external agents use the same backend via MCP&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This article:&lt;/strong&gt; DataBuff exposes platform capabilities via &lt;strong&gt;MCP + Skills&lt;/strong&gt; to &lt;strong&gt;OpenClaw&lt;/strong&gt; (and Feishu / DingTalk channels). Below: 5-minute setup for &lt;strong&gt;one-sentence whole-cluster inspection&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  am alert: five tabs, or one sentence?
&lt;/h2&gt;

&lt;p&gt;Alert fires: &lt;strong&gt;“Checkout is slow — anything wrong cluster-wide?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Old way:&lt;/strong&gt; APM dashboard → traces → topology → alert list → hand-written summary. 20–30 minutes per round.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr9xkhtaq9263kpg1ppvf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr9xkhtaq9263kpg1ppvf.png" alt="Searching traces across systems" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: multi-tab evidence stitching — agents can do it in one prompt&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With OpenClaw:&lt;/strong&gt; send one message in CLI, WebChat, or &lt;strong&gt;Feishu / DingTalk&lt;/strong&gt;. The agent calls DataBuff MCP against real OTel data in Doris, follows official Skills, and returns an evidence-backed report — not hallucinated numbers.&lt;/p&gt;

&lt;h4&gt;
  
  
  ❌ Without MCP
&lt;/h4&gt;

&lt;p&gt;The model invents “error rate 2.3%” — pure hallucination, not safe for incident channels.&lt;/p&gt;

&lt;h4&gt;
  
  
  ✅ MCP + Skills
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;inspectService&lt;/code&gt; first → traces / topology for anomalies → Chinese or English report with evidence.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzv0nbgfn0vmsmntz5sgf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzv0nbgfn0vmsmntz5sgf.png" alt="OpenClaw listing services via MCP" width="800" height="819"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: OpenClaw activity — Databuff-apm GetCurrentTimeRange / QueryServicesAll&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  MCP is the hands; Skills are the brain
&lt;/h2&gt;

&lt;p&gt;DataBuff ships an &lt;strong&gt;agent integration pack&lt;/strong&gt; (&lt;code&gt;integrations/agent/&lt;/code&gt;). You need both layers for a real ops agent:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MCP&lt;/strong&gt; = 11 APM tools (services, traces, metrics, alerts, inspection, charts)&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Skills&lt;/strong&gt; = query semantics + inspection workflow (when to inspect, time ranges, evidence chaining)&lt;/p&gt;

&lt;p&gt;- **Layer** — Contents · Examples - **MCP tools** — Live data access · queryServicesAll, inspectService, queryTraceDetail - **Skills** — Behavior rules · skill.data.metrics, skill.inspection.health&lt;/p&gt;

&lt;p&gt;External agents hit the &lt;strong&gt;same Spring beans&lt;/strong&gt; as in-platform AI experts — not pasted APIs, real OTel data in Doris.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbjt3tpjm5upxfhkgqd4z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbjt3tpjm5upxfhkgqd4z.png" alt="OpenClaw Skills page" width="800" height="819"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: skill.data.metrics enabled on OpenClaw Skills page&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  -minute setup: MCP + Skills end-to-end
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Prerequisite:&lt;/strong&gt; DataBuff deployed; OpenClaw can reach the Web port.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 0 · Get the official integration pack&lt;/strong&gt; — do &lt;strong&gt;not&lt;/strong&gt; download Skills/MCP from third-party marketplaces:&lt;/p&gt;

&lt;p&gt;git clone &lt;a href="https://github.com/databufflabs/databuff.git" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff.git&lt;/a&gt; cd databuff/integrations/agent/&lt;/p&gt;

&lt;p&gt;Or browse &lt;code&gt;integrations/agent/&lt;/code&gt; on GitHub. Contains &lt;code&gt;skills/&lt;/code&gt; (2 official Skills) and &lt;code&gt;mcp/&lt;/code&gt; (client config examples).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1 · Deploy DataBuff&lt;/strong&gt; (if not installed):&lt;/p&gt;

&lt;p&gt;curl -fsSL &lt;a href="https://databuff.ai/databuff/ai-apm-install.sh" rel="noopener noreferrer"&gt;https://databuff.ai/databuff/ai-apm-install.sh&lt;/a&gt; | bash&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7erg8tsxv0jhlwh3cm6j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7erg8tsxv0jhlwh3cm6j.png" alt="DataBuff install success" width="800" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: one-command install, note Web URL and port&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2 · Configure MCP&lt;/strong&gt; — copy &lt;code&gt;mcp/openclaw-amc-config.example.json&lt;/code&gt;, set &lt;code&gt;mcp.url&lt;/code&gt; to your DataBuff host:&lt;/p&gt;

&lt;p&gt;{ "name": "databuff-apm", "description": "DataBuff APM MCP — metrics, traces, topology, alerts, inspection", "mcp": { "transport": "streamable-http", "url": "&lt;a href="http://YOUR%5C_DATABUFF%5C_HOST:PORT/mcp" rel="noopener noreferrer"&gt;http://YOUR\_DATABUFF\_HOST:PORT/mcp&lt;/a&gt;" }, "skills": [ "skill.data.metrics", "skill.inspection.health" ] }&lt;/p&gt;

&lt;p&gt;Replace &lt;code&gt;YOUR_DATABUFF_HOST:PORT&lt;/code&gt;. MVP needs no Authorization header. MCP endpoint: &lt;code&gt;/mcp&lt;/code&gt; (Streamable HTTP).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3 · Install Skills&lt;/strong&gt; — copy &lt;code&gt;integrations/agent/skills/&lt;/code&gt; to your client Skills path:&lt;/p&gt;

&lt;p&gt;- **Client** — Skills path - **OpenClaw** — OpenClaw workspace skills/ (Control UI → Skills should list both) - **Cursor** — ~/.cursor/skills/ or project .cursor/skills/ - **Claude Code** — ~/.claude/skills/&lt;/p&gt;

&lt;p&gt;# From databuff repo root (OpenClaw example — adjust target path) cp -r integrations/agent/skills/skill.data.metrics /skills/ cp -r integrations/agent/skills/skill.inspection.health /skills/&lt;/p&gt;

&lt;p&gt;Each Skill is a directory with &lt;code&gt;SKILL.md&lt;/code&gt;. Synced with &lt;code&gt;deploy/common/skills/&lt;/code&gt; — re-copy after updates.&lt;/p&gt;

&lt;p&gt;- **skillId** — Purpose - **skill.data.metrics** — APM metrics, trace, alert query semantics (time ranges, which tool) - **skill.inspection.health** — Health inspection flow (inspect first, gather evidence, conclude)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4 · Verify&lt;/strong&gt; — after restarting OpenClaw Gateway:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Control UI → &lt;strong&gt;Skills&lt;/strong&gt;: &lt;code&gt;skill.data.metrics&lt;/code&gt;, &lt;code&gt;skill.inspection.health&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;  Control UI → &lt;strong&gt;Instances&lt;/strong&gt;: Gateway online&lt;/li&gt;
&lt;li&gt;  New chat → Activity: &lt;code&gt;Databuff-apm&lt;/code&gt; tools (e.g. &lt;code&gt;QueryServicesAll&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp8bkj7u9b7qnw2yb6ytk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp8bkj7u9b7qnw2yb6ytk.png" alt="OpenClaw connected instances" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: Gateway and Control UI connected (127.0.0.1:18789)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security:&lt;/strong&gt; MVP has no separate MCP token — use on private network / VPN; add a gateway before public exposure.&lt;/p&gt;

&lt;h2&gt;
  
  
  Three prompts to validate the full path
&lt;/h2&gt;

&lt;p&gt;①&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“List services from the last hour”&lt;/strong&gt; — Skill parses time → &lt;code&gt;getCurrentTimeRange&lt;/code&gt; → &lt;code&gt;queryServicesAll&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzv0nbgfn0vmsmntz5sgf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzv0nbgfn0vmsmntz5sgf.png" alt="List services MCP calls" width="800" height="819"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: 7 services in the last hour (service-a / service-b / MySQL, etc.)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;②&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Inspect service-a health”&lt;/strong&gt; — &lt;code&gt;inspectService&lt;/code&gt; → &lt;code&gt;queryMetricData&lt;/code&gt; / &lt;code&gt;queryServiceAlarms&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw4lm3k7m63uw60isv1f6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw4lm3k7m63uw60isv1f6.png" alt="Inspect service-a tool chain" width="800" height="819"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: Activity 3 tools — InspectService / QueryMetricData / QueryServiceAlarms&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;③&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Chart service-a error rate for the past hour”&lt;/strong&gt; — &lt;code&gt;queryMetricData&lt;/code&gt; + &lt;code&gt;drawTrendCharts&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flinnqr69okcker978yeq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flinnqr69okcker978yeq.png" alt="Error rate trend chart" width="800" height="819"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot: 0% error rate trend — real data, not invented&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pass criteria:&lt;/strong&gt; tool panel shows &lt;code&gt;queryServicesAll&lt;/code&gt; / &lt;code&gt;inspectService&lt;/code&gt; with JSON responses — not plain-text guesses.&lt;/p&gt;

&lt;h2&gt;
  
  
  vs in-platform AI and vs Cursor?
&lt;/h2&gt;

&lt;p&gt;- **Scenario** — Path · Best for - **DataBuff Web UI** — AgentScope JAVA_BEAN + multi-expert · Day-to-day console troubleshooting - **OpenClaw / Feishu / DingTalk** — MCP + Skills · One-liner queries in alert channels - **Cursor / Claude Code** — Same MCP + Skills · Developers querying APM from the IDE&lt;/p&gt;

&lt;p&gt;All three paths are independent. OpenClaw brings APM into &lt;strong&gt;your existing agent runtime&lt;/strong&gt; — no extra browser tab for AI incidents.&lt;/p&gt;

&lt;p&gt;Full config and FAQ: &lt;code&gt;docs/manual/agent-integration.md&lt;/code&gt; and &lt;code&gt;integrations/agent/README.md&lt;/code&gt; in the repo.&lt;/p&gt;

&lt;h2&gt;
  
  
  From guessing metrics to calling real APM
&lt;/h2&gt;

&lt;p&gt;DataBuff opens APM to any agent runtime; OpenClaw / Feishu / DingTalk are just entry points — &lt;strong&gt;MCP for real data, Skills for semantics&lt;/strong&gt; is the core.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⭐ Wire up DataBuff agent integration in 5 minutes
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff/tree/main/integrations/agent" rel="noopener noreferrer"&gt;github.com/databufflabs/databuff/integrations/agent&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Try: “Inspect service-a, then check if anything is wrong cluster-wide.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;View on GitHub →&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>opensource</category>
      <category>opentelemetry</category>
    </item>
    <item>
      <title>DataBuff v0.1.3 Release Notes</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:17:59 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/databuff-v013-release-notes-22gg</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/databuff-v013-release-notes-22gg</guid>
      <description>&lt;p&gt;DataBuff &lt;strong&gt;v0.1.3&lt;/strong&gt; focuses on three things: &lt;strong&gt;native SkyWalking gRPC ingest&lt;/strong&gt; (no Agent swap), &lt;strong&gt;Ops Expert install recovery and read-only SSH troubleshooting&lt;/strong&gt;, and &lt;strong&gt;verified in-place upgrades&lt;/strong&gt; — built for teams already on SkyWalking and for installs that exit non-zero while the UI still opens.&lt;/p&gt;

&lt;h2&gt;
  
  
  Highlights
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Native SkyWalking ingest&lt;/strong&gt;: ingest listens on &lt;strong&gt;11800&lt;/strong&gt; (OAP default); Java only changes &lt;code&gt;collector.backend_service&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Ask why checkout is slow&lt;/strong&gt;: natural-language questions return traceId and bottleneck spans without browsing the Trace list first.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Logs link to traces&lt;/strong&gt;: one click from a log row to the full call chain.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Ops Expert · troubleshooting mode&lt;/strong&gt;: when install exits non-zero, Web still opens; configure an LLM and let Ops Expert recover Doris over read-only SSH.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Ops Expert · on-host checks&lt;/strong&gt;: align container/host evidence with slow spans — complements telemetry-only AI.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;In-place upgrade&lt;/strong&gt;: upgrade scripts keep &lt;code&gt;data/&lt;/code&gt; intact; amd64/arm64 offline packages ship for 0.1.3.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Keep your SkyWalking Agent
&lt;/h2&gt;

&lt;p&gt;Ingest listens on SkyWalking gRPC port &lt;strong&gt;11800&lt;/strong&gt;. No Agent jar swap — topology, traces, JVM metrics, and log correlation work the same as the OTLP path.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8wn1qkuole3yk94wpoar.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8wn1qkuole3yk94wpoar.png" alt="SkyWalking protocol checkout topology" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 1 · SW protocol demo: checkout dependencies in DataBuff topology&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8duaq8o0x97kp4pfzrro.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8duaq8o0x97kp4pfzrro.png" alt="ingest ports 4317/4318/11800" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 2 · Ingest exposes OTLP (4317/4318) and SkyWalking (11800)&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Checkout latency: ask once, get an answer
&lt;/h2&gt;

&lt;p&gt;Demo scenario: &lt;code&gt;GET /demo/checkout&lt;/code&gt; P99 around &lt;strong&gt;240ms&lt;/strong&gt;. After ingest, troubleshooting shifts from browsing traces to asking AI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fci6hqy47g4axemoc0wb1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fci6hqy47g4axemoc0wb1.png" alt="checkout P99 240ms" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 3 · service-a checkout ~240ms avg — triggers AI and Ops Expert&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2jqg5gs25o9umjvpki3f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2jqg5gs25o9umjvpki3f.png" alt="Ask AI why checkout is slow" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 4 · Natural-language question over SkyWalking Agent segments&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6s1s6uijqkslv99cu03e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6s1s6uijqkslv99cu03e.png" alt="AI trace breakdown" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 5 · 240ms request split by service/middleware; bottleneck span highlighted&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fokja3tkbg5bi8me42i3i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fokja3tkbg5bi8me42i3i.png" alt="checkout trace flame graph" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 6 · Jump to flame graph by traceId — DB/Cache/MQ/RPC expandable&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3g6v77w3q7lvvqect7fo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3g6v77w3q7lvvqect7fo.png" alt="Logs linked to traces" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 7 · Log analytics: each row links to the call chain&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Ops Expert: install failed, UI still opens
&lt;/h2&gt;

&lt;p&gt;When &lt;code&gt;install.sh&lt;/code&gt; / &lt;code&gt;start.sh&lt;/code&gt; exits non-zero and Doris FE/BE are not ready, Web enters &lt;strong&gt;troubleshooting mode&lt;/strong&gt;: configure an LLM API key, pick the built-in &lt;strong&gt;Ops Expert&lt;/strong&gt;, and recover containers over read-only SSH.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzvuk6h3c3cjkd5ub33vq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzvuk6h3c3cjkd5ub33vq.png" alt="Web troubleshooting mode banner" width="800" height="319"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 8 · Start failed but troubleshooting guidance prints — configure LLM before Doris is healthy&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Ops Expert: no OTel data — conclusion in minutes
&lt;/h2&gt;

&lt;p&gt;For missing OTel data, container restarts, port conflicts, and similar chores, Ops Expert runs read-only Bash + SSH to align host evidence with what APM shows.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjnllyngx61s49p8uyxml.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjnllyngx61s49p8uyxml.png" alt="Ops Expert prompt" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 9 · Describe missing OTel data to Ops Expert&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsvcb4pvdg3es8t7hj15i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsvcb4pvdg3es8t7hj15i.png" alt="Ops Expert SSH investigation" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 10 · Read-only Bash checks containers and ports&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4jxhjwgx6sxpmbjss6rg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4jxhjwgx6sxpmbjss6rg.png" alt="Ops Expert conclusion" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 11 · Evidence-backed conclusion ready for the incident channel&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Full SkyWalking walkthrough: &lt;a href="https://dev.to/blog/en/databuff-skywalking-native-ingest/"&gt;native ingest deep dive&lt;/a&gt;. Five Ops Expert scenarios: &lt;a href="https://dev.to/blog/en/databuff-ops-expert-runtime-troubleshoot/"&gt;runtime troubleshooting playbook&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Install &amp;amp; upgrade
&lt;/h2&gt;

&lt;p&gt;New install: &lt;a href="https://dev.to/docs/en/guide/docker"&gt;Docker installation&lt;/a&gt;. Upgrade an existing deployment: &lt;a href="https://dev.to/docs/en/operations/upgrade-uninstall"&gt;Upgrade and uninstall&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff/releases/tag/0.1.3" rel="noopener noreferrer"&gt;GitHub Release v0.1.3&lt;/a&gt; · &lt;a href="https://demo.databuff.ai" rel="noopener noreferrer"&gt;Live demo&lt;/a&gt; · &lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;Star on GitHub&lt;/a&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>apm</category>
      <category>java</category>
      <category>opentelemetry</category>
    </item>
    <item>
      <title>SkyWalking Meets AI-Native Troubleshooting</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:17:38 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/skywalking-meets-ai-native-troubleshooting-9l8</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/skywalking-meets-ai-native-troubleshooting-9l8</guid>
      <description>&lt;h2&gt;
  
  
  First, SkyWalking
&lt;/h2&gt;

&lt;p&gt;Many Java teams run &lt;strong&gt;SkyWalking&lt;/strong&gt; in production — an Apache top-level project whose Agent often stays in place for years. Typical strengths:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Java Agent bytecode enhancement with minimal app changes&lt;/li&gt;
&lt;li&gt;  Segments bundle Spans and cross-service refs so traces stay readable&lt;/li&gt;
&lt;li&gt;  Traces, JVM metrics, and logs can share one reporting path&lt;/li&gt;
&lt;li&gt;  Strong docs and community; OAP + UI battle-tested at scale&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once Segments land in OAP, you get service topology, trace lists, span trees, and JVM charts — SkyWalking is solid at &lt;em&gt;getting traces in&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7iq5xybkral1n7u36ywi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7iq5xybkral1n7u36ywi.png" alt="SkyWalking native UI: General service overview" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;SkyWalking UI (:18080): services, Apdex, latency, endpoint load — the daily ops view&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Where teams spend time is &lt;strong&gt;turning that data into answers&lt;/strong&gt;: alerts without traceId, hunting representative slow traces, summarizing span trees for incident channels, jumping between topology, metrics, and logs. That is not a SkyWalking flaw — it is the next step: &lt;strong&gt;faster conclusions from the same telemetry&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;DataBuff v0.1.3 &lt;strong&gt;layers AI on top&lt;/strong&gt; of mature SkyWalking collection: Agents keep reporting, Segments stay identical; you can ask why an endpoint is slow in natural language and view traces, metrics, and logs in one flow. Here is the most visible change.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: This article is about AI-assisted interpretation on SkyWalking ingestion — same Agent, same Segment data — focused on whether one pipeline can produce answers faster.&lt;/p&gt;

&lt;h2&gt;
  
  
  Highlight: slow checkout — ask once, get an answer
&lt;/h2&gt;

&lt;p&gt;Demo: &lt;code&gt;GET /demo/checkout&lt;/code&gt; P99 ~ &lt;strong&gt;240ms&lt;/strong&gt;. Alerts often ship &lt;strong&gt;without traceId&lt;/strong&gt;. With DataBuff, triage shifts from scrolling trace lists to &lt;strong&gt;asking AI&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;①&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask directly&lt;/strong&gt; (no traceId): “Why is service-a’s checkout endpoint slow lately?”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fclvcrs6dbzxyvesbqbnh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fclvcrs6dbzxyvesbqbnh.png" alt="Ask AI about slow checkout" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Natural-language question; backend reads Segment data from the SkyWalking Agent&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;②&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI breaks down the trace&lt;/strong&gt;: typical slow trace, segment timings, bottleneck span — no manual row-by-row comparison.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr0onteyf00az7lu62ssp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr0onteyf00az7lu62ssp.png" alt="AI trace latency breakdown" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;240ms request split across services and middleware; bottleneck span is obvious&lt;/p&gt;

&lt;p&gt;③&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Structured conclusion&lt;/strong&gt;: actionable incident text, not just “maybe the DB is slow.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fglcotao5764dgnacgv5h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fglcotao5764dgnacgv5h.png" alt="AI troubleshooting report" width="800" height="290"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;traceId + bottleneck + priority — ready to paste into Slack or war room&lt;/p&gt;

&lt;p&gt;④&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;One-click verify&lt;/strong&gt;: jump to the flame graph with the returned traceId and confirm end-to-end spans.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frw5vbnm26fq7mur0y170.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frw5vbnm26fq7mur0y170.png" alt="Checkout trace flame graph" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Flame graph from SkyWalking Segments: &lt;code&gt;GET /demo/checkout&lt;/code&gt; 240ms, DB / cache / MQ / RPC expandable&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What you gain&lt;/strong&gt;: from “filter list → read span tree → write incident note” to &lt;strong&gt;ask → get traceId → verify in UI&lt;/strong&gt;. Same Segment source; added AI readout.&lt;/p&gt;

&lt;p&gt;💬&lt;/p&gt;

&lt;h4&gt;
  
  
  AI slow-path Q&amp;amp;A
&lt;/h4&gt;

&lt;p&gt;No traceId upfront — endpoint-level question returns bottleneck span&lt;/p&gt;

&lt;p&gt;🔗&lt;/p&gt;

&lt;h4&gt;
  
  
  Logs → trace
&lt;/h4&gt;

&lt;p&gt;“Trace · View” on log lines jumps to the call chain for slow + ERROR context&lt;/p&gt;

&lt;p&gt;🖥️&lt;/p&gt;

&lt;h4&gt;
  
  
  Ops expert review
&lt;/h4&gt;

&lt;p&gt;After AI flags JVM risk, read-only SSH check on host/container&lt;/p&gt;

&lt;h2&gt;
  
  
  Go deeper: topology, service flow, JVM
&lt;/h2&gt;

&lt;p&gt;After AI answers, the same UI keeps going — no tool hopping.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu6ynxh6ep06qx9t2xeaz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu6ynxh6ep06qx9t2xeaz.png" alt="Global topology checkout dependencies" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Global topology: checkout upstream/downstream in one graph&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjz79plukrx8284mc000t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjz79plukrx8284mc000t.png" alt="service-a service flow" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Service flow: 240ms entry, downstream contribution expandable&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb5ucfxy1237xlec1tooa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb5ucfxy1237xlec1tooa.png" alt="Logs linked to traces" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Log analysis: each row links to traces — slow requests and ERROR in one context&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fplriibirg6g3vvw11cha.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fplriibirg6g3vvw11cha.png" alt="service-a JVM metrics" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;JVM charts from SkyWalking: threads, GC, heap — cross-check with AI and ops expert&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Before vs after: how the path changes
&lt;/h2&gt;

&lt;p&gt;For the checkout scenario, SkyWalking-only UI vs DataBuff overlay:&lt;/p&gt;

&lt;p&gt;- **Step** — SkyWalking UI only · With DataBuff - **1 · Find service** — General → Service → pick service-a · Topology / service list → service-a - **2 · Find slow trace** — Trace page filter checkout → open rows one by one · Ask AI → traceId + bottleneck span returned - **3 · See bottleneck** — Read span tree manually for DB / RPC time · AI summary + flame graph jump - **4 · Conclusion** — Human writes “maybe DB query slow” · AI remediation hints; ops expert can SSH-check JVM - **5 · Logs** — Separate log system, match traceId · Log list “Trace · View” → call chain&lt;/p&gt;

&lt;p&gt;Your SkyWalking Agent keeps reporting; you add &lt;strong&gt;AI query, unified UI, and log deep-links&lt;/strong&gt; — same collection target.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to connect: keep the Agent, point backend to DataBuff
&lt;/h2&gt;

&lt;p&gt;v0.1.3 ingests native SkyWalking gRPC on &lt;strong&gt;11800&lt;/strong&gt; (OAP default). &lt;strong&gt;No Agent jar swap&lt;/strong&gt; — change the collector address:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp0pusge730oa8aiqc2nl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp0pusge730oa8aiqc2nl.png" alt="ingest ports 4317/4318/11800 and demo env" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Ingest exposes OpenTelemetry (4317/4318) and SkyWalking (11800) — polyglot services side by side&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6nvaev2fxtjmpp1osglv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6nvaev2fxtjmpp1osglv.png" alt="SkyWalking agent.config collector.backend\_service" width="799" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Key Agent setting: &lt;code&gt;collector.backend_service&lt;/code&gt; → DataBuff host&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;# agent.config agent.service_name=${SW_AGENT_NAME:your-service} collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:your-databuff-host:11800}&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjaqnb0zcxta8xbnptlvc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjaqnb0zcxta8xbnptlvc.png" alt="SkyWalking gRPC and OTLP dual path" width="800" height="317"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;SkyWalking gRPC and OpenTelemetry into one ingest → storage → AI + Web&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Two onboarding paths, both AI-capable&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;- **Mode** — Setup · Best for - **Side-by-side trial** — Keep SkyWalking OAP; read SkyWalking data via MCP · Cannot move Agents yet — try AI Q&amp;amp;A first - **Native ingest** — Point Agent to DataBuff :11800, Segments direct to ingest · Switch backend; traces / JVM / logs unified in DataBuff&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;h4&gt;
  
  
  Do I replace the Agent?
&lt;/h4&gt;

&lt;p&gt;No. Existing SkyWalking Java Agents work — usually only &lt;code&gt;collector.backend_service&lt;/code&gt; changes.&lt;/p&gt;

&lt;h4&gt;
  
  
  Must OAP go away immediately?
&lt;/h4&gt;

&lt;p&gt;No. Keep OAP for a trial; when you commit to DataBuff, point Agents over in batches and verify checkout-style Q&amp;amp;A works.&lt;/p&gt;

&lt;h4&gt;
  
  
  Can OpenTelemetry coexist?
&lt;/h4&gt;

&lt;p&gt;Yes. Java on SkyWalking (11800), Go/Python on OTLP (4317), one DataBuff UI.&lt;/p&gt;

&lt;h4&gt;
  
  
  What does AI actually do?
&lt;/h4&gt;

&lt;p&gt;Demo covers on-call staples: &lt;strong&gt;slow endpoint → traceId + bottleneck span&lt;/strong&gt;, &lt;strong&gt;log line → trace&lt;/strong&gt;, &lt;strong&gt;JVM curves for follow-up&lt;/strong&gt;. You do not need to be a trace expert to get direction.&lt;/p&gt;

&lt;h4&gt;
  
  
  Who is this for?
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;  SkyWalking in production, want AI Q&amp;amp;A on existing trace data&lt;/li&gt;
&lt;li&gt;  Java-heavy estates not ready to re-instrument with OpenTelemetry&lt;/li&gt;
&lt;li&gt;  Want traces, logs, and metrics in one troubleshooting flow&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Suggested path&lt;/strong&gt;: test env or one instance → change Agent address → hit checkout-like traffic → ask AI “why slow lately” → confirm traceId + flame graph → expand rollout.&lt;/p&gt;

&lt;h3&gt;
  
  
  SkyWalking ingestion + AI interpretation
&lt;/h3&gt;

&lt;p&gt;Keep your Agent · Ask once for answers · Logs link to traces&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;Star on GitHub →&lt;/a&gt;&lt;/p&gt;

</description>
      <category>java</category>
      <category>apm</category>
      <category>ai</category>
      <category>opentelemetry</category>
    </item>
    <item>
      <title>DataBuff v0.1.4 Release Notes</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:17:17 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/databuff-v014-release-notes-2n26</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/databuff-v014-release-notes-2n26</guid>
      <description>&lt;p&gt;DataBuff &lt;strong&gt;v0.1.4&lt;/strong&gt; is out: configurable seven AI ops entry points, multi-agent collaboration and deep inspection reports, plus SkyWalking/Trace data fidelity and Doris/upgrade hardening. Relative to v0.1.3: &lt;strong&gt;45 commits / 274 files&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Highlights
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Seven AI ops entry points&lt;/strong&gt;: See, Squad, Inspect, Diagnose, Repair, Predict, Answer — names, suggested prompts, and expert bindings are configurable.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Multi-agent collaboration&lt;/strong&gt;: parallel across experts, serial within one expert; HTML / Markdown / SVG reports previewable in the workspace.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Deep service inspection&lt;/strong&gt;: synthesizes metrics, logs, alerts, dependencies, error traces, instances, and JVM signals into an evidence-backed HTML report.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Product Q&amp;amp;A expert&lt;/strong&gt;: answers deploy/ingest/config questions from in-image docs and code.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;SkyWalking MQ virtual services&lt;/strong&gt;: MQ producers normalized; RPC/entry stats and Trace time alignment fixed.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Doris runtime recovery&lt;/strong&gt;: AI troubleshooting entry stays available during outages; auto-hydrate after recovery without restarting Web.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Upgrade compatibility&lt;/strong&gt;: legacy Docker Compose auto-selected; backs up &lt;code&gt;data/&lt;/code&gt; before upgrade with rollback on failure.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Seven AI ops entry points
&lt;/h2&gt;

&lt;p&gt;Go to &lt;strong&gt;AI Platform → AI Chat&lt;/strong&gt;. Pick a capability from the home surface; configure names, prompts, and expert bindings in the admin page.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6pgsy8742s6mlymct2lu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6pgsy8742s6mlymct2lu.png" alt="AI chat home with seven capability entry points" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 1 · AI chat home with seven configurable entry points&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Multi-agent collaboration
&lt;/h2&gt;

&lt;p&gt;Hand complex tasks to the &lt;strong&gt;AI brain&lt;/strong&gt; — it dispatches specialists in parallel (e.g. data queries + health inspection) and merges an actionable report.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9hvazshcn7ivhiwyyhbb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9hvazshcn7ivhiwyyhbb.png" alt="AI brain dispatching data and inspection experts" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 2 · Parallel dispatchExpertTask calls to data and inspection experts&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw1eld66dit5vzj25cmlc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw1eld66dit5vzj25cmlc.png" alt="Multi-agent joint diagnosis report" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 3 · P0/P1 summary with evidence chain, previewable in chat&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Deep service inspection
&lt;/h2&gt;

&lt;p&gt;Go to &lt;strong&gt;AI Platform → Smart Inspection&lt;/strong&gt;. One sentence triggers a full HTML report — entry metrics, error logs, downstream health, and graded conclusions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F81m30gokgaapmxuvca8r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F81m30gokgaapmxuvca8r.png" alt="Smart inspection trigger" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 4 · Trigger inspection and request an HTML report&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpbamd2y82gqohmprfgu3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpbamd2y82gqohmprfgu3.png" alt="HTML inspection report" width="800" height="1026"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 5 · HTML report: health scores, entry metrics, errors, downstream deps&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Product Q&amp;amp;A expert
&lt;/h2&gt;

&lt;p&gt;Deployment, ingest, port, and alert questions are answered from in-image DataBuff docs and code — not model memory alone.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fifibdksg4myt80psrqvd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fifibdksg4myt80psrqvd.png" alt="Product Q&amp;amp;A expert" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 6 · Product Q&amp;amp;A expert grounded in in-image docs&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Data fidelity: MQ virtual services &amp;amp; topology
&lt;/h2&gt;

&lt;p&gt;v0.1.4 normalizes SkyWalking/OTel MQ producers into virtual services and fixes RPC CLIENT/outbound peer mapping, entry stats, and Trace end-time alignment.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F159xwaspi2cycrtdc5eh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F159xwaspi2cycrtdc5eh.png" alt="MQ dedicated page" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 7 · MQ page: producers and consumers tracked separately&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9uz29yb47vqb781j53ck.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9uz29yb47vqb781j53ck.png" alt="Global topology" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 8 · Global topology: checkout dependencies at a glance&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6amilqdyw4b1y4urb2ho.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6amilqdyw4b1y4urb2ho.png" alt="Service flow" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Fig. 9 · Service flow: per-downstream contribution for RCA&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Install &amp;amp; upgrade
&lt;/h2&gt;

&lt;p&gt;New install: &lt;a href="https://dev.to/docs/en/guide/docker"&gt;Docker installation&lt;/a&gt;. Upgrade an existing deployment: &lt;a href="https://dev.to/docs/en/operations/upgrade-uninstall"&gt;Upgrade and uninstall&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff/releases/tag/0.1.4" rel="noopener noreferrer"&gt;GitHub Release v0.1.4&lt;/a&gt; · &lt;a href="https://demo.databuff.ai" rel="noopener noreferrer"&gt;Live demo&lt;/a&gt; · &lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;Star on GitHub&lt;/a&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>apm</category>
      <category>ai</category>
      <category>opentelemetry</category>
    </item>
    <item>
      <title>5 Ops Tasks That Take Half an Hour — Ops Expert Finishes in 3 Minutes</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:16:56 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/5-ops-tasks-that-take-half-an-hour-ops-expert-finishes-in-3-minutes-1ffm</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/5-ops-tasks-that-take-half-an-hour-ops-expert-finishes-in-3-minutes-1ffm</guid>
      <description>&lt;p&gt;On-call pain is rarely that a problem is “too hard.” It’s that &lt;strong&gt;you already know what to check — and still have to SSH in and type every command yourself&lt;/strong&gt;. These five show up in almost every test environment:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;OTel won’t connect / no data&lt;/strong&gt; — SDK is configured, the platform is blank; you guess endpoint, port, or a dead process.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Container keeps restarting&lt;/strong&gt; — you see Restarting, dare not poke randomly, and crawling logs inside the container is slow.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Inspect real Java JVM flags&lt;/strong&gt; — startup args, container limits, and effective values disagree; you bounce between &lt;code&gt;jinfo&lt;/code&gt; / &lt;code&gt;jcmd&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Port in use, service won’t start&lt;/strong&gt; — &lt;code&gt;lsof&lt;/code&gt; / &lt;code&gt;ss&lt;/code&gt; once, then make sure you don’t kill the wrong process.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;CPU hotspots&lt;/strong&gt; — flame-graph tooling slips your mind; sampling configs take half a day before a chart appears.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Solo, these jobs often take &lt;strong&gt;15–40 minutes&lt;/strong&gt; (find the host, log in, recall commands, reconcile the conclusion). With DataBuff &lt;strong&gt;Ops Expert&lt;/strong&gt;, the same work usually lands in &lt;strong&gt;1–3 minutes&lt;/strong&gt;: open &lt;strong&gt;AI Platform → AI Chat&lt;/strong&gt;, pick Ops Expert, describe the symptom in plain language.&lt;/p&gt;

&lt;p&gt;- **Scenario** — DIY SSH (typical) · Ops Expert (measured) - **OTel won’t connect** — endpoint / port / process ~15–25 min · ~1–2 min to a conclusion - **Container restart loop** — log diving ~20–40 min · ~2–3 min to find &amp;amp; fix - **JVM flags** — jinfo / jcmd ~10–20 min · ~1 min - **Port conflict** — ss / lsof ~5–15 min · ~1 min - **Flame graph** — tooling + sample ~20–40 min · ~2–3 min&lt;/p&gt;

&lt;p&gt;Walkthrough below: three shots per scenario — &lt;strong&gt;your prompt&lt;/strong&gt; → &lt;strong&gt;Ops Expert at work&lt;/strong&gt; → &lt;strong&gt;the conclusion&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;1. OpenTelemetry won’t connect / no data&lt;/p&gt;

&lt;p&gt;Example prompt:&lt;/p&gt;

&lt;p&gt;Test env OTel won’t connect and the platform has no data. Check whether 4317/4318 are reachable and tell me in one sentence if the endpoint is correct.&lt;/p&gt;

&lt;p&gt;1 Prompt2 Process3 Conclusion&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftv48d3zu64kpvk1booxf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftv48d3zu64kpvk1booxf.png" alt="User asks Ops Expert about OTel ingest" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;① User prompt&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw3ldvbdgbtld4rqgvufo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw3ldvbdgbtld4rqgvufo.png" alt="Ops Expert running OTel investigation" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;② Ops Expert process&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3zhei33h5oafdhanlh6u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3zhei33h5oafdhanlh6u.png" alt="Ops Expert OTel conclusion" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;③ Ops Expert conclusion&lt;/p&gt;

&lt;p&gt;2. Container keeps restarting&lt;/p&gt;

&lt;p&gt;Example prompt:&lt;/p&gt;

&lt;p&gt;ai-apm-demo keeps Restarting — help me get it healthy.&lt;/p&gt;

&lt;p&gt;1 Prompt2 Process3 Conclusion&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdybul0so7j3bukrzgi5w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdybul0so7j3bukrzgi5w.png" alt="User asks about container restart loop" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;① User prompt&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fatx9ecu3x682vzg93gf4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fatx9ecu3x682vzg93gf4.png" alt="Ops Expert fixing container restart" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;② Ops Expert process&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmwdct1aqhairt505laox.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmwdct1aqhairt505laox.png" alt="Ops Expert conclusion memory 10MB OOM to 512MB" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;③ Conclusion (memory limit 10MB → OOM 137 → raised to 512MB)&lt;/p&gt;

&lt;p&gt;3. Inspect Java runtime flags&lt;/p&gt;

&lt;p&gt;Example prompt:&lt;/p&gt;

&lt;p&gt;Show me the effective JVM flags for the ai-apm-web Java process — especially heap and GC.&lt;/p&gt;

&lt;p&gt;1 Prompt2 Process3 Conclusion&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn9nvruhnepz4qbtabpf4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn9nvruhnepz4qbtabpf4.png" alt="User asks for JVM flags" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;① User prompt&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsnoawafktjjfxe2nvuo3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsnoawafktjjfxe2nvuo3.png" alt="Ops Expert querying JVM flags" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;② Ops Expert process&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn7adnvm0h2gms8evzt99.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fn7adnvm0h2gms8evzt99.png" alt="Ops Expert JVM conclusion" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;③ Ops Expert conclusion&lt;/p&gt;

&lt;p&gt;4. Port in use — service won’t start&lt;/p&gt;

&lt;p&gt;Example prompt:&lt;/p&gt;

&lt;p&gt;Who is holding port 27403? Tell me the process and command — do not kill anything.&lt;/p&gt;

&lt;p&gt;1 Prompt2 Process3 Conclusion&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faptgqrdjh6f9sy7xzibd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faptgqrdjh6f9sy7xzibd.png" alt="User asks about port conflict" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;① User prompt&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqc545ptjqyg6i6wsq2ns.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqc545ptjqyg6i6wsq2ns.png" alt="Ops Expert checking port ownership" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;② Ops Expert process&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0jyvx0tmunoicsb4nrrr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0jyvx0tmunoicsb4nrrr.png" alt="Ops Expert port conclusion" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;③ Ops Expert conclusion&lt;/p&gt;

&lt;p&gt;5. Capture a flame graph&lt;/p&gt;

&lt;p&gt;Example prompt:&lt;/p&gt;

&lt;p&gt;Take a short CPU flame graph for the ai-apm-web Java service on the test host and point out the hotspots.&lt;/p&gt;

&lt;p&gt;1 Prompt2 Process3 Conclusion&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4fmorz8qvqwvbwjixnmc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4fmorz8qvqwvbwjixnmc.png" alt="User asks for a flame graph" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;① User prompt&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc2i1f7tor4oixzjgiyzd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc2i1f7tor4oixzjgiyzd.png" alt="Ops Expert sampling flame graph" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;② Ops Expert process&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa3gjvtwzdbxxyajnopa7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa3gjvtwzdbxxyajnopa7.png" alt="Ops Expert flame graph conclusion" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;③ Conclusion (sample result + hotspot readout)&lt;/p&gt;

&lt;p&gt;Same loop every time: describe the symptom → watch the process → read the conclusion. The timing table at the top is the DIY SSH vs Ops Expert gap.&lt;/p&gt;

&lt;p&gt;Open source · one-line install&lt;/p&gt;

&lt;p&gt;&lt;code&gt;curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub (Star welcome):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Live demo:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://demo.databuff.ai" rel="noopener noreferrer"&gt;https://demo.databuff.ai&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ops ExpertOTelCrashLoopFlame graph&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opentelemetry</category>
      <category>apm</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Open-Source AIOps, Finally Someone Built It</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:15:56 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/open-source-aiops-finally-someone-built-it-4km5</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/open-source-aiops-finally-someone-built-it-4km5</guid>
      <description>&lt;p&gt;Gartner coined &lt;em&gt;AIOps&lt;/em&gt; back in 2016. For years the gut feeling was “vaporware”: commercial tools are expensive, closed, and black-box; in open source you get alert-noise scripts or log analyzers — nothing that truly wires AI into live monitoring data and can &lt;em&gt;fix&lt;/em&gt; problems. The moment I got DataBuff running, my first thought was — &lt;strong&gt;someone finally built it&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This post skips architecture slides and protocol names. I walk through seven scenarios I ran hands-on in a test environment. Each starts with one sentence; the AI pulls data, draws conclusions, and in some cases SSHs in to repair. After these, AIOps stops being a deck concept and becomes something you can use.&lt;/p&gt;

&lt;p&gt;What it is: open source, AI-native, OpenTelemetry APM&lt;/p&gt;

&lt;p&gt;One-line positioning: DataBuff is an &lt;strong&gt;open-source, AI-native APM built on OpenTelemetry&lt;/strong&gt;. Plain English — it is a monitoring platform for metrics, traces, and logs; unlike classic APM, AI is not a bolt-on chat box on the side. It lives on the data: you ask a question, it reads live metrics, follows traces, queries logs, and returns evidence-backed answers instead of dumping charts on you.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxm0z2tjhj2oh5l72mjz7.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxm0z2tjhj2oh5l72mjz7.jpg" alt="DataBuff minimal architecture" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Minimal stack: ingest + storage + AI platform — one command to start&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The gap is “AI-native.” Many products are “APM + chat widget” where the model just tells you to look at a dashboard. DataBuff’s AI reads data, calls tools, and can reach hosts — the seven scenarios below are proof. The arc to keep in mind:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdyt5hxtiixeuxnv0iofb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdyt5hxtiixeuxnv0iofb.png" alt="Seven-scenario roadmap" width="772" height="397"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Glance the roadmap first, then walk each case&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Scenario 1 · Ask your system in plain language&lt;/p&gt;

&lt;p&gt;Start with the obvious. To find slow services you used to open Grafana, memorize PromQL, write queries, read charts, and sort yourself. In DataBuff I asked in plain English: &lt;strong&gt;“Which service was slowest in the last hour? List the top 3.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpncxgcsomrke3n9h6zd2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpncxgcsomrke3n9h6zd2.png" alt="Natural language slowest services" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;One question — AI queried 20 services and returned a ranked table with latency and error rate&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It did not flash a chart and leave me guessing. It actually scanned 20 services, computed average latency, and returned a table: slowest &lt;strong&gt;service-a at 240ms avg&lt;/strong&gt;, then service-b 70ms, skyWalking-service-a 35.7ms, with volume and error rate. Twenty-three seconds, zero query language.&lt;/p&gt;

&lt;p&gt;For newcomers, that is what AIOps should feel like — &lt;strong&gt;no query DSL, no metric math — just ask&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Takeaway: natural-language Q&amp;amp;A is not “search.” The model reads intent, hits live data, and answers with evidence. The more casual the question, the more concrete the reply.&lt;/p&gt;

&lt;p&gt;Scenario 2 · Multi-agent: not one bot, a squad&lt;/p&gt;

&lt;p&gt;If scenario one felt “nice,” this one reframes the product — &lt;strong&gt;DataBuff is not a single AI, it is a squad&lt;/strong&gt;. The experts on the roster: &lt;strong&gt;AI Brain, Data Query, Intelligent Inspection, Ops Expert, Product Q&amp;amp;A&lt;/strong&gt;. The right pattern is not inventing fake “metrics expert / trace expert” labels — &lt;strong&gt;leave the expert picker alone, throw the hard task at AI Brain&lt;/strong&gt;, and let it dispatch real experts. I said one sentence:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Any cluster anomalies in the last hour? Run a joint diagnosis with Data Query and Intelligent Inspection: Data Query checks latency, error rate, and slow traces; Inspection runs tiered health checks; summarize into an incident report I can forward.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcn0m3x7e5ot0qt3fo5iz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcn0m3x7e5ot0qt3fo5iz.png" alt="AI Brain dispatching Data Query and Inspection" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;AI Brain calls dispatchExpertTask twice — Data Query (data) and Inspection in parallel&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;What followed is not typical APM. AI Brain said it would dispatch two tasks, then &lt;strong&gt;successfully called &lt;code&gt;dispatchExpertTask&lt;/code&gt; twice&lt;/strong&gt; — latency/errors/slow traces to &lt;strong&gt;Data Query&lt;/strong&gt;, tiered health checks to &lt;strong&gt;Intelligent Inspection&lt;/strong&gt;. Both worked in parallel. Inspection reported JVM/GC/thread metrics healthy across 34 services; Data Query found real issues: Elasticsearch index 404 (~144k failures) and MySQL-side InsufficientStockException. AI Brain merged both into a forwardable report.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F97r27xvn2r9yk20be2o5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F97r27xvn2r9yk20be2o5.png" alt="Combined incident report" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;P0 ES index down + P1 inventory business errors; Inspection confirms service health; HTML report ready to share&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The report: &lt;strong&gt;P0 Elasticsearch indexes unavailable&lt;/strong&gt; (my_index_1 / my_index_2 all 404, ~144k failures); &lt;strong&gt;P1 MySQL stock business errors&lt;/strong&gt; (InsufficientStockException on service-b — business stock-out, not infra down); plus &lt;strong&gt;service self-health confirmed by Inspection&lt;/strong&gt;. Full HTML you can preview or paste into an incident channel.&lt;/p&gt;

&lt;p&gt;Takeaway: the “A” in AIOps is not a chat box — it is &lt;strong&gt;AI Brain splitting work across real experts, then synthesizing&lt;/strong&gt;. One human sentence; a squad that can name and dispatch.&lt;/p&gt;

&lt;p&gt;Scenario 3 · Inspection: one sentence → shareable HTML report&lt;/p&gt;

&lt;p&gt;Runbooks hate manual inspection — check metrics, thresholds, stitch a report for half a day. In DataBuff I switched to Intelligent Inspection and asked: &lt;strong&gt;“Run an inspection on service-b and output a full HTML report.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frvz78u63vbdcwwn8rtwe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frvz78u63vbdcwwn8rtwe.png" alt="Trigger service-b inspection" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Intelligent Inspection on service-b — full HTML report requested&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Eighty-one seconds, twenty-two steps — not a chat essay but formatted HTML. Overview: entry health 98, downstream MySQL 60, Redis 100, zero active alerts. &lt;strong&gt;Entry looks fine&lt;/strong&gt; (~4 req/min, 0% errors, ~70ms avg), but error logs expose “false green” — 60 ERROR lines in 30 minutes, all InsufficientStockException:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo0bzzvjgo66lk7iu3r3v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo0bzzvjgo66lk7iu3r3v.png" alt="HTML report overview and error logs" width="800" height="1026"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Top of report: health cards + entry metrics + errors (0% HTTP errors vs InsufficientStockException)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Further down: evidence chain — downstream &lt;code&gt;[mysql]demo_apm&lt;/code&gt; at 50% errors, traces show findInventory → stock query throwing; graded conclusion P0 system OK, &lt;strong&gt;P1 partial business impact&lt;/strong&gt;, with fixes — repair stock data, alert on this business exception so HTTP 200 does not hide it. File at &lt;code&gt;outputs/service-b-health-report.html&lt;/code&gt;, preview in-chat.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1p6b8lwdckp71hg47ttg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1p6b8lwdckp71hg47ttg.png" alt="HTML report downstream and conclusion" width="800" height="1026"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Bottom of report: dependencies, trace evidence, graded conclusion and actions&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Inspection should end in &lt;strong&gt;an HTML report you can open and forward&lt;/strong&gt; — green at the edge, red underneath, spelled out.&lt;/p&gt;

&lt;p&gt;Scenario 4 · Root cause: one sentence with evidence&lt;/p&gt;

&lt;p&gt;Incident triage is experience-heavy — charts, time alignment, hand-written PromQL, manual evidence chains. I asked bluntly: &lt;strong&gt;“Where is the bottleneck for service-a in the last hour — app, database, or downstream?”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzmr5waxmguun8uidaiqy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzmr5waxmguun8uidaiqy.png" alt="RCA topology and outbound latency table" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Data Query pulls topology and ranks seven downstream calls by latency share&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It delivered. Time range set, service-a topology — seven downstreams — then a table of call count, avg latency, and share: service-b HTTP 100ms and RPC 80ms on top; MySQL 20ms, ES 18ms, Redis 13ms, Kafka 8ms, remote payment 7ms all normal.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkwowo4iewzefv5gicrts.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkwowo4iewzefv5gicrts.png" alt="RCA conclusion service-b bottleneck" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Bottleneck: downstream service-b (73.2% of outbound time); app and other deps cleared&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;One-line conclusion: &lt;strong&gt;bottleneck is downstream service-b&lt;/strong&gt; — HTTP 100ms + RPC 80ms = 180ms per request, 73.2% of outbound time. It also listed who is &lt;em&gt;not&lt;/em&gt; at fault — service-a 120 requests 0 errors 0 alerts, MySQL/ES/Redis/Kafka/remote payment all normal — then next steps on service-b HTTP/RPC for slow calls or thread blocking.&lt;/p&gt;

&lt;p&gt;Takeaway: RCA here is not “here is a trend chart” — it is ranked downstream latency, attributed share, and a sentence you can paste into an incident doc.&lt;/p&gt;

&lt;p&gt;Scenario 5 · Ops Expert: don’t just look — fix it&lt;/p&gt;

&lt;p&gt;The first four scenarios are read-only intelligence. The next step for AIOps is hands-on — &lt;strong&gt;Ops Expert SSHs in, investigates, changes config, and repairs&lt;/strong&gt;. Most tools stop at “here is what broke.”&lt;/p&gt;

&lt;p&gt;Real case: demo container ai-apm-demo stuck in Restarting. I said: &lt;strong&gt;“Container keeps restarting — fix it.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2zo0s61q27x0ptn9re7r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2zo0s61q27x0ptn9re7r.png" alt="Ops Expert restart prompt" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Plain-language request: container keeps restarting&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Ops Expert SSH’d in, ran &lt;code&gt;docker logs&lt;/code&gt;, &lt;code&gt;docker inspect&lt;/code&gt;, &lt;code&gt;free -m&lt;/code&gt;, found OOM kill (137) from too-low memory limit, applied the fix, restarted the container.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft16xrql5gffkc816xtek.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft16xrql5gffkc816xtek.png" alt="Ops Expert SSH investigation" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;On-host investigation via docker logs / inspect / free -m&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5aknvo8kwu6bls1yy55x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5aknvo8kwu6bls1yy55x.png" alt="Ops Expert fix conclusion" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OOM from memory cap — parameter updated, docker ps healthy again&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;After &lt;code&gt;docker ps&lt;/code&gt;, the container stayed up. &lt;strong&gt;Other AIOps tell you what broke; this one helped fix it.&lt;/strong&gt; That is the line between “see” and “repair” in open-source AIOps.&lt;/p&gt;

&lt;p&gt;Ops Expert does not only suggest commands — it investigates, concludes, and proposes the fix. DataBuff closes the loop.&lt;/p&gt;

&lt;p&gt;Scenario 6 · Capacity: from reactive firefighting to foresight&lt;/p&gt;

&lt;p&gt;Everything so far is after failure. Higher-level AIOps judges capacity before you scale. I asked: &lt;strong&gt;“This Redis averages 366ms — capacity bottleneck or not? Should we scale? Planning advice.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4ptuanfs8siz5awy5u5q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4ptuanfs8siz5awy5u5q.png" alt="Redis capacity health analysis" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Topology clarifies which Redis instance matters; capacity vs slow-operation guidance&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;First it clarified topology — &lt;strong&gt;service-a actually depends on [redis]redis:6379 (154 calls/hr, 13ms, healthy)&lt;/strong&gt;; the 366ms [redis]redis.test:6379 is not on service-a’s path. Easy to mix up under pressure.&lt;/p&gt;

&lt;p&gt;On the slow instance: 352,807 calls/hour, ~98 QPS, 366ms avg. It did not say “scale because slow” — &lt;strong&gt;98 QPS is far below what a single Redis can take; the bottleneck is likely operations&lt;/strong&gt; (big keys, blocking commands like KEYS / wide SMEMBERS), with Top 3 causes and &lt;code&gt;SLOWLOG GET&lt;/code&gt; / &lt;code&gt;redis-cli --bigkeys&lt;/code&gt;. Advice: &lt;strong&gt;do not scale blindly — find the slow command first&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Good capacity analysis separates “under-provisioned” from “misused” — only the former deserves more machines.&lt;/p&gt;

&lt;p&gt;Scenario 7 · Product Q&amp;amp;A: open source with built-in support&lt;/p&gt;

&lt;p&gt;Hardest part of open source: “how do I configure this?” — docs, issues, waiting. DataBuff ships a Q&amp;amp;A expert. I asked the classic newbie question: &lt;strong&gt;“How do I wire the OpenTelemetry SDK? Where do I set alert thresholds? Step-by-step paths.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjt8j0m0eq8kkv0hnzs49.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjt8j0m0eq8kkv0hnzs49.png" alt="Q&amp;amp;A expert OTLP and alerts" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Answers from product docs: OTLP ports and alert menu paths&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Not a generic tutorial — it read &lt;em&gt;this&lt;/em&gt; product’s docs: OTLP ingest, &lt;strong&gt;gRPC 4317 / HTTP 4318&lt;/strong&gt;, point any SDK exporter at Ingest for traces, metrics, and logs without a separate agent.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuw7867iwnqc0zi168kfx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuw7867iwnqc0zi168kfx.png" alt="OTel SDK config examples" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Env vars + Spring Boot javaagent one-liner + Python doc paths&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It also pointed to language quick starts: Spring Boot with &lt;code&gt;opentelemetry-javaagent.jar&lt;/code&gt;, one &lt;code&gt;java -javaagent:...&lt;/code&gt; for zero-code instrumentation; Python OTLP docs too. Alerts under &lt;strong&gt;Configuration → Alerting → Detection rules → New rule&lt;/strong&gt; — pick object, metric, threshold, severity; evaluates every minute on the last five minutes; plus convergence and silence policies.&lt;/p&gt;

&lt;p&gt;Open source’s gap is often “someone to ask.” DataBuff embeds Q&amp;amp;A that reads its own docs — better than a random search result.&lt;/p&gt;

&lt;p&gt;Worth saying: the UI is a solid APM on its own&lt;/p&gt;

&lt;p&gt;DataBuff is not chat-only. Under the hood you get global topology, services, service map, databases, queues, caches, external deps — &lt;strong&gt;full-path drill-down&lt;/strong&gt; from the big graph to metrics to a single trace. AI reads; the UI lets you verify.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F08cr3cu179uopbph7ell.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F08cr3cu179uopbph7ell.jpg" alt="Global topology" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Global topology — services and dependencies at a glance&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4zjmd3ngdvvvbpxv5g6l.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4zjmd3ngdvvvbpxv5g6l.jpg" alt="Service health overview" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Service list — health status in one scan&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Will you actually run it?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Yes — quickly.&lt;/strong&gt; One curl, three components, minimal deps. Open the Web UI, add an API key, start asking.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyjcsojlab3xm8lz6gcvf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyjcsojlab3xm8lz6gcvf.png" alt="One-command install success" width="800" height="387"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;One command — three components up&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;AIOps should not be a luxury for a few big vendors — &lt;strong&gt;any team should spin it up in five minutes&lt;/strong&gt;. DataBuff is open, self-hostable, data stays yours, code is inspectable, built on OpenTelemetry so most SDKs plug in without lock-in.&lt;/p&gt;

&lt;p&gt;Open-source AIOps, finally built — you could be next&lt;/p&gt;

&lt;p&gt;If these seven scenarios resonate, don’t stop at reading.&lt;/p&gt;

&lt;p&gt;Star it on GitHub, run it in minutes, and ask it the question that annoys you most on-call.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Questions? Open DataBuff and ask the Q&amp;amp;A expert — it is already in the product.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>apm</category>
      <category>opentelemetry</category>
      <category>opensource</category>
    </item>
    <item>
      <title>DataBuff vs OpenObserve: Same-Host Lab Comparison</title>
      <dc:creator>AIdevops2088</dc:creator>
      <pubDate>Thu, 06 Aug 2026 01:15:49 +0000</pubDate>
      <link>https://dev.to/logan_zhang_8ca3575087c5b/databuff-vs-openobserve-same-host-lab-comparison-200i</link>
      <guid>https://dev.to/logan_zhang_8ca3575087c5b/databuff-vs-openobserve-same-host-lab-comparison-200i</guid>
      <description>&lt;p&gt;Same-host lab: DataBuff (OTLP &lt;code&gt;:4318&lt;/code&gt;) and OpenObserve (OTLP HTTP &lt;code&gt;:5080/api/default&lt;/code&gt;) on the same Demo (service-a / service-b). Host: 192.168.50.140 · DataBuff v0.1.4 · OpenObserve v0.91.0-rc1. Marks: ✅ verified in this lab · △ present but limited · ❌ no equivalent. Green bold cells are clear DataBuff leads.&lt;/p&gt;

&lt;p&gt;Positioning: DataBuff = AI-native APM depth; OpenObserve = unified observability platform (Logs / Metrics / Traces / RUM), strong on log search and object-storage cost.&lt;/p&gt;

&lt;p&gt;1. Capability matrix&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Seven AI capabilities&lt;/strong&gt; (v0.1.4: See → Squad → Inspect → Diagnose → Repair → Predict → Answer)&lt;/p&gt;

&lt;p&gt;- **Capability** — OpenObserve v0.91.0-rc1 · DataBuff v0.1.4 - **① See · natural-language questions** — ❌ · ✅ Ask about services / topology / trends; AI reads telemetry - **② Squad · multi-agent collaboration** — ❌ · ✅ Parallel evidence gathering; serial context preservation; reusable task orchestration - **③ Inspect · service inspection + report** — ❌ · ✅ One-shot inspection with evidence and recommended actions - **④ Diagnose · bottleneck / RCA evidence** — ❌ · ✅ Trace / metrics / topology evidence (not a black-box “root cause”) - **⑤ Repair · Ops Expert actions** — ❌ · ✅ Repair under policy + human approval; dangerous-command denylist - **⑥ Predict · capacity / trends** — ❌ · ✅ Capacity and trend analysis — from after-the-fact to ahead-of-time - **⑦ Answer · product Q&amp;amp;A** — ❌ · ✅ Answers deploy / ingest / config from docs and code - **Extend · MCP / Skill / custom experts** — ❌ · ✅ External MCP / Skill and custom digital experts&lt;/p&gt;

&lt;p&gt;Largest gap: OpenObserve has no equivalent AI platform (Traces has an LLM Insights entry, not validated here as APM triage); DataBuff exposes the seven capabilities as configurable home entries with APM as AI context.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;APM&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Capability** — OpenObserve v0.91.0-rc1 · DataBuff v0.1.4 - **1. Global topology** — ❌ No service dependency topology · ✅ Global topology + health colors + node drill-down - **2. Service list &amp;amp; golden metrics** — ✅ Service Catalog (Requests / Error Rate / P99, etc.) · ✅ Service list + charts; same demo shows service-a / b - **3. Service-level topology** — ❌ · ✅ Dedicated service topology - **4. Service call analysis (up/downstream + Trace)** — ❌ · ✅ Upstream/downstream structure, latency/contribution; drill to Trace - **5. Instance golden metrics** — ❌ · ✅ Instance golden-metric charts / list - **6. Instance topology** — ❌ · ✅ Dedicated instance topology - **7. Instance call analysis (up/downstream + Trace)** — ❌ · ✅ Per-instance up/downstream + Trace - **8. Endpoint topology** — ❌ · ✅ Dedicated endpoint topology - **9. Endpoint call analysis (up/downstream + Trace)** — ❌ · ✅ Per-endpoint caller/callee + Trace - **10. Service flow (service / endpoint Trace contribution)** — ❌ · ✅ Response contribution from entry; service / endpoint Trace view - **11. Middleware / external pages (DB / cache / MQ / external)** — ❌ db/http visible on Span fields; no dedicated pages · ✅ Dedicated pages: DB / cache / MQ / external - **12. Error analysis (stats + endpoint)** — △ Can filter ERROR spans / logs · ✅ Error stats + endpoint drill-down - **13. Trace list / search** — ✅ Spans/Traces + flexible query; this lab shows service-a · GET /demo/checkout · ✅ Charts + list, multi-dimension filters - **14. Trace detail** — ✅ Waterfall / Flame Graph / Trace Graph · ✅ Call-order waterfall + Span attributes - **15. Trace Span → logs** — ✅ Trace / Span can link to logs · ✅ Top “Log analysis” + Span Logs / Logs tab - **16. Log list / search** — ✅ Strength: SQL / full-text + histogram; hundreds of events in this lab · ✅ - **17. Log detail** — ✅ · ✅ - **18. Log → Trace** — ✅ Log → Trace (down to Span) · ✅ Log → Trace, down to Span - **19. Flexible Metrics query (SQL / PromQL)** — ✅ Metrics page: SQL / PromQL / Builder · △ Internal SQL; no public PromQL entry - **20. Custom dashboards** — ✅ Dashboards can be created (list may be empty in this lab; capability present) · ❌ Not yet - **21. Unified storage cost (object store + compression)** — ✅ Home shows Ingested / Compressed (~96MB → 10.5MB in this lab) · △ Doris columnar; not an object-storage cost story - **22. RUM** — ✅ Built-in RUM (Real User Monitoring) · ❌ Not yet - **23. Pipelines** — ✅ Realtime / Scheduled: transform / enrich / filter / route after ingest (VRL); logs→metrics, etc. · ❌ Not yet - **24. Reports** — ✅ Scheduled / Cached reports; timed generate &amp;amp; distribute · ❌ Not yet&lt;/p&gt;

&lt;p&gt;Shared base: service list &amp;amp; golden metrics, Trace list/waterfall, logs, and Span↔log links. DataBuff leads on &lt;strong&gt;topology / service·instance·endpoint call analysis / service flow / middleware pages&lt;/strong&gt;. OpenObserve leads on &lt;strong&gt;log search &amp;amp; cost, SQL/PromQL, custom dashboards, Pipelines, Reports, unified L/M/T + RUM&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Alerting&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Capability** — OpenObserve v0.91.0-rc1 · DataBuff v0.1.4 - **How rules are configured** — ✅ Alerts UI (needs Destination / Template first) · ✅ Alert center in product - **Threshold alerts** — ✅ Scheduled / Realtime · ✅ Managed in platform - **Smart alerts** — ❌ No equivalent smart-alert product · ✅ Smart alerts linked with APM metrics - **Alert event list** — ✅ Alerts UI for triggered alerts / rules · ✅ Alert list (severity / service / time) - **Alerts linked to service / middleware** — △ Stream-oriented alerts; APM context must be stitched manually · ✅ List links service / middleware back into APM&lt;/p&gt;

&lt;p&gt;Both can configure alerts in UI; difference is &lt;strong&gt;smart alerts&lt;/strong&gt; and &lt;strong&gt;alert → APM service context&lt;/strong&gt;. OpenObserve alerts lean Logs/Metrics streams; DataBuff leans APM triage loop.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When to pick which&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;- **Scenario** — Better fit · Note - **Already on OTLP; want AI / APM depth first** — DataBuff · Point exporters at DataBuff; no need to migrate off OpenObserve first - **Need the seven AI capabilities** — DataBuff · OpenObserve has no equivalent AI platform - **Need MCP / Skill or custom digital experts** — DataBuff · AI platform is extensible; OO has no such layer - **Need global topology + health colors at a glance** — DataBuff · OO has no service dependency topology - **Need “who slowed the response” from entry service** — DataBuff · Service flow + contribution; OO has no equivalent page - **Need service / instance / endpoint call analysis → Trace** — DataBuff · Three-level call analysis all link to Trace; OO has no path - **Need instance golden metrics / instance topology** — DataBuff · OO has no equivalent instance pages - **Need slow SQL / cache / MQ / external service pages** — DataBuff · OO mostly Span fields; no dedicated pages - **Need dedicated error analysis** — DataBuff · OO requires manual ERROR filtering - **Need smart alerts tied to service / middleware** — DataBuff · OO alerts are stream-oriented; no smart-alert APM loop - **Huge log volume; need object-storage cost control** — OpenObserve · Compression / storage story is a strength - **Need SQL / PromQL Metrics + custom dashboards** — OpenObserve · DataBuff has no custom dashboards yet - **Need post-ingest transform / enrich / filter / route** — OpenObserve · Pipelines (Realtime / Scheduled + VRL) - **Need scheduled / cached reports** — OpenObserve · Reports (Scheduled / Cached) - **Need unified Logs + Metrics + Traces + RUM** — OpenObserve · DataBuff focuses on APM depth - **Only need the same Demo Trace waterfall** — Either · No need to migrate for branding&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Boundary:&lt;/strong&gt; Staying on OpenObserve is reasonable when deeply tied to its log pipelines / dashboards / Pipelines / Reports / cost story. DataBuff fits OTLP + seven AI + topology / call analysis / service flow / dedicated pages / smart alerts. Dashboards, Pipelines, Reports, and large-scale log cost are not peer capabilities yet.&lt;/p&gt;

&lt;p&gt;2. Screenshot evidence (explains the tables)&lt;/p&gt;

&lt;p&gt;Screenshots from the same lab (&lt;strong&gt;192.168.50.140&lt;/strong&gt;). Captions map to capability rows. Focus on DataBuff AI / topology / dedicated pages / alerts, plus OpenObserve logs / Trace / Metrics / dashboard entry points.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Seven AI capabilities&lt;/strong&gt; (no OpenObserve equivalent UI; DataBuff evidence)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdeutzxncskccbrenbke5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdeutzxncskccbrenbke5.png" alt="DataBuff AI home" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff AI chat home and seven capability entries: See / Squad / Inspect / Diagnose / Repair / Predict / Answer&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq3rdonfiu9w55w65f2wl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq3rdonfiu9w55w65f2wl.png" alt="DataBuff AI chat" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff ① See: real question on service-a checkout / service-b; AI reads telemetry&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5i2xgsm1vdmrdbjovs9y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5i2xgsm1vdmrdbjovs9y.png" alt="DataBuff digital experts" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff ② Squad: digital expert / multi-agent entries (no OpenObserve equivalent)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Overview &amp;amp; data plane&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbw681ddmvu8jglxywzpc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbw681ddmvu8jglxywzpc.png" alt="OpenObserve Home" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Home: Streams≈38 · Events≈205K · Ingested 96MB → Compressed 10.5MB (matrix row 21)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fj366osxt75ierkv4br68.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fj366osxt75ierkv4br68.png" alt="OpenObserve Streams" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Streams: unified Logs / Metrics / Traces data plane&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Services &amp;amp; topology&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fz727z6czcfm72p1o1bki.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fz727z6czcfm72p1o1bki.png" alt="DataBuff services" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Service list + golden-metric charts (peers with OO Service Catalog)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmj4sd9ei74yzw4neryv4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmj4sd9ei74yzw4neryv4.png" alt="DataBuff topology" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Global topology + health colors (mysql can show red); OpenObserve has no topology view&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Service / endpoint call analysis + service flow&lt;/strong&gt; (matrix rows 4 / 9 / 10)&lt;/p&gt;

&lt;p&gt;OpenObserve can list Trace / Span, but &lt;strong&gt;has no&lt;/strong&gt; service / instance / endpoint call analysis, and &lt;strong&gt;no&lt;/strong&gt; service-flow contribution view. DataBuff goes from “who connects” to “who slows, then into Trace”.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnsovwobexm78nxjfub70.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnsovwobexm78nxjfub70.png" alt="DataBuff service call analysis" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Service call analysis: service-a → service-b (drill to Trace)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4tv973t9zu1jsl9crg20.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4tv973t9zu1jsl9crg20.png" alt="DataBuff endpoint call analysis" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Endpoint call analysis for &lt;code&gt;/demo/checkout&lt;/code&gt;: volume / latency / error rate&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuaursxoligmfqkciwcf6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuaursxoligmfqkciwcf6.png" alt="DataBuff service flow" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Service flow: entry service-a → downstream response contribution; no OpenObserve equivalent&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Trace&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fexzgtg2kkkzfjwkb7twe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fexzgtg2kkkzfjwkb7twe.png" alt="OpenObserve Trace list" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Traces: service-a · GET /demo/checkout · 240ms · 13 Spans&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fypbk176sntuipr0fs12b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fypbk176sntuipr0fs12b.png" alt="DataBuff Trace list" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Trace list: charts + table&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5nq8wdfkwam2wnkm1904.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5nq8wdfkwam2wnkm1904.png" alt="OpenObserve Trace detail" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Trace Waterfall: service-a → service-b · includes SQL / Dubbo Spans&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxlwoey37d7swt2hbcoqd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxlwoey37d7swt2hbcoqd.png" alt="DataBuff Trace detail" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Call-order waterfall + Span attributes; can link to logs in-product&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Log / Metric&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftkf7mwfsxojk1wbcbjqf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftkf7mwfsxojk1wbcbjqf.png" alt="OpenObserve Logs" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Logs: histogram + event table; Trace / Span correlation (matrix rows 15–18)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgclvuu58xykakp9gyb03.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgclvuu58xykakp9gyb03.png" alt="DataBuff logs" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Log analysis: Log → Trace down to Span&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyeabz82edvptgyw85z9k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyeabz82edvptgyw85z9k.png" alt="OpenObserve Metrics" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Metrics: SQL / PromQL / Builder (matrix row 19; DataBuff has no public PromQL)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dashboards / Pipelines / Reports&lt;/strong&gt; (matrix rows 20 / 23 / 24; OpenObserve strengths)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6gddzmpi2909zwfvfjmw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6gddzmpi2909zwfvfjmw.png" alt="OpenObserve Dashboards" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Dashboards: create custom boards&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F28r1aexo5avv8y2hpc0h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F28r1aexo5avv8y2hpc0h.png" alt="OpenObserve Pipelines" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Pipelines: Realtime / Scheduled data pipelines&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6tl7txuvn004ie8go06w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6tl7txuvn004ie8go06w.png" alt="OpenObserve Reports" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Reports: Scheduled / Cached&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DataBuff dedicated pages&lt;/strong&gt; (matrix rows 11 / 12; no OO equivalents)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3ajo8mz0m8o4g6trbs5w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3ajo8mz0m8o4g6trbs5w.png" alt="Database" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Database page&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmdrunstztdrysrkpsnng.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmdrunstztdrysrkpsnng.png" alt="Cache" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Cache page&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjywsunxc57gru34y12h1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjywsunxc57gru34y12h1.png" alt="MQ" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Message queue page&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh8ll2yh21a87cj6g8g03.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh8ll2yh21a87cj6g8g03.png" alt="External" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff External service page&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1nf09zbhn21ulg5owxch.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1nf09zbhn21ulg5owxch.png" alt="API" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Endpoint analysis list&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3916au7syzod1ol4pjwh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3916au7syzod1ol4pjwh.png" alt="Errors" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Error analysis (stats + endpoint)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;These pages are depth beyond “middleware Spans in Trace” — the APM differences most worth validating against OpenObserve.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Alerting&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fst1bcir29yr5le961lxb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fst1bcir29yr5le961lxb.png" alt="OpenObserve Alerts" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OpenObserve Alerts UI: configure and view rules / events&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0hheb5ow4116rd1pdfnw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0hheb5ow4116rd1pdfnw.png" alt="DataBuff alerts" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;DataBuff Alert center: rules in-product; list links service context; non-empty in this lab&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;If this helped, give us a Star:&lt;br&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/databufflabs/databuff" rel="noopener noreferrer"&gt;https://github.com/databufflabs/databuff&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Online Demo: &lt;a href="https://demo.databuff.ai" rel="noopener noreferrer"&gt;https://demo.databuff.ai&lt;/a&gt;&lt;/p&gt;

</description>
      <category>apm</category>
      <category>opensource</category>
      <category>ai</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
