JAVA

서버모니터링을 위한 client프로그램

질주하는구 2020. 9. 3. 11:11
다른 서버의 상태를 체크하기 위한 프로그램 입니다. 해당 프로그램은 상태를 요청하고 해당 상태를 기준으로 추가 작업을 진행 하기 위한 기본 소스 입니다. 스케줄에 등록 후 사용 하려고 작성한 내용 입니다.
package socketCommunication;

import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.Socket;

import org.apache.log4j.Logger;

public class ClientMain {
	private static final Logger log = Logger.getLogger(ClientMain.class);
	public static void main(String[] args) {
		boolean isConnetion			= true;
		boolean isSuccess 			= false;
		String serverIp 					= "localhost";
		InputStream input				= null;
		DataInputStream dis 			= null;
		Socket socket 					= null;
		try{
			socket 		= new Socket(serverIp, 8081);//소켓 오픈
			input 		= socket.getInputStream();//정보 
			dis			= new DataInputStream(input);
			
			String returnStr = dis.readUTF();
			if("true".equals(returnStr)){
				isSuccess = true;
			}
		}catch(IOException e){
			isConnetion = false;
			log.error(e);
		}finally{
			if(input!=null){try{input.close();}catch(Exception e){}}
			if(dis!=null){try{dis.close();}catch(Exception e){}}
			if(socket!=null){try{socket.close();}catch(Exception e){}}
		}
		System.out.println("연결성공여부 : "+isConnetion);//연결 실패시 서버 동작 여부 체크를 위한 메시지를 관리자에게 전달
		System.out.println("응답성공여부 : "+isSuccess);//응답 실패,성공 여부에 맞춰서 관련 작업 진행
	}

}
반응형