변경 이력¶
1.19.0(2026/08/27)¶
신규 기능¶
/v2/tail_samplingzstd 전송 인터페이스 추가, Datakit 2.10이/v1/tail_sampling으로 전송하는 압축 협상 헤더가 없는 zstd 패킷과 호환 (#110)- 테일 샘플링을 위해 예약된 데이터에 제한된 배치 전송 및 실패 재시도 추가, 메모리 오버플로 디스크 덤프를 비동기 처리로 변경, 재시작 복구 및 종료 정리 메커니즘 개선 (#110)
기능 최적화¶
- 테일 샘플링이 압축 해제 후
trace_id를 추출하고 조건자를 다시 계산하며, 다운스트림으로 배치 전송 시 gzip 압축을 사용하여 요청 횟수와 전송 오버헤드 감소 (#110) - 테일 샘플링 큐의 제출 결과, 대기 시간, 디스크 깊이 및 배치 처리 상태 등 실행 지표 기록 범위 개선 (#110)
보안 및 관측 가능성¶
- 메트릭의 token 레이블을
redacted로 고정, 원본 token 조각을 더 이상 유지하지 않아 자격 증명 유출 및 높은 카디널리티 시계열 방지 (#90) - 집계, 테일 샘플링 및 다중 백엔드 전달 오류를 마스킹하여 백엔드 URL, 응답 내용 또는 인증 정보 노출 방지 (#90)
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 서버의 요청 헤더 타임아웃, Gin mode, IP 블랙리스트 설정 예시 및 API wrapper 오류 처리 수정 (#104)
보안 및 관측 가능성¶
- CI에서 사용하는 Go 및 golangci-lint 다운로드 패키지 고정, 아키텍처별 SHA-256 검증, 원격 설치 스크립트 직접 실행 경로 제거 (#101)
- DataWay 기본 대시보드 업데이트, 큐, 테일 샘플링, 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 및 필요한 헤더를 투과적으로 전달 (#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 헤더 반환, 전달 응답에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부터 non-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)¶
- 세션 리플레이 이미지 처리 인터페이스 추가
1.13.0(2026/04/10)¶
- DataWay 우회 집계 및 샘플링 지원 추가 (#67)
1.12.3(2026/03/26)¶
- v2 Sinker 헤더 형식 추가, 분산 헤더의 비정상적인 값으로 인한 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바이트)을 기반으로 캐시하며, 전체 요청 특성을 캐시하지 않음. 이중 해시를 사용하여 해시 충돌을 최대한 방지하며, 이론적으로 해시 충돌 확률은 n/2^128 (n은 캐시된 키의 개수)
- Sinker 캐시에 TTL 메커니즘 및 용량 메커니즘 추가, 메모리 사용량을 더욱 제한: TTL 메커니즘은 비활성 캐시를 정리하고, 용량 메커니즘은 캐시의 키 개수가 지정된 제한을 초과하지 않도록 보장. TTL과 용량 제한으로 인해 위의 해시 충돌 확률이 더욱 낮아짐
-
DataWay HTTP 헤더 반환 최적화 설정 추가, 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)
문제 수정¶
- 세션 리플레이 및 프로파일 분산이 데이터를 다른 워크스페이스에 복사하지 못하는 문제 수정 (#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 최적화, 캐시 디스크 마운트 구성 조정 (#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)
- 캐시 데이터 손실 가능성 문제 수정 (#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/write 인터페이스 업데이트:
- 중복된 /v1/write/xxx API 제거, /v1/write/:category 인터페이스 추가
- 쓰기 데이터는 더 이상 라인 프로토콜 디코딩을 수행하지 않지만, 서명을 위해 Body 읽기는 계속 수행
-
디스크 캐시:
- 캐시 정리 중 센터 전송 실패 시 소비 일시 중지 전략 추가, 현재 캐시된 요청이 성공적으로 전송될 때까지 다음 캐시 정리 지연
- pbcache proto 파일 업데이트