<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>可观测性系列 on Mi&amp;Bee Blog</title><link>https://blog.mickeyzzc.tech/series/%E5%8F%AF%E8%A7%82%E6%B5%8B%E6%80%A7%E7%B3%BB%E5%88%97/</link><description>Recent content in 可观测性系列 on Mi&amp;Bee Blog</description><generator>Hugo -- gohugo.io</generator><language>zh-CN</language><managingEditor>蓝宝石的傻话</managingEditor><lastBuildDate>Wed, 01 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.mickeyzzc.tech/series/%E5%8F%AF%E8%A7%82%E6%B5%8B%E6%80%A7%E7%B3%BB%E5%88%97/rss.xml" rel="self" type="application/rss+xml"/><item><title>监控采集点点记录</title><link>https://blog.mickeyzzc.tech/posts/telemetry/monitor-experience/</link><pubDate>Mon, 20 Feb 2017 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/monitor-experience/</guid><description>&lt;h2 id="mysql的监控"&gt;MYSQL的监控&lt;/h2&gt;
&lt;h3 id="mysql权限经验原则"&gt;MySQL权限经验原则&lt;/h3&gt;
&lt;p&gt;权限控制主要是出于安全因素，因此需要遵循一下几个经验原则：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;只授予能满足需要的最小权限，防止用户干坏事。比如用户只是需要查询，那就只给select权限就可以了，不要给用户赋予update、insert或者delete权限。&lt;/li&gt;
&lt;li&gt;创建用户的时候限制用户的登录主机，一般是限制成指定IP或者内网IP段。&lt;/li&gt;
&lt;li&gt;初始化数据库的时候删除没有密码的用户。安装完数据库的时候会自动创建一些用户，这些用户默认没有密码。&lt;/li&gt;
&lt;li&gt;为每个用户设置满足密码复杂度的密码。&lt;/li&gt;
&lt;li&gt;定期清理不需要的用户。回收权限或者删除用户。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;eg:&lt;/p&gt;</description></item><item><title>监控系统企业架构演进史-初入Prometheus</title><link>https://blog.mickeyzzc.tech/posts/architecture/prometheus-evolution-history-one/</link><pubDate>Thu, 12 Dec 2019 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/architecture/prometheus-evolution-history-one/</guid><description>&lt;p&gt;&lt;code&gt;Prometheus&lt;/code&gt;是一个开源的监控与时间序列数据库系统,在近年来得到了越来越广泛的应用。
官方的架构图如图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.mickeyzzc.tech/posts/architecture/images/prometheus-architecture.svg"
 alt="Prometheus 官方架构图"
 loading="lazy"
 decoding="async"/&gt;
&lt;/p&gt;</description></item><item><title>Eyes On You：从SRE理念到Prometheus监控体系落地实践</title><link>https://blog.mickeyzzc.tech/posts/telemetry/prometheus-first/</link><pubDate>Sat, 20 Jun 2020 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/prometheus-first/</guid><description>&lt;p&gt;在互联网业务分布式、高并发、多云部署的大背景下，&lt;strong&gt;SRE（网站稳定性工程）&lt;/strong&gt; 成为保障服务可用性的核心角色，而&lt;strong&gt;监控体系&lt;/strong&gt;则是SRE的“眼睛”。本文从SRE核心理念出发，拆解现代监控体系的痛点、技术栈选型、Prometheus核心原理与告警实战，还原一套可落地的企业级监控建设思路。&lt;/p&gt;</description></item><item><title>监控系统企业架构演进史-跨地域混合云</title><link>https://blog.mickeyzzc.tech/posts/architecture/prometheus-evolution-history-two/</link><pubDate>Mon, 12 Oct 2020 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/architecture/prometheus-evolution-history-two/</guid><description>&lt;h2 id="前情概述"&gt;前情概述：&lt;/h2&gt;
&lt;p&gt;在《监控系统企业架构演进史-初入Prometheus》中，监控系统已经从单体架构升级到单&lt;code&gt;IDC&lt;/code&gt;分布式架构了。
前一篇文章的内容是适用于虚拟机部署和容器部署的。&lt;code&gt;Prometheus&lt;/code&gt;是云原生时代的产物，一般和&lt;code&gt;Kubernetes&lt;/code&gt;配套使用，但是&lt;code&gt;Prometheus&lt;/code&gt;本身也能在非&lt;code&gt;Kubernetes&lt;/code&gt;取替传统监控如&lt;code&gt;Zabbix&lt;/code&gt;使用的。
在该篇文章中，开始以&lt;code&gt;Kubernetes&lt;/code&gt;的部署来升级整个监控系统架构，使之在跨地域混合云的业务场景中更具灵活性。&lt;/p&gt;</description></item><item><title>监控系统企业架构演进史-拨测监控</title><link>https://blog.mickeyzzc.tech/posts/architecture/prometheus-evolution-history-three/</link><pubDate>Sat, 12 Dec 2020 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/architecture/prometheus-evolution-history-three/</guid><description>&lt;h2 id="前情概述"&gt;前情概述：&lt;/h2&gt;
&lt;p&gt;在《监控系统企业架构演进史-跨地域混合云》中，监控系统已经逐步成熟且企业化发展。
这一章节简单讲述一下期间的拨测能力搭建，以下是这套系统的发展史，在监控平台搭建的过程中，内部监控采集还不足以满足企业业务需求，在计划发展apm之前，异地拨测的黑匣子监控也纳入了该系统的一个子功能。&lt;/p&gt;</description></item><item><title>互联网公司黑盒拨测监控系统架构设计与落地实践</title><link>https://blog.mickeyzzc.tech/posts/architecture/blackbox-system-architecture/</link><pubDate>Tue, 31 Aug 2021 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/architecture/blackbox-system-architecture/</guid><description>&lt;p&gt;在互联网服务的全链路监控体系中，&lt;strong&gt;白盒监控&lt;/strong&gt;侧重主动挖掘潜在隐患、提前预判风险，&lt;strong&gt;黑盒监控&lt;/strong&gt;则以故障为核心导向，快速感知已发生的线上问题。二者协同才能构建完整的监控闭环。而多数互联网企业长期存在&lt;strong&gt;公网服务、用户侧最后一公里&lt;/strong&gt;的监控盲区，用户侧故障往往只能被动等待报障后才启动排查，黑盒拨测监控系统正是为解决这一行业痛点而生。&lt;/p&gt;</description></item><item><title>从瓶颈破局到平台化治理——互联网公司监控平台架构演进全历程</title><link>https://blog.mickeyzzc.tech/posts/architecture/monitor-system-architecture/</link><pubDate>Mon, 10 Jan 2022 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/architecture/monitor-system-architecture/</guid><description>&lt;p&gt;在互联网业务高速扩张、多云部署、资产指数级增长的背景下，监控平台是保障服务稳定性的核心基建。本文完整复盘&lt;strong&gt;某大型互联网公司监控平台2019-2021年的演进之路&lt;/strong&gt;，从解决老旧监控性能瓶颈，到跨云分布式监控落地，再到云原生平台化治理，呈现监控体系从&lt;strong&gt;0到1搭建→规模化扩展→平台化治理&lt;/strong&gt;的完整蜕变。&lt;/p&gt;</description></item><item><title>混合云跨地域监控系统治理：自治+统一双核心架构实践</title><link>https://blog.mickeyzzc.tech/posts/architecture/monitor-cloud-architecture/</link><pubDate>Mon, 10 Jan 2022 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/architecture/monitor-cloud-architecture/</guid><description>&lt;p&gt;在企业业务全球化、混合云规模化部署的背景下，&lt;strong&gt;跨IDC、跨国内外、多云异构&lt;/strong&gt;的监控治理成为稳定性保障的核心难题。传统监控方案要么依赖高成本专线改造、侵入业务架构，要么无法兼顾节点自治与全局统一，同时监控系统作为非营收类基建，还需严格控制资源占用且不允许能力降级。&lt;/p&gt;</description></item><item><title>Eyes On You：海量多云异构下的监控平台2022产品化演进之路</title><link>https://blog.mickeyzzc.tech/posts/telemetry/eyeonyou/</link><pubDate>Mon, 20 Jun 2022 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/eyeonyou/</guid><description>&lt;p&gt;在多云部署、全球化组网、服务规模指数级增长的互联网业务场景中，监控平台早已超越“指标采集+告警通知”的基础定位，成为保障全链路稳定性的核心基建。本文基于大型互联网企业监控平台的真实演进历程，拆解2022年监控平台从&lt;strong&gt;规模化覆盖&lt;/strong&gt;向&lt;strong&gt;产品化、易用化、智能化&lt;/strong&gt;升级的完整规划与落地思路。&lt;/p&gt;</description></item><item><title>可观测技术存储架构总览：从 Gorilla 到 Parquet 的演进</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-01-storage-overview/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-01-storage-overview/</guid><description>&lt;h2 id="引言"&gt;引言&lt;/h2&gt;
&lt;p&gt;可观测性（Observability）已成为云原生时代的基础设施核心。Metrics、Logs、Traces、RUM、Profiling 五大信号各自产生海量数据，而它们的存储效率直接决定了平台的成本边界和查询性能。而在采集侧，eBPF 技术正在重塑数据获取方式。这一切的背后，存储架构的演进是支撑可观测性规模化落地的基石。&lt;/p&gt;</description></item><item><title>时序数据库存储架构深度对比：InfluxDB、Prometheus、VictoriaMetrics、TimescaleDB</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-02-tsdb-storage/</link><pubDate>Tue, 16 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-02-tsdb-storage/</guid><description>&lt;h2 id="引言"&gt;引言&lt;/h2&gt;
&lt;p&gt;时序数据库（TSDB）是可观测性存储的基石。如果说上一篇是宏观的&amp;quot;存储地图&amp;quot;，那本篇就是深入地图中的&amp;quot;核心城区&amp;quot;——四大主流 TSDB 的存储引擎。无论你是刚开始接触 Prometheus 还是正在调研 VictoriaMetrics，理解底层存储引擎的设计哲学，能帮你更高效地用对它们。&lt;/p&gt;</description></item><item><title>日志存储架构：从倒排索引到弱索引的范式转移</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-03-log-storage/</link><pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-03-log-storage/</guid><description>&lt;h2 id="引言"&gt;引言&lt;/h2&gt;
&lt;p&gt;日志是可观测性三大支柱中数据量最大、存储成本最高的信号。与指标（Metrics）的固定数值结构不同，日志的变长文本和半结构化特性使得存储设计面临独特挑战：既要支持全文检索，又要控制存储成本。&lt;/p&gt;</description></item><item><title>分布式调用链存储架构对比：Jaeger、Tempo、SkyWalking 与商业方案</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-04-tracing-storage/</link><pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-04-tracing-storage/</guid><description>&lt;p&gt;调用链（Distributed Tracing）存储是可观测性体系中技术分歧最大的领域之一。不同于时序和日志有相对收敛的存储模式（TSDB 与 ClickHouse-like），调用链系统的存储方案因&lt;strong&gt;索引策略&lt;/strong&gt;的根本分歧而分化为三条路径。&lt;/p&gt;</description></item><item><title>前端监控(RUM)时序存储架构：Sentry、Datadog RUM 与 Grafana Faro</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-05-rum-storage/</link><pubDate>Mon, 22 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-05-rum-storage/</guid><description>&lt;p&gt;前端监控（Real User Monitoring, RUM）与后端监控的根本差异在于数据模型：RUM 采集的是&lt;strong&gt;带海量高基数属性的事件流&lt;/strong&gt;——每个用户访问产生 session_id、user_id、page_url 等上百个维度，传统时序数据库（TSDB）的 label-set 模型在此场景下会剧烈退化。&lt;/p&gt;</description></item><item><title>持续性能分析(Profiling)存储架构：从 pprof 到 Pyroscope V2 与 Parca</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-06-profiling-storage/</link><pubDate>Wed, 24 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-06-profiling-storage/</guid><description>&lt;p&gt;持续性能分析（Continuous Profiling）是可观测性的重要支柱之一。与传统的采样 Profiling 不同，持续 Profiling 以固定频率全时采集应用和内核的调用栈快照，生成火焰图，帮助团队发现性能瓶颈、内存泄漏和资源热点。本文聚焦 Profiling 数据的存储架构：从 Google pprof 数据模型与火焰图构建算法开始，详细分析 Pyroscope 从 V1（TSDB+Parquet）到 V2（Metastore+Segments）的架构演进、Parca 与 FrostDB 的列式存储创新、Datadog/Splunk 等商业方案，最后通过对比表格呈现各方案的差异化选择。&lt;/p&gt;</description></item><item><title>eBPF 采集存储与可观测性统一架构趋势</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-07-ebpf-unified-trends/</link><pubDate>Sat, 27 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-07-ebpf-unified-trends/</guid><description>&lt;p&gt;可观测性架构在过去五年经历了从&amp;quot;分治&amp;quot;到&amp;quot;统一&amp;quot;的深刻转变。各信号（指标、日志、追踪、Profiling）从独立的专用后端走向共享存储与统一数据模型，而 eBPF 作为新一代采集手段，为这一转变提供了前所未有的数据深度与广度。本文将聚焦四个维度：eBPF 采集存储设计、统一存储架构（LGTM 分治 vs ClickHouse 统一）、OpenTelemetry 统一数据模型、以及对象存储与存算分离的演进方向。&lt;/p&gt;</description></item><item><title>可观测技术存储选型指南：场景驱动的决策框架</title><link>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-08-storage-selection-guide/</link><pubDate>Wed, 01 Jul 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/obs-tech-08-storage-selection-guide/</guid><description>&lt;p&gt;前面 7 篇分别深入剖析了 TSDB、日志、调用链、RUM、Profiling 和 eBPF 等各个可观测性领域的存储架构。本篇将这些知识融会贯通，提供一份&lt;strong&gt;面向场景的存储选型决策框架&lt;/strong&gt;。不同团队的规模、技术栈、预算和需求层次各不相同——没有&amp;quot;最佳&amp;quot;存储，只有&amp;quot;最适合你的&amp;quot;存储。本篇可以作为实用参考工具书，帮助你在具体场景下快速筛选方案。&lt;/p&gt;</description></item><item><title>eBPF 可观测性入门：从 OOM Killer 监控开始</title><link>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-intro/</link><pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-intro/</guid><description>&lt;p&gt;eBPF（Extended Berkeley Packet Filter）最初是网络包过滤工具，经过近十年发展，已经成为 Linux 内核最强大的可观测性框架。它允许你在不修改内核源码、不加载内核模块的前提下，安全地注入并执行自定义程序。&lt;/p&gt;</description></item><item><title>用 eBPF + Go 构建 OOM Killer 事件追踪器</title><link>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-tracer-cgo/</link><pubDate>Thu, 11 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-tracer-cgo/</guid><description>&lt;p&gt;bpftrace 适合快速探查和临时调试，但如果要构建持续运行的生产级监控工具，就需要完整的 eBPF 程序了。典型的架构分两层：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;内核态&lt;/strong&gt;：用 C 编写 eBPF 程序，挂载到 hook 点，采集事件数据&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;用户态&lt;/strong&gt;：用 Go（或 Rust / libbpf C）编写 loader，加载 eBPF 程序并读取事件&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这个模式在行业里已经非常成熟——Pixie、Parca、Cilium 等开源项目都遵循这个架构。&lt;/p&gt;</description></item><item><title>eBPF 内存可观测性进阶：容器追踪与 Rust Aya 实践</title><link>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-advance/</link><pubDate>Fri, 12 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-advance/</guid><description>&lt;p&gt;前两篇文章覆盖了 eBPF 基础概念和 OOM Killer 事件追踪。这篇文章进入更深的层次：容器级别的 OOM 定位、内存分配速率的实时追踪，以及用 Rust Aya 框架来实现同样的功能。&lt;/p&gt;
&lt;h2 id="容器级-oom-定位"&gt;容器级 OOM 定位&lt;/h2&gt;
&lt;p&gt;在 Kubernetes 环境中，&amp;ldquo;某个 Pod OOM 了&amp;quot;实际上是一个模糊的描述。Pod 由多个容器组成，容器可能属于不同的 cgroup。eBPF 可以穿透这一层，精确地定位到&amp;quot;是哪个容器里的哪个进程&amp;quot;导致了 OOM。&lt;/p&gt;</description></item><item><title>BPF OOM 内核补丁深度解析：用 eBPF 自定义 OOM 策略</title><link>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-bpf-patches/</link><pubDate>Sat, 13 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-oom-bpf-patches/</guid><description>&lt;p&gt;前几篇文章展示了如何使用 eBPF 追踪 OOM 事件。但这还不够——我们只是在&amp;quot;看&amp;quot;，不能&amp;quot;管&amp;quot;。内核的 OOM Killer 选谁杀谁，由 &lt;code&gt;oom_badness()&lt;/code&gt; 算法决定，用户无法干预。&lt;/p&gt;</description></item><item><title>eBPF系列之：DeepFlow 扩展协议解析实践（MongoDB协议与Kafka协议）</title><link>https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/</link><pubDate>Sat, 25 Nov 2023 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e6%a6%82%e8%bf%b0"&gt;概述：&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%a6%82%e4%bd%95%e5%88%86%e6%9e%90%e4%b8%80%e4%b8%aa%e5%8d%8f%e8%ae%aemongodb"&gt;如何分析一个协议(MongoDB)&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%8d%8f%e8%ae%ae%e6%96%87%e6%a1%a3%e7%9a%84%e5%88%86%e6%9e%90%e6%80%9d%e8%b7%af"&gt;协议文档的分析思路&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#mongodb%e5%8d%8f%e8%ae%ae%e6%93%8d%e4%bd%9c%e7%a0%81%e8%af%b4%e6%98%8e%e8%a1%a8"&gt;MongoDB协议操作码说明表&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%af%b9%e6%9c%80%e5%b8%b8%e8%a7%81%e7%9a%84%e6%93%8d%e4%bd%9c%e7%a0%81op_msg%e5%88%86%e6%9e%90"&gt;对最常见的操作码&lt;code&gt;OP_MSG&lt;/code&gt;分析&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%9c%a8deepflow-agent%e6%89%a9%e5%b1%95%e4%b8%80%e4%b8%aa%e5%8d%8f%e8%ae%ae%e8%a7%a3%e6%9e%90%e9%87%87%e9%9b%86"&gt;在&lt;code&gt;DeepFlow Agent&lt;/code&gt;扩展一个协议解析采集&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#deepflow-agent%e7%9a%84%e5%bc%80%e5%8f%91%e6%96%87%e6%a1%a3%e6%a6%82%e8%a6%81"&gt;&lt;code&gt;DeepFlow Agent&lt;/code&gt;的开发文档概要&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e4%bb%a3%e7%a0%81%e6%8c%87%e5%bc%95"&gt;代码指引&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%ae%9a%e4%b9%89%e4%b8%80%e4%b8%aa%e5%8d%8f%e8%ae%ae%e5%b9%b6%e7%94%a8%e4%b8%80%e4%b8%aa%e5%b8%b8%e9%87%8f%e6%a0%87%e8%af%86"&gt;定义一个协议，并用一个常量标识。&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e4%b8%ba%e6%96%b0%e5%8d%8f%e8%ae%ae%e5%87%86%e5%a4%87%e8%a7%a3%e6%9e%90%e9%80%bb%e8%be%91"&gt;为新协议准备解析逻辑&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%ae%9a%e4%b9%89%e7%bb%93%e6%9e%84%e4%bd%93"&gt;定义结构体&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%ae%9e%e7%8e%b0l7protocolparserinterface"&gt;实现 &lt;code&gt;L7ProtocolParserInterface&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%88%a9%e7%94%a8wasm%e6%8f%92%e4%bb%b6%e6%89%a9%e5%b1%95deepflow%e7%9a%84%e5%8d%8f%e8%ae%ae%e9%87%87%e9%9b%86"&gt;利用&lt;code&gt;Wasm&lt;/code&gt;插件扩展&lt;code&gt;DeepFlow&lt;/code&gt;的协议采集&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#kafka%e5%8d%8f%e8%ae%ae%e5%88%86%e6%9e%90"&gt;&lt;code&gt;Kafka&lt;/code&gt;协议分析&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#kafka%e7%9a%84header%e5%92%8cdata%e6%a6%82%e8%a7%88"&gt;&lt;code&gt;Kafka&lt;/code&gt;的&lt;code&gt;Header&lt;/code&gt;和&lt;code&gt;Data&lt;/code&gt;概览&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#kafka%e7%9a%84fetch-api"&gt;Kafka的Fetch API&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#kafka%e7%9a%84produce-api"&gt;Kafka的Produce API&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#kafka%e5%8d%8f%e8%ae%aedeepflow-agent%e5%8e%9f%e7%94%9f%e8%a7%a3%e7%a0%81"&gt;Kafka协议DeepFlow Agent原生解码&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#deepflow-agent%e7%9a%84-wasm-%e6%8f%92%e4%bb%b6"&gt;&lt;code&gt;DeepFlow Agent&lt;/code&gt;的 &lt;code&gt;Wasm&lt;/code&gt; 插件&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#wasm-go-sdk-%e7%9a%84%e6%a1%86%e6%9e%b6"&gt;Wasm Go SDK 的框架&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e6%8f%92%e4%bb%b6%e4%bb%a3%e7%a0%81%e6%8c%87%e5%bc%95"&gt;插件代码指引&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e7%bb%93%e8%af%ad"&gt;结语&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e5%8e%9f%e7%94%9frust%e6%89%a9%e5%b1%95"&gt;原生Rust扩展&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#wasm%e6%8f%92%e4%bb%b6%e6%89%a9%e5%b1%95"&gt;Wasm插件扩展&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.mickeyzzc.tech/posts/telemetry/deepflow-agent-proto-dev/#%e9%99%84%e5%bd%95"&gt;附录&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="position:relative; padding-bottom:75%; width:100%; height:0"&gt;
&lt;iframe src="//player.bilibili.com/player.html?isOutside=true&amp;aid=921401645&amp;bvid=BV1Nu4y1A7ZC&amp;cid=1345829549&amp;p=1&amp;autoplay=false" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="position:absolute; height: 100%; width: 100%;"&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;h2 id="概述"&gt;概述：&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;MongoDB&lt;/code&gt; 目前使用广泛，但是缺乏有效的可观测能力。
&lt;code&gt;DeepFlow&lt;/code&gt; 在可观测能力上是很优秀的解决方案，但是却缺少了对 &lt;code&gt;MongoDB&lt;/code&gt; 协议的支持。
该文是为 &lt;code&gt;DeepFlow&lt;/code&gt; 扩展了 &lt;code&gt;MongoDB&lt;/code&gt; 协议解析，增强 &lt;code&gt;MongoDB&lt;/code&gt; 生态的可观测能力，简要描述了从协议文档分析到在 &lt;code&gt;DeepFlow&lt;/code&gt; 内实现代码解析的过程拆解。&lt;/p&gt;</description></item><item><title>eBPF系列之：Pixie浅剖析</title><link>https://blog.mickeyzzc.tech/posts/telemetry/pixie-try/</link><pubDate>Fri, 10 Feb 2023 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/pixie-try/</guid><description>&lt;p&gt;部署过程和指令参考：&lt;a href="https://docs.px.dev/installing-pixie/install-guides/self-hosted-pixie/"&gt;pixie install&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="pixie平台主要由以下组件组成"&gt;Pixie平台主要由以下组件组成：&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Pixie Edge Module 边缘模块(PEM)&lt;/strong&gt;:
Pixie&amp;rsquo;s agent, installed per node. PEMs use eBPF to collect data, which is stored locally on the node.
Pixie的代理，安装在每个节点上。PEM使用eBPF收集数据，这些数据存储在节点本地。&lt;/p&gt;</description></item><item><title>eBPF 开发语言之争：C、Rust 与 Zig 全链路对比</title><link>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-zig-lang-dev/</link><pubDate>Fri, 26 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.mickeyzzc.tech/posts/telemetry/ebpf-zig-lang-dev/</guid><description>&lt;p&gt;前面几篇讲 OOM 追踪时，所有 eBPF 内核态程序都是用 C 写的。这很自然——C 是 eBPF 的&amp;quot;母语&amp;quot;，verifier、CO-RE、libbpf 整个工具链都是围绕 C 设计的。但如果你关注过 eBPF 生态，会发现一个明显的趋势：&lt;strong&gt;越来越多的人开始用 C 以外的语言写 eBPF&lt;/strong&gt;。Rust 的 Aya 框架已经被 Solana 验证器、Kubernetes Gateway API 用在生产环境；而 Zig 也在尝试用 &lt;code&gt;comptime&lt;/code&gt;、显式分配和一流的 C 互操作带来新的开发体验。&lt;/p&gt;</description></item></channel></rss>