展示HN:开发者友好的原生OTel:仅限开源的有状态、实时可观测性

5作者: jratkevic5 天前原帖
嗨,HN, 我们是 MyDecisive.ai 的团队,今天我们向开发者展示 Octant —— 为您的 OpenTelemetry 提供点对点控制和可视化。 您可能已经感受到“可观察性税”的痛苦,尤其是当您管理 K8S 集群时。现代标准是使用 OpenTelemetry 对所有内容进行监控,但将所有这些丰富的 OTLP 日志、指标和追踪信息直接传输到 SaaS 供应商(如 Datadog、Splunk、Honeycomb)会迅速变得昂贵。您最终需要为嘈杂、低价值的数据支付巨额的摄取和存储费用,仅仅是为了在出现故障时能够进行搜索。使用 Octant,您可以在几分钟内启动并运行 OTel。 我们构建 Octant 是为了颠覆这一模式。Octant 不再盲目地将所有遥测数据发送到集群外,而是配置并帮助管理 OTEL 集群。它为管理 K8s 对象提供了可视化界面,更重要的是,它充当 OTLP 网关,在数据离开您的 VPC 之前对其进行源头过滤。 由于它原生支持 OpenTelemetry,您可以直接将现有的 OTel SDK 或采集器指向它,而无需修改应用程序代码。以下是它在后台的工作原理: - OTel 原生追踪和日志采样:它使得摄取 OTLP 流量变得简单,并实时检查网络上的日志和追踪信息。通过在确定保留哪些信息之前等待追踪的完整上下文,它兑现了编织的承诺,保留 100% 的可操作信号(如错误和高延迟的跨度),但在数据到达您的 SaaS 账单之前就丢弃了无用信息。 - 实时状态警报:Octant 可以在数据被批处理、发送和由外部提供商索引之前,实时处理遥测流。这缩短了检测间隔,并减少了对 SaaS 供应商的需求。 - 网络上个人信息去标识化:它可以实时检测并剔除日志和追踪中的敏感信息,确保在数据通过互联网传输之前去除“后摄取”清理成本和合规风险。 - K8s 上下文注入:由于它与您的集群深度集成,它可以将您的 OTel 流直接映射到 K8s 资源(部署、Pod、CRD)中,提供统一的用户界面。 该 API 是用 Go 构建的([github.com/mydecisive/octant](https://github.com/mydecisive/octant)),整个堆栈可以通过我们的 Helm 图表直接部署到您的集群中。 我们希望您能在开发集群上启动它并进行深入探索。我们最近合并了来自我们第一位社区贡献者的 PR,这对我们来说是一个巨大的里程碑!我们希望保持这种势头。如果您对 K8s 可观察性和自主性、OpenTelemetry 管道或 Go/React 感兴趣,我们标记了一些“适合新手的问题”,非常欢迎您加入这个项目。 GitHub: [https://github.com/MyDecisive/octant](https://github.com/MyDecisive/octant) 网站: [https://www.mydecisive.ai/](https://www.mydecisive.ai/) 今天我会在这个讨论串中待着,乐意回答任何问题或深入探讨架构!
查看原文
Hi HN,<p>We’re the team at MyDecisive.ai, and today we’re giving developers a peek at Octant — point-and-click control and visibility for your OpenTelemetry.<p>You&#x27;ve likely felt the pain of the &quot;observability tax,&quot; especially if you manage K8S clusters. The modern standard is to instrument everything with OpenTelemetry, but piping all those rich OTLP logs, metrics, and traces straight to a SaaS vendor (Datadog, Splunk, Honeycomb) gets expensive fast. You end up paying massive ingestion and storage costs for noisy, low-value data just so it&#x27;s searchable when something breaks. With Octant you get up and running on OTel in minutes.<p>We built Octant to flip this model. Instead of blindly shipping all telemetry off-cluster, Octant configures and helps to manage OTEL clusters. It gives you a visual interface for managing K8s objects, but importantly, it acts as an OTLP gateway that filters data at the source before it leaves your VPC.<p>Because it natively speaks OpenTelemetry, you can point your existing OTel SDKs or collectors right at it without touching your application code. Here is what it does under the hood:<p>- OTel-Native Trace &amp; Log Sampling: It makes it easy to ingest OTLP traffic and inspects logs and traces on the wire. By waiting for the full context of a trace before determining what to keep, it delivers on the promise of braiding, retaining 100% of the actionable signals around (like errors and high-latency spans) but droppings the junk before it hits your SaaS bill.<p>- In-Flight Stateful Alerting: Instead of waiting for data to be batched, shipped, and indexed by an external provider to trigger an alert, Octant can process the telemetry streams in-flight. This shrinks the detection gap and reduces the need for SaaS vendors in the first place. - On-the-Wire PII Redaction: It can detect and strip sensitive information from your logs and traces in real-time before they are transmitted over the internet, removing &quot;post-ingestion&quot; clean-up costs and compliance risks.<p>- K8s Context Injection: Because it&#x27;s deeply integrated with your cluster, it maps your OTel streams directly to your K8s resources (Deployments, Pods, CRDs) in a unified UI.<p>The API is built in Go ([github.com&#x2F;mydecisive&#x2F;octant] and the whole stack can be deployed directly into your cluster via our Helm charts.<p>We’d love for you to spin it up on a dev cluster and tear it apart. We just recently merged a PR from our very first community contributor, which was a huge milestone for us! We want to keep that momentum going. If you&#x27;re interested in hacking on K8s observability and autonomy, OpenTelemetry pipelines, or Go&#x2F;React, we’ve tagged a few &#x27;good first issues&#x27; and would be thrilled to welcome you to the project.<p>GitHub: <a href="https:&#x2F;&#x2F;github.com&#x2F;MyDecisive&#x2F;octant" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;MyDecisive&#x2F;octant</a><p>Website: <a href="https:&#x2F;&#x2F;www.mydecisive.ai&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.mydecisive.ai&#x2F;</a><p>I&#x27;ll be hanging out in the thread today and am happy to answer any questions or dig into the architecture!