arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2609.35310cs.NI

NATS JetStream中配置引发的投递故障:检测与修复

Configuration-Induced Delivery Failures in NATS JetStream: Detection and Remediation

Biplab Kumar Das

首次发表 更新
浏览论文内容

中文总结 AI 辅助

针对NATS JetStream五种配置错误悄然破坏至少一次投递保证且标准Prometheus指标无法检测的问题,提出独立监控工具nats-lens,实现100%检测覆盖率与零误报,支持多语言且开源。

中文摘要 AI 辅助

NATS JetStream的至少一次投递保证是有条件的:五种常见配置错误会在无任何错误日志记录的情况下悄然破坏该保证,导致消息重复处理、数据丢失或重投递风暴。标准的Prometheus NATS导出器仅暴露服务器级别的吞吐量指标,无法检测这些故障中的任何一种。我们提出了nats-lens,这是一款独立监控工具,可从JetStream管理API读取数据,无需修改被监控的应用程序或客户端代码即可检测全部五类违规行为。我们用精确条件对每一类违规进行了形式化刻画,证明标准Prometheus NATS指标在结构上无法检测其中任何一类,并实现了五个针对性检测器。在单节点和3节点JetStream集群上针对每种场景开展30轮受控评估,结果显示nats-lens对全部五类违规的检测覆盖率达到100%——而基线方法为0%——在30分钟的健康运行中零误报。检测延迟范围为2003毫秒至8013毫秒(在三个轮询周期内)。我们通过Rust、Go和Python编写的消费者,凭经验证实了该工具的语言无关检测能力。该工具为开源软件,通过四种输出渠道展示检测结果:Web仪表板、Prometheus指标、REST API以及NATS健康事件。

英文摘要

NATS JetStream's at-least-once delivery guarantee is conditional: five common configuration mistakes silently violate it, causing duplicate message processing, data loss, or redelivery storms with no error logged anywhere. The standard Prometheus NATS exporter exposes only server-level throughput metrics and cannot detect any of these failures. We present nats-lens, a standalone monitor that reads from the JetStream management API and detects all five violation classes without requiring changes to monitored applications or client code. We formally characterize each class with a precise condition, prove that standard Prometheus NATS metrics are structurally incapable of detecting any of them, and implement five targeted detectors. In a controlled evaluation of 30 rounds per scenario on both single-node and 3-node JetStream clusters, nats-lens achieves 100% detection coverage across all five classes---versus 0% for the baseline---with zero false positives over 30 minutes of healthy operation. Detection latency ranges from 2,003 ms to 8,013 ms (within three poll cycles). We confirm language-agnostic detection empirically using consumers in Rust, Go, and Python. The tool is open source and exposes findings through four output channels: web dashboard, Prometheus metrics, REST API, and NATS health events.

发表机构

  • Independent Researcher Santa Clara California USA
  • Independent Researcher

机构由 AI 辅助整理,请以论文原文为准。

补充信息

↑