更新历史¶
1.18.0(2026/08/12)¶
功能优化¶
- 优化尾采样的
trace_id提取路径,在RawGroupId可用时避免重复遍历 payload,并保持采样行为不变(#108) - 升级
cliutils,磁盘缓存打开后自动初始化容量指标,并完善关闭及文件锁释放行为(#111)
问题修复¶
- 统一 Aggregate 与 Tail Sampling 特殊 API 的 token 校验和传递语义(#88)
- 按 token、写入路由及 main/headless 模式隔离无效 token 负缓存,避免跨场景误拦截(#106)
- 修复失败缓存与尾采样磁盘降级路径的并发访问问题,避免磁盘队列初始化、读取和关闭期间的数据竞态(#111)
- 隔离 pprof 与 Prometheus HTTP mux;pprof 默认关闭,启用时仅允许监听 loopback,并限制诊断请求时长与并发(#89)
- 脱敏请求转发、缓存重放、聚合、尾采样及 Sinker 日志中的 token、凭据、全局标签和规则内容(#104)
- 修复系统工作空间 URL 判定,并补齐普通与级联模式下 token 注入的回归验证(#104)
- 修正主 HTTP Server 请求头超时、Gin mode、IP 黑名单配置示例及 API wrapper 错误处理(#104)
安全与可观测性¶
- 固定 CI 使用的 Go 与 golangci-lint 下载包,并按架构校验 SHA-256,移除远程安装脚本直接执行路径(#101)
- 更新 DataWay 默认仪表板,补充 Kodo 队列与无效 token 负缓存监控,并修正 Sinker 缓存丢弃指标(#85)
1.17.0(2026/07/14)¶
新增功能¶
- 新增 OTLP HTTP/protobuf 接口:
/otel/v1/traces、/otel/v1/metrics和/otel/v1/logs(#81) - OTLP 请求支持 query
token、X-Token和 Bearer token,并接入 Kodo 队列与磁盘缓存(#81) - OTLP 请求支持透传 Kodo 的状态码、body 和必要 header(#81)
功能优化¶
- 优化聚合与尾采样的 Sinker 分流,单个分组发送失败不再影响其他分组(#71)
- 无效 token 负缓存仅作用于符合条件的写入请求(#77)
- 优化聚合的内存占用和并发稳定性
- 优化尾采样积压处理,内存队列满时可暂存到磁盘
- 提升磁盘缓存异常场景下的稳定性
问题修复¶
- 修复 Sinker 规则缓存的竞态与容量问题(#93)
可观测性¶
- 新增文件描述符指标
dataway_open_files_by_type和 TCP 指标dataway_tcp_connections - 新增尾采样、发送队列、worker 和磁盘暂存指标
1.16.1(2026/07/09)¶
问题修复¶
/v1/write/rum会拒绝空 body,并返回400和dataway.emptyBody;非空 body 仍原样转发(#82)- Kodo 队列满时,将可缓存请求写入磁盘;缓存不可用时返回
503(#83) - 仅在写入成功后返回“已缓存”,并完善缓存失败原因记录(#83)
1.16.0(2026/07/02)¶
新增功能¶
- 新增 IPv6 和双栈部署支持,IP 白名单支持 IPv4、IPv6 和 CIDR(#79)
- 新增
bind_ipv6/DW_BIND_IPV6和trusted_proxies/DW_TRUSTED_PROXIES配置(#78、#79)
功能优化¶
- Kodo 成功响应为空时,不再返回空 body 和
Content-Type(#78) - 仅对带
Origin的请求返回 CORS header,并为转发响应增加X-Content-Type-Options: nosniff(#78)
1.15.0(2026/05/27)¶
新增功能¶
- 新增 Kodo 有界队列,覆盖写入、上传和 Firehose 请求
- 队列默认启用,并支持
DW_KODO_QUEUE_*环境变量 - 队列满时缓存可缓存请求。缓存不可用时返回
503 - 新增无效 token 负缓存,支持
DW_TOKEN_NEGATIVE_CACHE_*环境变量 - 负缓存默认 TTL 为
5m,最多保存1000个 token
功能优化¶
- 聚合接口增加 token 和 payload 校验
- 聚合发送改用后台队列,支持 3 次重试,并增加
Content-MD5 - 聚合 proxy 复用反向代理,并校验相关配置
- 缓存回放使用当前
remote_host,默认清理间隔改为1s - 更新 Sinker 文档。DataKit 2.0.0 起,非 point 写入 API 通常不需要
__dataway_api规则
可观测性¶
- 新增 Kodo 队列相关指标:
dataway_kodo_queue_wait_seconds、dataway_kodo_queue_depth、dataway_kodo_queue_bytes、dataway_kodo_queue_enqueued_total、dataway_kodo_queue_full_total、dataway_kodo_queue_dispatch_total - 新增无效 token 负缓存指标:
dataway_token_negative_cache_added_total、dataway_token_negative_cache_blocked_total - 新增聚合/尾采样相关指标:
dataway_http_api_body_size_bytes_total、dataway_http_aggr_point_total、dataway_http_tail_sampling_trace_total、dataway_http_tail_sampling_span_total、dataway_http_tail_sampling_packet_send_total - 新增磁盘缓存锁竞争指标:
diskcache_lock_wait_seconds、diskcache_lock_contention_total - 修复 Sinker 场景下延迟指标的
sinked标签
1.14.0(2026/04/17)¶
- 新增 session replay image 处理接口
1.13.0(2026/04/10)¶
- 新增 DataWay 旁路聚合和采样支持(#67)
1.12.3(2026/03/26)¶
- 新增 v2 Sinker header 格式,以解决分流 header 中异常数值导致违反 HTTP 标准的问题(#68)
1.12.2(2026/03/17)¶
- 更新 DataWay 镜像 SSL 证书,避免级联情况下无法识别 Openaway SSL 证书(#69)
1.12.1(2025/12/25)¶
- 修复 1.12.0 版本中 Sinker 分流无法复制请求的问题(#66)
1.12.0(2025/12/19)¶
新增功能¶
-
优化 Sinker 缓存机制(#34)
- 新的 sinker 缓存机制通过请求的哈希特征(16 byte)来缓存,而不是完整缓存完整的请求特征,通过两路哈希来尽量避免哈希冲突,理论上哈希冲突概率为 n/2^128,n 即缓存的 key 的个数
- Sinker 缓存增加 TTL 机制以及 capacity 机制,使得内存占用进一步被限制:TTL 机制会清理那些不活跃的缓存,capacity 机制旨在保证缓存中 key 的个数不超过指定的限制。同时 TTL 和 capacity 限制使得上面的哈希冲突概率进一步降低
-
新增配置优化 DataWay HTTP header 返回,降低 DataWay 公网流量(#65)
1.11.2(2025/11/25)¶
- 优化 DataWay 转发 Kodo 的 HTTP 请求(#64)
1.11.1(2025/11/15)¶
- 修复
__internal__token 无效问题(#63)
1.11.0(2025/11/12)¶
新增功能¶
- 升级 DataWay 基础镜像到 Ubuntu 22.04(#62)
- DataWay 支持阻挡无效流量(#61)
问题修复¶
- 修复 session replay 以及 profile 分流无法复制数据到不同空间的问题(#59)
1.10.0(2025/09/03)¶
新增功能¶
- 增加 Langfuse 数据接入功能(#57)
1.9.0(2025/04/25)¶
新增功能¶
- DataWay 在数据上传类请求中增加
X-Pkg-Id以便数据追踪(#53) - 完善程序日志,更多 Kodo 返回的错误码将透传给 DataKit(#52)
- 新增 API 自持拉取环境变量(#55)
- 更新磁盘缓存代码,以定位部分情况下出现的
invalid argument报错(#56)
1.8.0(2025/02/19)¶
新增功能¶
- DataWay 开启 Sinker 模式下,支持同时处理客户端(如 DataKit/Function)发送过来的数据上报请求(#50)
1.7.0(2024/12/18)¶
新增功能¶
- 新增 AWS Firehose 接入入口(#47)
- 支持通过
X-Token传递 token(#43)
功能优化¶
- 调整内部回收的默认参数,优化内存使用(#49)
- 优化 Kubernetes 部署中的默认 yaml,调整其 cache 磁盘挂载配置(#48)
- 调整并增加部份内部指标,更新 DataWay 默认视图
1.6.2(2024/12/03)¶
功能优化¶
- 增加 HTTP 层面的连接配置入口(#46)
1.6.1(2024/11/19)¶
功能优化¶
- 增加选项以禁用 404 页面(#44)
1.6.0(2024/09/19)¶
功能优化¶
- 优化磁盘缓存相关的环境变量配置
- 增加更多自身指标暴露,同时优化了一些 HTTP 转发层面内存的使用(#39)
- DataWay 支持配置自身 SNI(#42)
- 新增对时接口,便于 DataKit 获取较为准确的 Unix 时间戳(#40)
- Sinker:
1.5.0(2024/07/05)¶
功能优化¶
- 优化安装脚本(#33)
兼容调整¶
- 新版本移除了主机安装模式下直接支持 Sinker 配置的功能。该功能后续会通过新的方式予以支持。
1.4.1(2024/06/19)¶
- 修复 Kubernetes 安装模式下
DW_ENABLE_TLS缺失问题 - 更换构建镜像地址
1.4.0(2024/05/15)¶
- 新增 DataKit 计量接口(#29)
- 修复 cache 可能丢失数据的问题(#31)
- 支持在 DataWay 端直接配置 HTTP TLS 证书(#32)
- 增加更多指标暴露
1.3.9(2024/03/28)¶
- Sink 丢弃请求时,增加返回 HTTP
406 Not Acceptable错误,便于排查问题(#82)
1.3.8(2024/01/24)¶
- 新增更多指标暴露
- 大幅度提升 Sinker 规则匹配性能(#26)
1.3.7(2023/12/14)¶
- 新增更多指标暴露
- 优化磁盘缓存清理策略,采集尽快消费原则:
- 避免存储超限导致数据主动丢弃
- 同时尽早将缓存的数据发送上去
- 增加超大请求丢弃相关的可观测性(指标/日志)
- 调整 DataWay 自身 POD yaml,完善其指标和日志采集
1.3.6(2023/10/24)¶
- 新增 DataWay
sink管理命令
1.3.5(2023/09/13)¶
- Kubernetes 下支持通过环境变量注入来安装 DataWay
- 新发布了 dataway.yaml
1.3.4(2023/09/01)¶
- 升级 Golang 到 1.9
- 修复 inner token 无数据问题
- 默认配置中调整如下配置:
- 默认 API 限流增加到 100K
- 默认最大 Body 增加到 64MB
- 新增 HTTP 超时设置(DataWay 到中心),默认 30s
- 新增配置以忽略 TLS 509 报错
1.3.3(2023/09/01)¶
- 修复镜像打包
curl问题
1.3.2(2023/08/30)¶
- 镜像中增加
curl命令,便于查看自身指标
1.3.1(2023/08/28)¶
- 增加 URL 的 Sinker 功能
1.3.0(2023/08/24)¶
- 重构整个 DataWay 实现,增加 Sinker 功能
1.2.12(2023/08/28)¶
- 重构 CI 发布流程,实现 install 脚本双发布
1.2.8(2022/09/18)¶
-
/v1/wirte 接口更新:
- 移除冗余的 /v1/write/xxx API,增加 /v1/write/:category 接口
- 写入数据不再进行行协议解码,但仍然进行 Body 读取,用于签名
-
磁盘缓存:
- 当缓存清理过程中发送中心失败,增加消费暂停策略,直到当前缓存的请求发送成功才清理下一个缓存
- 更新 pbcache proto 文件