# Xcapture-BPF – Linux를 위한 Xray 도구

> Clean Markdown view of GeekNews topic #15682. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=15682](https://news.hada.io/topic?id=15682)
- GeekNews Markdown: [https://news.hada.io/topic/15682.md](https://news.hada.io/topic/15682.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-07-04T20:34:03+09:00
- Updated: 2024-07-04T20:34:03+09:00
- Original source: [0x.tools](https://0x.tools/)
- Points: 6
- Comments: 0

## Summary

xcapture-bpf는 리눅스 시스템 성능 분석을 위한 강력한 도구로, eBPF를 사용하여 성능 데이터를 다양한 각도에서 분석할 수 있습니다. 낮은 오버헤드와 간편한 설치를 제공하며, 프로덕션 환경에서도 안전하게 사용할 수 있도록 설계되었습니다. 배포의 간편성과 최소한의 종속성을 목표로 하여 시스템 문제 해결의 마찰을 줄였으며, OS 업그레이드, 커널 모듈 설치, 무거운 모니터링 프레임워크, Java 에이전트 또는 데이터베이스 설치가 필요 없습니다. 개별 스레드 수준의 활동을 측정할 수 있으며, 코드 실행, 슬립 상태, 시스템 호출 및 커널 대기 위치 등을 추적하고 샘플링합니다.

## Topic Body

- 0x.tools는 리눅스에서 애플리케이션 성능을 분석하기 위한 오픈 소스 유틸리티 모음  
- 배포의 간편성과 최소한의 종속성을 목표로 하여 시스템 문제 해결의 마찰을 줄임  
- OS 업그레이드, 커널 모듈 설치, 무거운 모니터링 프레임워크, Java 에이전트 또는 데이터베이스 설치가 필요 없음  
- 개별 스레드 수준의 활동을 측정할 수 있으며, 코드 실행, 슬립 상태, 시스템 호출 및 커널 대기 위치 등을 추적하고 샘플링함  
  
#### xcapture-bpf & xtop 2.0.2 베타 공개   
- xcapture-bpf와 xtop은 리눅스의 top 도구와 유사하지만, eBPF를 사용하여 성능 데이터를 다양한 각도에서 볼 수 있음  
- 시스템 수준 개요와 개별 스레드 활동, 커널 이벤트까지 드릴다운 가능  
- eBPF는 완전히 프로그래밍 가능하며, 이를 최대한 활용할 계획임  
  
#### xcapture-bpf 터미널 하이라이팅 및 스택타일  
- 터미널 텍스트 검색/하이라이팅 및 스크롤 기능이 새로운 스택타일 형식과 잘 작동함  
- 스택타일은 함수 이름뿐만 아니라 파일 이름이나 메모리 할당 이유 등 다양한 정보를 포함할 수 있음  
  
#### xcapture-bpf 설치  
- xcapture-bpf는 아직 베타 버전이므로 프로덕션 시스템에서는 실행하지 말 것  
- eBPF를 사용하며, 현재 BCC와 python3를 보고 프론트엔드로 사용함  
- RHEL 8.1 또는 Ubuntu 24.04 이상에서 테스트됨  
  
#### 포함된 도구  
- 실시간 인터랙티브 도구와 저주파 프로파일링 도구 제공  
- 주요 도구 설명:  
  - `psn`: 현재 상위 스레드 활동 샘플링  
  - `xcapture`: 저오버헤드 스레드 상태 샘플러  
  - `xcapture-bpf`: eBPF를 사용한 저오버헤드 프로그래머블 스레드 상태 샘플러  
  - `syscallargs`: 시스템 호출 및 인수 목록  
  - `schedlat`: 단일 프로세스의 CPU 스케줄링 지연 시간 표시  
  - `run_xcapture.sh`: xcapture를 계속 실행하는 간단한 데몬 스크립트  
  - `run_xcpu.sh`: CPU에서 스레드의 저주파 연속 스택 샘플링  
  
#### 사용법 및 예제 출력  
- `xcapture`를 사용하여 리눅스 스레드 활동 샘플링 및 고정 폭 출력 표시  
- CSV 파일로 출력하여 명령줄에서 성능 분석 가능  
  
#### 설치 및 사용법  
- `xcapture`, `schedlat`, `psn`은 표준 리눅스 도구처럼 /proc 파일 시스템을 샘플링함  
- 추가 구성 없이 리눅스 커널 버전 2.6 이상에서 작동  
  
#### FAQ  
- 0x.tools는 GPL v3 라이선스의 오픈 소스 제품임  
- 측정 오버헤드는 서버 CPU 용량의 1% 미만  
- 프로덕션 환경에서 안전하게 사용 가능  
- Perf와 eBPF 대신 /proc 샘플링을 사용하는 이유: 기존 기업에서 대규모 프로덕션용으로 eBPF를 사용할 수 없기 때문   
  
#### GN⁺의 의견  
- 0x.tools는 리눅스 시스템 성능 분석을 위한 강력한 도구 모음임  
- eBPF를 사용하여 성능 데이터를 다양한 각도에서 볼 수 있어 유용함  
- 프로덕션 환경에서 안전하게 사용할 수 있도록 설계됨  
- 다른 성능 분석 도구와 비교하여 낮은 오버헤드와 간편한 설치가 장점임  
- eBPF와 같은 최신 기술을 활용하여 성능 분석의 정확성과 유연성을 높임

## Comments



_No public comments on this page._
