A.3. Systemtap Flight Recorder를 사용하여 Constant Basis에서 추적 데이터 캡처
qemu-kvm 패키지에 제공된 systemtap initscript를 사용하여 항상 QEMU 추적 데이터를 캡처할 수 있습니다. 이 패키지는 SystemTap의 초보 레코더 모드를 사용하여 실행 중인 모든 게스트 가상 머신을 추적하고 호스트의 고정 크기 버퍼에 결과를 저장합니다. 이전 추적 항목은 버퍼가 채워지면 새 항목으로 덮어씁니다.
절차 A.1. systemtap 구성 및 실행
패키지를 설치합니다.
다음 명령을 실행하여 systemtap-initscript 패키지를 설치합니다.yum install systemtap-initscript
# yum install systemtap-initscript
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 구성 파일 복사
다음 명령을 실행하여 systemtap 스크립트 및 구성 파일을 systemtap 디렉터리에 복사합니다.cp /usr/share/qemu-kvm/systemtap/script.d/qemu_kvm.stp /etc/systemtap/script.d/ cp /usr/share/qemu-kvm/systemtap/conf.d/qemu_kvm.conf /etc/systemtap/conf.d/
# cp /usr/share/qemu-kvm/systemtap/script.d/qemu_kvm.stp /etc/systemtap/script.d/ # cp /usr/share/qemu-kvm/systemtap/conf.d/qemu_kvm.conf /etc/systemtap/conf.d/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 활성화할 추적 이벤트 세트는 qemu_kvm.stp에 제공됩니다. 이 SystemTap 스크립트는/usr/share/systemtap/tapset/qemu-kvm-simpletrace.stp
에 제공된 추적 이벤트를 추가 또는 제거하도록 사용자 지정할 수 있습니다.qemu_kvm.conf
에서 flight recorder 버퍼 크기 및 메모리에 추적 저장 여부를 제어하도록 qemu_kvm.conf를 만들 수 있습니다.서비스 시작
다음 명령을 실행하여 systemtap 서비스를 시작합니다.systemctl start systemtap qemu_kvm
# systemctl start systemtap qemu_kvm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 부팅 시 systemtap을 사용하도록 설정
다음 명령을 실행하여 부팅 시 systemtap 서비스가 실행되도록 활성화합니다.systemctl enable systemtap qemu_kvm
# systemctl enable systemtap qemu_kvm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 서비스가 실행 중인지 확인
다음 명령을 실행하여 서비스가 작동하는지 확인합니다.systemctl status systemtap qemu_kvm
# systemctl status systemtap qemu_kvm qemu_kvm is running...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
절차 A.2. 추적 버퍼 검사
추적 버퍼 덤프 파일 생성
trace.log라는 추적 버퍼 덤프 파일을 생성하고 다음 명령을 실행하여 tmp 디렉터리에 배치합니다.staprun -A qemu_kvm >/tmp/trace.log
# staprun -A qemu_kvm >/tmp/trace.log
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일 이름과 위치를 다른 이름으로 변경할 수 있습니다.서비스 시작
이전 단계에서 서비스를 중지하면 다음 명령을 실행하여 서비스를 다시 시작합니다.systemctl start systemtap qemu_kvm
# systemctl start systemtap qemu_kvm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 추적 내용을 읽을 수 있는 형식으로 변환
추적 파일 내용을 보다 읽기 쉬운 형식으로 변환하려면 다음 명령을 입력합니다./usr/share/qemu-kvm/simpletrace.py --no-header /usr/share/qemu-kvm/trace-events /tmp/trace.log
# /usr/share/qemu-kvm/simpletrace.py --no-header /usr/share/qemu-kvm/trace-events /tmp/trace.log
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
참고
다음 노트 및 제한 사항에 유의하십시오.
- systemtap 서비스는 기본적으로 비활성화되어 있습니다.
- 이 서비스를 활성화하면 작은 성능 저하가 있지만 총 사용 가능한 이벤트에 따라 달라집니다.
/usr/share/doc/qemu-kvm-*/README.systemtap
에 README 파일이 있습니다.