Engineering Blog

6 min read

DataBuff v0.1.6 Release Notes

Faster span list queries, a new self-latency dimension in endpoint breakdown, fixed mutation alarm direction, AI stability testing, and a refined databuff-proxy dual-write migration path so SkyWalking users can run DataBuff in parallel with zero business-side changes — with upgrade steps and two screenshots.

DataBuff v0.1.6 is ready: faster span list queries, a new "self-latency" dimension in endpoint latency breakdown, fixed mutation (YoY/MoM) alarm direction, AI stability, workspace file preview expansion, and a refined databuff-proxy dual-write migration path so SkyWalking users can run DataBuff in parallel with zero business-side changes. Versus v0.1.5: 20 commits, no schema migration.

Highlights

  • databuff-proxy dual-write migration: v0.1.6 refines the SkyWalking→DataBuff dual-write path and stability verification. Zero business-side changes (no Agent swap, no config change, no pod restart); just deploy databuff-proxy on the platform side and the same traces flow to both OAP and DataBuff Ingest.
  • Endpoint latency breakdown: a new "self-latency" dimension in endpoint analysis separates the endpoint's own time from downstream calls (DB / Redis / MQ / HTTP / RPC), so you can tell at a glance whether slowness is in your own logic or a downstream dependency.
  • Faster span list queries: span lists in endpoint analysis / trace search now use exact-URL matching, drop the separate count query, and prune by a 30-minute startTime window for faster list responses.
  • Mutation alarm direction fixed: mutation (YoY/MoM) alarms now respect comparePeriod and fluctuate direction (valUp / valDown / yoyUp / yoyDown) instead of misjudging direction.
  • Alarm values & expressions: listTagValues skips unknown metric tags; eval SQL covers filter operators.
  • AI stability: improved brain multi-step handoff prompts with protocol coaching stripped out; session list/count is DB-first and fails closed to memory on Doris errors; model failures surface to the user; fixed a brain dispatch bug; updated brain routing prompts.
  • AI stability testing: 5 AI integration suites all run in parallel (chat/formats/memory/brain + new modelfail), plus new expert-interaction contract tests, covering memory isolation, model-failure surfacing, and brain dispatch.
  • Workspace file preview: the AI-chat workspace now previews all non-binary files online (no longer limited to txt/log/csv/json).
  • Build & deploy: compose health-wait timeout raised to 300s; new ai-apm-web-base image so web releases skip apt reinstalls.

How to use: databuff-proxy dual-write (smooth SkyWalking transition)

Teams already on SkyWalking who want to try DataBuff can run both in parallel with zero business-side changes: just deploy databuff-proxy on the original OAP host to hold port :11800, and the same traffic is mirrored to both backends.

  • Zero business-side change: no Agent swap, no endpoint change, no pod restart.
  • Symmetric dual-write: the same Trace / JVM / Log stream goes to both OAP and DataBuff Ingest with no protocol conversion.
  • Reversible during the comparison window: watch both UIs side by side; once you're satisfied, turn off SkyWalking writes from the admin page.
  • Refined in v0.1.6: migration guide adds Plan B and a new dual-write stability verification doc.
  • Proxy is a separate repo: github.com/databufflabs/databuff-proxy, released independently, not part of the v0.1.6 main repo.
databuff-proxy forwarding monitor admin page: 5.7k req/s inbound, symmetric dual-write to DataBuff and SkyWalking, 11.4k req/s sent successfully, 0 dropped
Fig 1 · databuff-proxy admin page: the same traffic is dual-written to both backends; successful sends are about 2x inbound with 0 drops, and either sink can be toggled off at any time

For migration steps see Migrating from SkyWalking (Plan B); for dual-write stability results see proxy dual-write stability verification.

How to use: endpoint latency breakdown

Path: Application Performance → Endpoint Analysis. Select an HTTP / RPC / MQ endpoint; the latency breakdown chart splits each time bucket into "self-latency" and downstream components (DB / Redis / MQ / HTTP / RPC / remote calls), with downstream further split by peer service.

  • Self-latency: total endpoint duration minus the sum of all downstream call durations.
  • Downstream by component + peer service: e.g. HTTP service-b, DB [mysql]demo_apm, Redis [redis]redis:6379, MQ [kafka]order-events.
  • Pinpoint bottlenecks faster: when response time rises, see whether it's your own logic or a specific downstream—no need to page through traces one by one.
endpoint latency breakdown chart: response time 240ms, split per time bucket into self-latency and downstream HTTP/RPC/DB[mysql]/DB[elasticsearch]/Redis/MQ[kafka] components
Fig 2 · Endpoint latency breakdown: response time 240ms, split per time bucket into self-latency and downstream components (HTTP / RPC / MySQL / Elasticsearch / Redis / Kafka); how much is your own logic vs a dependency is clear from the chart

How to use: workspace file preview expansion

Path: AI Platform → AI Chat. Intermediate files produced by an expert while running tools land in the workspace; click one to preview it inline on the right, without downloading locally.

v0.1.6 widens the previewable extensions: apart from binaries (images, archives, .class, .parquet, etc.), text/code files like .py, .sh, .yml, .sql, Dockerfile, .md can all be viewed inline, with .md rendered as markdown. The interaction is unchanged from v0.1.5—just upgrade and it takes effect.

Focus: AI stability testing

v0.1.6 strengthens AI stability testing: a new "model-failure visibility" suite and expert-interaction contract tests, plus fixes for memory isolation, model-failure surfacing, and brain dispatch. 5 suites, all parallel:

  • chat tool-parameter validation: 4 cases covering service list / topology / slow-request trace / alarm—four tool-call types—validating tool selection and parameters.
  • formats provider formats: OpenAI Completions + Anthropic Messages, 3 cases, validating consistent integration across providers.
  • memory session memory: 5 cases: inspection multi-turn memory / same-session cross-expert isolation / data-query multi-turn memory / brain multi-turn memory / inspection follow-up generation.
  • brain async routing: 10 cases: single-expert dispatch / parallel dispatch / expert failure / cross-session isolation / multi-round dispatch / multi-step inspect-report / multi-step latency inspect-report / parallel inspect+ops / data→ops / data+qa.
  • modelfail model-failure visibility (new in v0.1.6): 3 cases: single-expert ops / single-expert data / multi-expert cascade—failures surface to the user instead of being silently swallowed.

On the Java side, new expert-interaction contract tests were added (BuiltInExpertInteractionContractIntegrationTest, 486 lines; ExpertMessageContractTest, 183 lines).

Install & upgrade

For a fresh install see Docker deployment; to switch an existing setup see Upgrade & uninstall. This release has no schema migration—upgrade is just swapping images and restarting; K8s does not support in-place upgrade this release and must be reinstalled.

# New install (fresh install; clears the old install dir and data/)
curl -fsSL https://databuff.ai/databuff/ai-apm-install.sh | bash

# Existing users upgrade (in-place; keeps data/)
curl -fsSL https://databuff.ai/databuff/ai-apm-update.sh | bash

Try it & feedback

GitHub Release v0.1.6 · Online Demo · Star the project