Log In
|
Sign Up
Search
k-connector 예외 처리 샘플 스크립트
Writer
오창민
Description
v4.10 r36054 기준으로 작성함. - *dummy.java*: (k-connector 대용)테스트 스크립트 ``` import java.io.*; import java.lang.*; class dummy { public static void main(String args[]) throws Exception { System.out.println("starting db connection..."); System.err.println("error: connection lost"); System.out.println("ending db connection..."); throw new Exception("java exception: connection lost"); } }; ``` - **kconn_dummy.bat**: dummy.java 실행하는 배치 파일. standard-io 메시지를 각각 파일로 받음. (이것은 kvm의 exec 구문에서 standard error 메시지를 받는데 한계가 있어서...) ``` java dummy >out.log 2>err.log ``` - **sendmsg.bat**: 알람 처리 스크립트 ``` echo "script:" %1 > aa.log echo "out:" %2 >> aa.log echo "err:" %3 >> aa.log ``` - **runkconn.kql**: 예외처리 샘플 스크립트 ``` echo "running kconn..."; try { exec kconn_dummy.bat; } catch (string ex) { echo "*Error*: kconn_dummy.bat exception occurred."; string out_msg = fopen("out.log","rb").read(); string err_msg = fopen("err.log","rb").read(); exec sendmsg.bat kconn_dummy.bat out_msg err_msg; // throw "*exception*"+ex; // => 여기서 종료시키고 싶으면 주석 해제. } echo "running another script..."; exec another_script.bat; ``` - **another_script.bat** ``` kql.exe -f 127.0.0.1:7577 -x "echo 'another_script';" ``` 이제 실행을 해보면, k-connector 실행시 에러가 발생했지만, 나머지 스크립트가 제대로 실행됐음을 알 수 있다. ``` kql>> run runkconn.kql; OK ``` ``` d:\cmoh\ts302\branches\RB-4.10\ztest\bin>cat aa.log "script:" kconn_dummy.bat "out:" out_msg "err:" err_msg d:\cmoh\ts302\branches\RB-4.10\ztest\bin>tail -4 ..\logs\kql\kql.log [2018-01-16 15:36:17] T0/0 running kconn... [2018-01-16 15:36:17] T0/0 *Error*: kconn_dummy.bat exception occurred. [2018-01-16 15:36:17] T0/0 running another script... [2018-01-16 15:36:18] T15/0 another_script ```
Tag
예외처리 샘플코드 k-connector windows
Module Name
Attachments
kconn-try-catch-sample.zip (1.2kb)
Comments
Save
Save
Cancel
Save
Cancel
Warning
Login