검색

29장. perf를 중지하거나 다시 시작하지 않고 실행 중인 perf 수집기에서 추적 지점 추가 및 제거

download PDF

제어 파이프 인터페이스를 사용하여 실행 중인 perf 수집기에서 다양한 추적 포인트를 활성화하고 비활성화하면 perf 를 중지하거나 다시 시작하지 않고도 수집할 데이터를 동적으로 조정할 수 있습니다 . 이렇게 하면 프로세스를 중지하거나 다시 시작하는 동안 기록된 성능 데이터가 손실되지 않습니다.

29.1. perf를 중지하거나 다시 시작하지 않고 실행 중인 perf 수집기에 추적 지점 추가

제어 파이프 인터페이스를 사용하여 실행 중인 perf 수집기에 추적 포인트를 추가하여 perf 를 중지하고 성능 데이터 손실 없이 기록하는 데이터를 조정합니다.

사전 요구 사항

  • perf 설치에 설명된 대로 perf 사용자 공간 도구가 설치되어 있습니다.

절차

  1. 제어 파이프 인터페이스를 구성합니다.

    # mkfifo control ack perf.pipe
  2. 활성화하려는 제어 파일 설정 및 이벤트를 사용하여 perf 레코드 를 실행합니다.

    # perf record --control=fifo:control,ack -D -1 --no-buffering -e 'sched:*' -o - > perf.pipe

    이 예에서 -e 옵션 다음에 'ched:*' 선언은 스케줄러 이벤트와 함께 perf 레코드 를 시작합니다.

  3. 두 번째 터미널에서 제어 파이프의 읽기 측면을 시작합니다.

    # cat perf.pipe | perf --no-pager script -i -

    제어 파이프의 읽기 측면을 시작하면 첫 번째 터미널에서 다음 메시지가 트리거됩니다.

    Events disabled
  4. 세 번째 터미널에서 제어 파일을 사용하여 추적 지점을 활성화합니다.

    # echo 'enable sched:sched_process_fork' > control

    이 명령은 perf 를 트리거하여 선언된 이벤트에 대해 제어 파일의 현재 이벤트 목록을 스캔합니다. 이벤트가 있는 경우 추적 지점이 활성화되고 첫 번째 터미널에 다음 메시지가 표시됩니다.

    event sched:sched_process_fork enabled

    추적 지점이 활성화되면 두 번째 터미널은 추적 지점을 감지하는 perf 의 출력을 표시합니다.

    bash 33349 [034] 149587.674295: sched:sched_process_fork: comm=bash pid=33349 child_comm=bash child_pid=34056
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.