Skip to content

Changelog

1.17.0(2026/07/14)

New Features

  • Added OTLP HTTP/protobuf interfaces: /otel/v1/traces, /otel/v1/metrics and /otel/v1/logs (#81)
  • OTLP requests support query token, X-Token and Bearer token, and are integrated with the Kodo queue and disk cache (#81)
  • OTLP requests support transparent transmission of Kodo status codes, body and necessary headers (#81)

Optimizations

  • Optimized Sinker diversion for aggregation and tail sampling, failures in a single group no longer affect other groups (#71)
  • Invalid token negative cache only applies to eligible write requests (#77)
  • Optimized memory usage and concurrency stability for aggregation
  • Optimized tail sampling backlog handling, allowing temporary storage to disk when the memory queue is full
  • Improved stability in disk cache exception scenarios

Bug Fixes

  • Fixed race condition and capacity issues in the Sinker rule cache (#93)

Observability

  • Added file descriptor metric dataway_open_files_by_type and TCP metric dataway_tcp_connections
  • Added metrics for tail sampling, send queue, workers and disk temporary storage

1.16.1(2026/07/09)

Bug Fixes

  • /v1/write/rum rejects empty body and returns 400 with dataway.emptyBody; non-empty body is still forwarded as-is (#82)
  • When the Kodo queue is full, cacheable requests are written to disk; return 503 when cache is unavailable (#83)
  • "Cached" is returned only after a successful write, and the reason for cache failure is better recorded (#83)

1.16.0(2026/07/02)

New Features

  • Added IPv6 and dual-stack deployment support; IP whitelist supports IPv4, IPv6 and CIDR (#79)
  • Added bind_ipv6/DW_BIND_IPV6 and trusted_proxies/DW_TRUSTED_PROXIES configurations (#78, #79)

Optimizations

  • When the Kodo success response is empty, no empty body and Content-Type are returned (#78)
  • CORS headers are returned only for requests with an Origin header, and X-Content-Type-Options: nosniff is added to forwarded responses (#78)

1.15.0(2026/05/27)

New Features

  • Added a bounded Kodo queue covering write, upload and Firehose requests
  • The queue is enabled by default and supports DW_KODO_QUEUE_* environment variables
  • Cacheable requests are cached when the queue is full. Return 503 when cache is unavailable
  • Added invalid token negative cache supporting DW_TOKEN_NEGATIVE_CACHE_* environment variables
  • Default TTL for negative cache is 5m, with a maximum of 1000 tokens

Optimizations

  • Added token and payload validation for aggregation API
  • Aggregation sending uses a background queue with 3 retries and adds Content-MD5
  • Aggregation proxy reuses the reverse proxy and validates related configurations
  • Cache replay uses the current remote_host, default cleanup interval changed to 1s
  • Updated Sinker documentation. From DataKit 2.0.0 onwards, non-point write APIs usually do not require __dataway_api rules

Observability

  • Added Kodo queue related metrics: 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
  • Added invalid token negative cache metrics: dataway_token_negative_cache_added_total, dataway_token_negative_cache_blocked_total
  • Added aggregation/tail sampling related metrics: 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
  • Added disk cache lock contention metrics: diskcache_lock_wait_seconds, diskcache_lock_contention_total
  • Fixed the sinked label in latency metrics under Sinker scenarios

1.14.0(2026/04/17)

  • Added session replay image processing interface

1.13.0(2026/04/10)

  • Added DataWay bypass aggregation and sampling support (#67)

1.12.3(2026/03/26)

  • Added v2 Sinker header format to resolve issues where abnormal values in diversion headers violate HTTP standards (#68)

1.12.2(2026/03/17)

  • Updated DataWay image SSL certificates to avoid inability to recognize Openaway SSL certificates in cascading scenarios (#69)

1.12.1(2025/12/25)

  • Fixed the issue in version 1.12.0 where Sinker diversion could not copy requests (#66)

1.12.0(2025/12/19)

New Features

  • Optimized Sinker cache mechanism (#34)

    • The new Sinker cache mechanism caches based on the hash characteristic (16 bytes) of the request, rather than caching the entire request characteristic. Two-way hashing is used to minimize hash collisions. The theoretical collision probability is n/2^128, where n is the number of cached keys.
    • Added TTL and capacity mechanisms to the Sinker cache to further limit memory usage: the TTL mechanism cleans up inactive caches, and the capacity mechanism ensures the number of cached keys does not exceed the specified limit. TTL and capacity limits further reduce the hash collision probability mentioned above.
  • Added configuration to optimize DataWay HTTP header return, reducing DataWay public network traffic (#65)


1.11.2(2025/11/25)

  • Optimized DataWay HTTP requests forwarded to Kodo (#64)

1.11.1(2025/11/15)

  • Fixed the issue with invalid __internal__ token (#63)

1.11.0(2025/11/12)

New Features

  • Upgraded DataWay base image to Ubuntu 22.04 (#62)
  • DataWay supports blocking invalid traffic (#61)

Bug Fixes

  • Fixed the issue where session replay and profile diversion could not copy data to different workspaces (#59)

1.10.0(2025/09/03)

New Features

  • Added Langfuse data ingestion support (#57)

1.9.0(2025/04/25)

New Features

  • DataWay adds X-Pkg-Id in data upload requests for data tracing (#53)
  • Improved program logs, more error codes returned by Kodo will be transparently passed to DataKit (#52)
  • Added API to support pulling environment variables (#55)
  • Updated disk cache code to locate the invalid argument error that occurs in some cases (#56)

1.8.0(2025/02/19)

New Features

  • When DataWay Sinker mode is enabled, it supports simultaneously processing data upload requests sent by clients (e.g., DataKit/Function) (#50)

1.7.0(2024/12/18)

New Features

  • Added AWS Firehose ingestion entry (#47)
  • Support passing token via X-Token (#43)

Optimizations

  • Adjusted default parameters for internal garbage collection to optimize memory usage (#49)
  • Optimized default yaml in Kubernetes deployments, adjusted cache disk mount configuration (#48)
  • Adjusted and added some internal metrics, updated DataWay default view

1.6.2(2024/12/03)

Optimizations

  • Added HTTP connection configuration entry point (#46)

1.6.1(2024/11/19)

Optimizations

  • Added option to disable 404 page (#44)

1.6.0(2024/09/19)

Optimizations

  • Optimized environment variable configuration related to disk cache
  • Exposed more internal metrics, while optimizing memory usage in some HTTP forwarding aspects (#39)
  • DataWay supports configuring its own SNI (#42)
  • Added a time synchronization endpoint for DataKit to obtain more accurate Unix timestamps (#40)
  • Sinker:
    • Filter conditions support nil judgment, i.e., determining whether a specific field exists (#41)
    • Added default rule settings, where requests that do not match existing diversion rules are all routed to the workspace corresponding to the default rule (#30)

1.5.0(2024/07/05)

Optimizations

  • Optimized installation script (#33)

Breaking Changes

  • Removed the ability to directly support Sinker configuration in host installation mode. This feature will be supported in a new way in the future.

1.4.1(2024/06/19)

  • Fixed the missing DW_ENABLE_TLS issue in Kubernetes installation mode
  • Changed the build image address

1.4.0(2024/05/15)

  • Added DataKit metering interface (#29)
  • Fixed the issue where cache might lose data (#31)
  • Support directly configuring HTTP TLS certificates on the DataWay side (#32)
  • Exposed more metrics

1.3.9(2024/03/28)

  • When Sink discards a request, added HTTP 406 Not Acceptable error response for easier troubleshooting (#82)

1.3.8(2024/01/24)

  • Exposed more metrics
  • Significantly improved Sinker rule matching performance (#26)

1.3.7(2023/12/14)

  • Exposed more metrics
  • Optimized disk cache cleanup strategy, following the principle of consumption as soon as possible:
    • Avoid data being actively discarded due to storage exceeding limits
    • Send cached data as early as possible
  • Added observability related to oversized request discarding (metrics/logs)
  • Adjusted DataWay POD yaml, improved its metrics and log collection

1.3.6(2023/10/24)


1.3.5(2023/09/13)


1.3.4(2023/09/01)

  • Upgraded Golang to 1.9
  • Fixed the issue of no data for inner token
  • Adjusted the following configurations in default config:
    • Increased default API rate limit to 100K
    • Increased default maximum body to 64MB
    • Added HTTP timeout setting (DataWay to center), default 30s
    • Added configuration to ignore TLS 509 errors

1.3.3(2023/09/01)

  • Fixed curl issue in image packaging

1.3.2(2023/08/30)

  • Added curl command in the image for viewing its own metrics

1.3.1(2023/08/28)

  • Added URL Sinker functionality

1.3.0(2023/08/24)

  • Refactored the entire DataWay implementation, added Sinker functionality

1.2.12(2023/08/28)

  • Refactored CI release process, implemented dual release of install script

1.2.8(2022/09/18)

  • /v1/write interface update:

    • Removed redundant /v1/write/xxx API, added /v1/write/:category interface
    • Write data no longer decodes the line protocol, but still reads the body for signing
  • Disk cache:

    • When the cache cleanup process fails to send to the center, added a consumption pause strategy to clean the next cache only after the current cached request is sent successfully
    • Updated pbcache proto file

Feedback

Is this page helpful? ×