Tokio용 비행 기록 장치: dial9 소개
dial9는 Tokio 런타임을 위한 고성능 실행 기록(플라이트 레코더) 도구로, 단순 집계 지표를 넘어 개별 작업의 폴링, 대기, 깨우기 등의 이벤트를 로그 형태로 상세히 기록합니다.
이 도구는 Tokio 런타임 이벤트, 애플리케이션 스팬 및 로그, 그리고 리눅스 커널 이벤트를 통합하여, 애플리케이션과 운영체제 간 상호작용을 시간 순서대로 시각화할 수 있어, 운영 환경에서 발생하는 미묘한 성능 병목 현상과 지연 문제를 정확히 파악할 수 있습니다.
특히, 커널 스케줄링 지연, fd_table 잠금 경합, 그리고 작업이 여러 워커 간에 이동하는 현상 등 기존 메트릭으로는 발견하기 어려운 문제를 진단하는 데 유용하며, 프로덕션 환경에서도 5% 미만의 오버헤드로 안전하게 사용할 수 있습니다.
사용법은 간단히 런타임을 TracedRuntime으로 감싸고 로그를 저장하면 되며, 기록된 트레이스는 웹 기반 뷰어에서 분석할 수 있습니다.
현재 GitHub와 crates.io에서 제공되며, TokioConf 2026에서 관련 발표와 데모가 예정되어 있습니다.