1.2 bootchart2

bootgraph가 Kernel 시작 부터 Init까지의 부팅과정을 분석한다면, bootchart2는 init 이후의 부팅 과정 및 CPU 사용률 및 디스크 사용률까지 분석 해준다. bootchart2를 사용하기 위해서는 다음과 같은 작업을 해야 한다.


1) 부팅 과정의 로그를 저장하는 데몬인 bootchartd를 busybox 컴파일 시 포함 시켜줘야 한다.

busybox # make menuconfig


 Init Utilities ---> [*] bootchartd

                      [*]   Compatible, bloated header

                      [*]   Support bootchartd.conf


2) u-boot의 boot parameter인 init=/sbin/init을 init=/sbin/bootchartd로 변경하고 printk.time=1 initcall_debug=1 를 추가 한다.

  ex> bootargs=noinitrd rootfstype=ubifs ubi.mtd=4 xxxxxxxxxxxxxxxxxx init=/sbin/bootchartd printk.time=1 initcall_debug=1


3) 부팅 후 /var/log 에 부팅 로그 파일인 bootlog.tgz 를 서버로 복사한다.


4) 개발 서버에서 bootchart2 소스코드를 다운로드 하여 컴파일 한다. ( https://github.com/mmeeks/bootchart/releases )

/usr/local/bootchart2/bootchart-0.14.7$ make



5) bootchart2 스크립트인 pybootchartgui.py 를 이용하여 부트 로그 파일인 bootlog.tgz 를 그래프화 한다.

  $ /usr/local/bootchart2/bootchart-0.14.7/pybootchartgui.py bootlog.tgz


6) 결과

부팅 로그가 분석된 bootchart.png 파일이 생성 되고 이를 확인할 수 있다.





 


Posted by 다크쌍피