5.쉘 스크립트 및 기타도구

Edit

5.1sh.ddd

5.1.1역할

실행 중인 프로세스 중 nx로 시작하는 프로세스와 faultcheck의 실행여부를 알 수 있도록 보여줍니다.
(ps -ef 활용한 shell입니다)

5.1.2사용방법

[cube@kmt-vm42 bin]$ ./sh.ddd

5.1.3실행화면

5.2sh.nxdaily

5.2.1역할

$NEXUS_HOME/log/temp 의 내용을 압축하여 /tmp 로 옮긴 후 기존 내용을 삭제합니다. 
로그 파일 백업 시에 사용합니다.

5.2.2사용방법

1. master폴더의 백업기능 설명 
nxAdaptor_ST -DAY 프로세스에서 운영되는 로직입니다.
2. 설정사항
global.conf의 해당 설정값은 반드시 disk 섹션안에 설정되어야 됩니다.
예제
[disk]
keep-master = 10 (필수 사항)
keep-master.move = /home/cube/nexus/products/cube/log/temp (반드시 해당 서버의 Full Path기입 : 옵션사항)
keep-done = sh.nxdaily ( 옵션사항)

3. master 파일 백업&삭제 Flow

3.1. 서버마감 시간 설정값이 경과했을때 
Adaptor.conf에서 Statistics 세션의 CLOSING_TIME 값 (해당사이트의 일일 마감 시간)
[Statistics]
..........
CLOSING_TIME = 2 #hour

3.2. nxdaily 프로세스 실행
3.2.1 global.conf에 설정된 keep-master 값을 읽어온다. (보관일수)
3.2.2 global.conf에 설정된 keep-master.move 값을 읽어온다(백업받을 폴더의 절대경로)
3.2.3 파일의 최종 작성일자(상태변경일자)가 설정된 보관일수를 지났는지 조사함. (초단위로 계산됨))
3.2.3 상기 2.2항목이 설정되어 있다면 해당 폴더에 백업(선택사항)
3.2.4 해당 파일은 삭제한다.
3.2.5 global.conf에 keep-done이 설정되 있다면 sh.nxdaily스크립트 실행
3.2.5.1 sh.nxdaily 기능 
현재 서버가 Active이면 상기 keep-master.move 에 설정된 폴더의 파일들은 실행된 일자로 
/tmp폴더로 옮기는 기능 수행
4. 참고사항

하기와 같이 log, syslog,master파일을 백업 할 폴더는 반드시 $NEXUS_HOME/log/temp로 설정해야 됨
sh.nxdaily실행 시 log, syslog,master파일들을 일괄적으로 압축하기 위해서.
keep-log.move = /home/cube/nexus/products/cube/log/temp #specify full path 
keep-syslog.move = /home/cube/nexus/products/cube/log/temp #specify full path 
keep-master.move = /home/cube/nexus/products/cube/log/temp #specify full path

5.2.3실행화면

[cube@kmt-linux1 bin]$ ./sh.nxdaily 
tar: Removing leading `../' from member names
../log/temp/
../log/temp/2015041905.nxlistener-1202-10.10.40.12-0
../log/temp/2015041812.nxlistener-1202-10.10.40.12-0
../log/temp/2015041910.nxAdaptor-ST-DAY-app-10.10.40.12-0
../log/temp/2015041823.nxmedia_csta2-1-10.10.40.12-0
../log/temp/2015041917.nxlistener-1212-10.10.40.12-0
../log/temp/2015041920.nxmedia_csta2-1-10.10.40.12-0
../log/temp/2015041920.nxlistener-1200-10.10.40.12-0
../log/temp/2015041813.nxlistener-1200-10.10.40.12-0
../log/temp/2015041805.nxAdaptor-I-app-10.10.40.12-0

...
[cube@kmt-linux1 tmp]$ pwd
/tmp
[cube@kmt-linux1 tmp]$ ls
20150420.tar.gz  orbit-gdm  pulse-38uA2iTdEYHJ

5.3sh.ps

5.3.1역할

매 초마다 date 명령어와 netstat을 이용하여 5678 port (asai) 정보를 출력합니다.

5.3.2사용방법

엔진 가동 중일 때 사용합니다.

[cube@kmt-vm42 bin]$ ./sh.ps

5.3.3실행화면

[cube@kmt-vm42 bin]$ ./sh.ps
2015. 04. 20. (월) 13:53:21 KST
tcp 0 0 192.168.35.31:5678 192.168.35.30:5678 ESTABLISHED
2015. 04. 20. (월) 13:53:22 KST
tcp 0 0 192.168.35.31:5678 192.168.35.30:5678 ESTABLISHED
2015. 04. 20. (월) 13:53:23 KST
tcp 0 0 192.168.35.31:5678 192.168.35.30:5678 ESTABLISHED
2015. 04. 20. (월) 13:53:24 KST
tcp 0 0 192.168.35.31:5678 192.168.35.30:5678 ESTABLISHED

5.4sh.qview

5.4.1역할

NEXUSCUBE 엔진에서 사용하는 message queue의 정보를 표시합니다.

5.4.2사용방법

엔진 가동 중일 때 사용합니다.

[cube@kmt-vm42 bin]$ ./sh.qview

5.4.3실행화면

[cube@kmt-vm42 bin]$ ./sh.qview

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages
0x00015c78 0          cube       666        0            0
0x00015c79 32769      cube       666        0            0
0x000182bb 655362     cube       666        0            0
0x000182eb 688131     cube       666        0            0
0x000182ec 720900     cube       666        0            0
0x000182b9 753669     cube       666        0            0
0x000182ba 786438     cube       666        340          3
0x000182bc 819207     cube       666        0            0

5.5recovery

5.5.1역할

통계 데이터가 데이터베이스에 마감되지 않았거나 다른 값으로 마감된 경우, 기존 데이터베이스 데이터를 삭제하고 새 데이터를 생성합니다.

5.5.2사용방법

자세한 사용 방법은 Recovery 매뉴얼을 참고합니다.