달력

122024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

losf + truss(tusc, strace)

Tmax 2009. 10. 28. 16:33

 ibank_r 서버 프로세스가 CPU100% 사용하여 원인을 분석 하고자 함.

1.우선 CPU 를 많이 사용하는 원인을 찾기 위해 trusssystem call pattern을 분석함

[tmax@devap]/tmax/tmax>truss -p 23220

recv(5, "\17\'\0\0\1\0\0\0\4\0\0\0\0\0\1\0\3\0\0\0\300\250 \2\6"..., 96, 0) = 96

recv(5, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa\0", 30, 0) = 30

....

send(5, "\17\'\0\0\3\0\0\0\4\0\0\0\0\0\1\0\353\3\0\0\0\0\0\0\6\0"..., 126, 0) = 126

è Patten 분석 결과 fd 5번에 대하여 계속적인 send system call이 발생하는 것을 확인

2. ibank_r 프로세스의 fd 5번이 어떤 process와 연결된 fd인지 확인 하기 위해 lsof 를 통해 확인

[tmax@devap]/tmax/tmax>/usr/local/bin/lsof -p 23220

COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF   NODE NAME

ibank_r 23220 tmax    0u   STR             62,0xf  0t31195  26283 ldterm->ptem->tels

ibank_r 23220 tmax    1u   REG         64,0x10006        0   2072 /nbslog (/dev/devapvg01/lvol6)

ibank_r 23220 tmax    2u   REG         64,0x10006        0   2072 /nbslog (/dev/devapvg01/lvol6)

ibank_r 23220 tmax    3u   REG         64,0x10003    17408   6178 /sw/oracle/ora10g/rdbms/mesg/ocius.msb

ibank_r 23220 tmax    4u  unix          0x2862e40      0t0        ->0x2f1a200

ibank_r 23220 tmax    5u  unix         0xc99e5200      0t0     ->0xbc51a040

ibank_r 23220 tmax    6u  unix             64,0x3      0t0 106307 /var/spool/sockets/pwgr/client23220 (0xf842d3c0)

ibank_r 23220 tmax    7u  IPv4 0xe0000001c67aa740   0t3189    TCP devap:57897->devap:1521 (ESTABLISHED)

 è fd 5번의 device ( 0xc99e5200) 을 통해서 해당 device를 바라 보고 있는 process를 찾기 위해

     losf 를 다시 확인

[tmax@devap]/tmax/tmax>/usr/local/bin/lsof | grep 0xc99e5200

clh       23175 tmax      29u  unix         0xbc51a040      0t288         /tmax/tmax/path/clhd000 (->0xc99e5200)

ibank_r   23220 tmax    5u  unix         0xc99e5200        0t0         ->0xbc51a040

  => 결과를 통해서 ibank_r fd list 에서 fd 5clh process와 통신하는 fd 임을 확인


'Tmax' 카테고리의 다른 글

Broken Pipe  (0) 2009.03.10
racd(Remote Access Control Daemon) 옵션  (0) 2009.02.26
Tmax 기초  (0) 2009.02.26
tmadmin() API 사용 예제  (0) 2009.02.19
tmadmin 주요기능  (0) 2009.02.19
Posted by marryjane
|