unix면 어케 하겠는데 윈도우 서버라서 batch파일 돌려야되잔아
batch script는 하나도 몰라서 일단
PID 조회 하는 방법
C:>tasklist | findstr java
java.exe 6104 0 153,724 K
java.exe 5596 0 254,384 K
java.exe 5620 0 236,744 K
java.exe 5568 0 306,988 K
java.exe 5556 0 253,144 K
java.exe 5600 0 236,540 K
java.exe 5572 0 252,296 K
java.exe 5576 0 256,148 K
java.exe 5684 0 236,768 K
java.exe 5720 0 253,508 K
java.exe 5736 0 251,056 K
java.exe 5764 0 236,720 K
java.exe 5660 0 238,000 K
java.exe 5804 0 282,956 K
java.exe 5848 0 252,244 K
java.exe 5852 0 314,412 K
java.exe 6168 0 359,652 K
java.exe 6504 0 314,200 K
java.exe 6688 0 239,400 K
java.exe 6796 0 252,548 K
java.exe 6812 0 237,692 K
java.exe 6836 0 238,268 K
java.exe 6932 0 237,068 K
java.exe 6944 0 256,728 K
java.exe 6988 0 277,596 K
java.exe 6992 0 290,220 K
java.exe 7052 0 353,380 K
java.exe 7132 0 276,508 K
java.exe 7140 0 277,760 K
java.exe 7216 0 291,428 K
java.exe 7992 0 274,764 K
java.exe 13224 0 79,764 K
java.exe 12572 0 104,364 K
java.exe 5052 0 601,196 K
java.exe 676 0 510,976 K
java.exe 12548 0 473,708 K
java.exe 13920 0 477,960 K
perm size 조회하는 방법이고 P가 perm %값임
jstat -gcutil [PID]
C:>jstat -gcutil 7992
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 0.00 11.74 2.74 51.03 16403 183.179 60016 23397.445 23580.624
unix 였으면 아래 스크립트 만들어서 FAIL 값이 0이 아니면 모니터링 되게 만들고 싶은데
batch도 이런게 가능한지 궁금하고 이게 불가능하면 파워쉘을 깔아야되나?
진짜 IT 하나도 모르고 구글링으로만 일해서 감이 안잡힘
#!/bin/csh -f
set LINE = `tasklist | grep java|wc -l`
set N = 1
set FAIL = 0
while($N < $LINE)
set PID = `tasklist | grep java|awk '{if (NR >= '"{N}"' && NR <= '"{N}"')print $2}'`
set perm = `jstat -gcutil $PID`
@ N++
if($perm > 80) then
@ FAIL ++
else
endif
end
UnixUtils라고윈도에서컴파일해놓은거있어그안에쉘이랑웬만한건다들었음