레이블이 IDE-Trace Compass인 게시물을 표시합니다. 모든 게시물 표시
레이블이 IDE-Trace Compass인 게시물을 표시합니다. 모든 게시물 표시

7/20/2020

Ecplise 혹은 Trace Compass 의 LTTng 이용

1.  Eclipse or Trace Compass 의 LTTng Debug 방법  

Linux Kernel을 수정하다 보면, Kernel을 Trace 할 필요가 있는데, 이 때 많이 사용되는 Tool이 LTTng 이다. 

이를 Ecplise에 연결하여 사용해보도록 하자. 

1.1 기본 개발 환경설정 변경 

Kernel Config 설정변경
  https://ahyuo79.blogspot.com/2020/04/yocto-profiling-and-tracing.html

LTTng 설치
  https://lttng.org/download/

LTTng 관련문서
  https://lttng.org/docs

1.2  Ecplise or Trace Compass 설정 

Project 창 Trace Project 생성 (File->New->Trace Project)
이부분 Option으로 추후 LTTng의 파일을 Local에 저장되었을 때 분석용이


Window->Show View->Other 선택
LTTng->Control 선택

Tracing 창

1.3 LTTng의 Control 기본분석

Target에 SSH Server 와 LTTng Kernel 지원 및 명령어가 지원이 된다면 아래와 같이 Remote로 Control 가능하다.


LTTng-Control -> New Connection ( Target의 SSH연결)
Sessions-> Creat Session



  1. Provider가 현재 Kernel 밖에 지원이 안됨 
  2. User Space는 미지원 




Provider->Kernel-> 함수 Event 선택
커널 함수 중 sched_switch 선택






1.4  User Space 분석 (Option)

User Mode에서도 동작을 위해 아래와 같이 설정했지만 Provider가 제공하지 않기 때문에 불가능하다.

mySession->Enable Channel  선택 (별도의 Channel 생성 )
Event 모두 선택 (오직 테스트 이며, 이 부분은 미동작)



LTTng의 User Space의 Provider 확장방법
  https://lttng.org/docs/#doc-c-application


1.5  LTTng Control 창 Start

mySession->Start 진행  (lttng start와 동일)



mySession->Stop 진행  (lttng stop와 동일)

Remote에는 Session 의 정보가 저장됨 (lttng-traces->mySession-xxxxxxxx)

2. Ecplise의 LTTng의 분석 

이미 생성된 Session에 정보를 Trace Project로 Remote로 열어 분석가능
혹은
이 정보를 Local로 가져와서 분석도 가능


mySession->import 진행 (Target의 Session 정보 열기)



Project Exploere-> Remote 의 Trace Project 가 자동생성



Provider인 Kernel 클릭 한 후 각각의 보고 싶은 기능들을 클릭 
각각 필요창은 LTTng 창과 Trace 창으로 분석 진행창을 열어도 가능 



각각의 지원되는 기능은 좌측의 Kernel 밑의 기능을 더블클릭하면됨


  https://archive.eclipse.org/tracecompass/doc/stable/org.eclipse.tracecompass.doc.user/LTTng-Tracer-Control.html


10/05/2019

Trace Compass (자료수집 )

1. Trace Compass

Ecplise 기반의 IDE Tool로 LTTng를 이용하여 Linux Kerenl을 Trace가 가능하며, GDB도 같이 사용하여 Application도 Debug도 가능하다고 한다.
더불어 libpcap을 이용하여 Network Trace 기능까지 가지고 있으며, 성능측정에 사용되는 Perf기능까지 가지고 있어 좋다고 하는데,
그 동안 사용할 기회를 여러번 있었는데,사용을 해보지 않았다.
간략하게 관련자료들을 수집을 한다. 

1.1 Trace Compass Download 및 기능소개 

  • Trace Compass Download 및 설치
  https://www.eclipse.org/tracecompass/

  • Trace Compass 기능 및 지원 
    • Common Trace Format 
      • Linux LTTng Kernel Traces
      • Linux LTTng-UST Userspace Traces
      • Bare metal traces
      • LTTng-Analyses
    • GDB Traces
    • Ftrace 
    • 기타 
다양한 기능을 지원을 해주고 있으며, Linux Kernel 부터 Application을 통합적으로 분석가능하다. 
지속적으로 추가되어 확장되어지는 구조로 가는 것으로 보인다. 
  https://projects.eclipse.org/proposals/trace-compass
  https://wiki.eclipse.org/Trace_Compass

Linux 기반에서 Trace Compass 설치준비사항 
  https://elhombrequereventodeinformacion.wordpress.com/2020/02/06/install-lttng-trace-compass-debian-10/

Trace Compass 의 사용법 
  https://rtist.hcldoc.com/help/index.jsp?topic=%2Forg.eclipse.tracecompass.doc.user%2Fdoc%2FTrace-Compass-Main-Features.html

  • NXP사 제공해주는 Trace Compass Manual