v6.6 EE Release Notes
创建时间:2024-11-05 最近修改时间:2024-12-16
#1. 零侵扰
#1.1 追踪
- AutoTracing
- ⭐ 新增调用链拓扑(
TraceMap
)能力,实时计算搜索条件命中的所有 Trace 的聚合拓扑图,帮助用户快速梳理软件架构、全局定位性能瓶颈。 - ⭐ 支持使用 Wasm Plugin 增强 HTTP2/gRPC 调用日志(目前尚不支持对 eBPF uprobe 数据的增强),文档。
- ⭐ 文件读写事件支持采集文件名的全路径,支持采集读写文件的 offset。
- 支持 Memcached 协议的采集和追踪,文档。
- 支持 Tars 协议的采集和追踪(目前仅 cBPF),文档。
- 支持 Some/IP 协议的采集和追踪。
- 新增 HTTP 协议 URL 脱敏能力、默认开启 Redis 协议脱敏,文档。
- 优化网络 Span 追踪所使用的 NTP 时钟偏差(
host_clock_offset_us
)和网络传输时延(network_delay_us
)配置参数默认值,降低误匹配概率。 - 优化 OTel Span 中 schema/target 等字段到
l7_flow_log
的映射,文档。 - 支持解析听云 TraceID 和 SpanID。
- ⭐ 新增调用链拓扑(
- AutoMetrics
- 支持同会话中的请求和响应指标时间戳对齐,帮助 AIOps 系统更好的实现根因定位。
- AutoTagging
- 支持聚合采集 Open vSwitch bond interface 的多个成员物理网卡的流量,文档。
- 正确标记 K8s Node 上 loopback 网卡流量的 Universal Tag。
- 搜索能力
- 新增
应用搜索
模式,可快速点选服务(app_service
)和实例(app_instance
),可快速输入端点(endpoint
)和 TraceID。 - 优化搜索框的布局,优化快速点选框的显示样式。
- 新增
- 性能提升
- 优化调用链追踪 API 性能。
- 易用性提升
- ⭐ 调用链追踪增加
后端分析
能力,智能引导用户在 eBPF AutoTracing 断链的情况下快速追踪到对后端的请求。 - ⭐ 支持快速查看系统 Span 对应的持续剖析和实时剖析数据。
- ⭐ 调用链追踪支持
瀑布列表
的显示模式。 - ⭐ deepflow-agent 支持直接接收 SkyWalking、Datadog 的追踪数据,无需经过 otel-collector 转发。
- ⭐ 调用链追踪火焰图自动校正不同机器的细微时钟偏差。
- ⭐优化
网络路径
右滑页的易用性。 - 优化开启 eBPF uprobe 功能的进程配置能力,文档。
- 优化调用链追踪页面:左侧快速过滤框顺序调整、增加趋势分析折线图、优化调用日志详情表格。
- 资源分析、路径分析、拓扑分析页面支持自动选择最合适的指标时间粒度进行查询,以优化查询速度。
- 资源分析、路径分析、拓扑分析页面支持快速过滤指标量的值域。
- 右滑页面中的调用日志默认仅展示异常条目。
- 优化拓扑图中 Tip 的展示位置。
- 优化标签分类的中英文展示。
- 丰富页面左侧快速过滤框。
- 优化搜索框候选项的显示顺序。
- ⭐ 调用链追踪增加
#1.2 剖析
- AutoProfiling
- 性能提升
- ⭐ Java 进程符号表同步机制优化,对业务进程引入的瞬时 CPU 消耗降低了约 50%。
- ⭐ 函数栈合并效率提升,降低函数栈上报的资源开销,在同名线程较多的场景下有显著性能提升。
- ⭐支持压缩传输 Profiling 数据,带宽消耗降低 30%。
- 实时剖析
- ⭐ 支持使用 JVM API 获取 Java 进程的函数栈、GC 统计信息、Heap 统计信息。
- Grafana
- 支持在 Grafana Panel 中查看 DeepFlow eBPF On-CPU Profiling 数据。
- 易用性提升
- 优化开启 Profile 功能的进程配置能力,文档。
- 优化火焰图中函数类型的展示。
- 优化内存剖析火焰图的文案。
- 丰富页面左侧快速过滤框。
- 优化搜索框候选项的显示顺序。
#1.3 网络
- AutoTagging
- 支持聚合采集 Open vSwitch bond interface 的多个成员物理网卡的流量,文档。
- 正确标记 K8s Node 上 loopback 网卡流量的 Universal Tag。
- PCAP
- ⭐ 支持在线分析 PCAP 包数据。
- 分发
- ⭐ 流量分发支持 ZMQ 协议。
- 性能提升
- 优化 NAT 追踪 API 性能。
- 易用性提升
- ⭐优化
网络路径
右滑页的易用性。 - 资源分析、路径分析、拓扑分析页面支持自动选择最合适的指标时间粒度进行查询,以优化查询速度。
- 资源分析、路径分析、拓扑分析页面支持快速过滤指标量的值域。
- 专属采集器
采集网卡=其他网卡
的流量计入资源指标量中。 - 支持隧道流量与非隧道流量聚合,解决非对称路径流量聚合问题。
- 开启 TCP 包头或 PCAP 数据的采集时,自动开启网络流日志的采集。
- 优化 NAT 追踪页面信息栏的展示。
- 优化拓扑图中 Tip 的展示位置。
- 右滑页面中的流日志默认仅展示异常条目。
- 优化标签分类的中英文展示。
- 提供流日志结束类型(
close_type
)的图形化释义。 - 丰富页面左侧快速过滤框。
- 优化搜索框候选项的显示顺序。
- ⭐优化
#1.4 拨测
- 实时拨测
- ⭐ deepflow-agent 进程内部内置拨测能力,无需安装拨测命令的二进制文件。
- 支持的命令包括:ping、tcpping、curl、dig、traceroute。
- 支持进入业务 Pod 执行拨测命令。
#2. 自定义
#2.1 视图
- 子视图增强
- ⭐ 聚合指标和概览图支持 PromQL 查询,以增强 Prometheus 指标在视图中的展示能力。
- 优化子视图 Tip 显示,在有多个查询条件时显示查询名,在仅有单个指标时紧凑(忽略)显示指标名。
- 拓扑图支持设置路径指标的(相邻两跳的)差量的阈值。
- 表格支持更丰富的颜色设置。
- 子视图支持设置图例的颜色。
- 优化饼图的自定义能力。
- 增加放大查看的能力。
- 指标单位设置方式统一。
- 易用性提升
- 简化子视图指标别名、单位、阈值的设置方式。
- 资源变更事件、文件读写事件的右滑详情页优化。
- 优化右滑页面的 Tab 页展示。
- 支持为视图添加标签。
- 支持复制整个视图。
- 优化图例展示。
#2.2 全景图
- 数据关联
- ⭐ 全景图支持展示告警事件。
- 易用性提升
- 优化拓扑样式。
#3. 集成
#3.1 日志
- 性能提升
- ⭐ 应用日志数据支持压缩传输,带宽消耗降低 95%(CPU 消耗增加 3%)。
- 易用性提升
- 优化搜索框,固定选中应用服务(
app_service
)过滤条件。
- 优化搜索框,固定选中应用服务(
#4. 运营
#4.1 告警
- 告警策略
- ⭐ Email 推送内容支持 Markdown 格式,支持 Jinja2 语法引用标签。
- 搜索模块支持设置指标别名、查看单位。
- 告警事件
- ⭐ 丰富告警事件的 Tag,与所有可观测性数据拉齐。
- 增加
事件分析
页面,统计分析告警事件。
- 推送端点
- 推送至 Kafka 时支持
SCRAM-SHA-256
认证方式。
- 推送至 Kafka 时支持
- 易用性提升
- 优化系统告警事件,展示 DeepFlow 进程异常的详细内部模块名称。
- 优化告警事件右滑框的时间范围展示。
- 性能提升
- 页面加载时间优化。
#4.2 报表
#5. 管理
#5.1 资源
- AutoTagging
- 管理能力
- 录入 K8s 集群时支持指定 ClusterID,使得集群重新录入时可复用旧 ClusterID。
- 支持利用 Lua Plugin 自定义 K8s 工作负载抽象规则,文档。
- 限制同一组织同一区域内仅支持一个
采集器同步
类型的云平台。 - 支持通过普通账号的 AK/SK、携带 ResourceGroupId 完成阿里云资源同步。
- 预置资源同步滞后、资源关联关系异常的系统告警。
- 性能提升
- 取消同步 K8s Evicted 状态的 Pod,减少资源开销。
- 优化
genesis*
相关 MySQL 表的存储性能。
- 适配性优化
- 当云平台(Domain)配置了区域白名单时,不再需要调用 Region API。
- 阿里云、腾讯云的 NAT 网关、路由表、负载均衡器获取失败时不影响其他资源信息的同步。
#5.2 系统
- Server
- ⭐ 支持使用 OceanBase 替换 MySQL。
- ⭐ 支持使用 ByConity 替换 ClickHouse,文档。
- ⭐ 支持使用 ClickHouse 企业版(目前仅支持阿里公有云),文档 (opens new window)。
- 默认聚合生成粒度为 1h、1d 的网络性能指标和应用性能指标。
- 数据导出(Kafka/Promtheus/OTel)的过滤器(
tag-filters-groups
)支持填写多组,以实现逻辑或的语义。 - 统一 deepflow-server 中各模块的日志格式。
- 性能提升
- ClickHouse 通过代理访问 MySQL 获取字典数据,降低 MySQL 连接数、优化跨 Region 带宽消耗。
- Agent
- ⭐ 配置重构,大幅提升易用性,文档。
- ⭐ 支持使用 eBPF 采集 DPDK 网卡的流量。
- 支持通过环境变量指定和禁用 K8s List & Watch,文档。
- 支持解封装 VXLAN 类型的远程镜像流量,文档。
- 专属采集器支持设置为忽略 PCP 处理镜像流量,文档。
- 专属采集器支持按 QinQ 内层 VLAN 计算网络位置(
capture_network_type
),文档。 - 专属采集器默认不限制并发流数量与策略模块的内存开销,文档。
- 空闲内存熔断机制支持使用 available 内存指标,文档。
- 减少 deepflow-agent 发送数据时使用的 Socket 数量:
- 合并集成 OpenTelemetry 时,传输 open_telemetry 和 open_telemetry_compressed 数据使用的 Socket。
- 合并用于 agent 自监控的、传输 deepflow_stats 和 agent_log 数据使用的 Socket。
- 合并集成 Prometheus 和 Telegraf 时,传输 prometheus 和 telegraf 指标使用的 Socket。
- 性能提升
- ⭐ 降低 Agent 的 eBPF 内核内存开销,默认配置下可降低 60% 的内存消耗。
- ⭐ 支持利用 BPF FANOUT 机制提升采集性能,文档。
- 当协议头中存在 TraceID 时,支持关闭 eBPF syscall_trace_id 计算,以降低对业务性能的影响,文档。
- 支持完全关闭 cBPF 数据采集(通过配置
inputs.cbpf.af_packet.interface_regex
为空字符串),以降低内存开销,文档。 - 支持 deepflow-agent 使用一个 Socket 传输所有观测数据,文档。
- 在 Linux 启用了 BTF(BPF Type Format)的情况下,当 X86 架构下内核大于等于 5.5 (opens new window)、ARM 架构下内核大于等于 6.0 (opens new window) 时,agent 将会自动使用 fentry/fexit 替代 kprobe/kretprobe,此时可获得约 15% 的性能提升。
- 易用性改进
- 大幅度缩减 Web 页面的 URL 长度,在 URL 中记忆 Web 页面右滑框的激活状态。
- 采集器列表中展示所属容器集群。
- 优化导航栏的中英文展示。
#5.3 账号
- 多租户支持
- ⭐ 支持设置租户可见的页面、资源、数据库/数据表/数据字段/字段枚举值。
- ⭐ 支持单独指定云平台某个附属容器集群的所属团队,使得不同团队可管理自己的容器集群。
- 管理员对组织内租户不可见。
- 普通管理员加入租户组织时默认为访客身份。
- 不允许租户创建组织。
#6. 不兼容修改
- AutoTracing
- 为了降低资源开销并避免误识别,agent 默认仅会解析如下应用协议(如需开启其他协议的解析请配置
l7-protocol-enabled
):- HTTP、HTTP2/gRPC、MySQL、Redis、Kafka、DNS、TLS。
- 提醒:当使用 Wasm 解析私有协议时,请将 Custom 添加到
l7-protocol-enabled
中。
- 为了降低资源开销并避免误识别,agent 默认仅会解析如下应用协议(如需开启其他协议的解析请配置
- Agent
- 原有的环境变量
ONLY_WATCH_K8S_RESOURCE
已被替代为K8S_WATCH_POLICY
,文档。
- 原有的环境变量
- API
- Profiling API 使用 Dataframe 返回格式压缩响应体积,提升 API 性能,PR (opens new window),文档。
#Functions | Response Size (Byte) | Download Time | |
---|---|---|---|
Before | 450,000 | 21.9M | 6.16s |
After | 450,000 | 3.07M | 0.78s |