Web uygulamasının belirli aralıklarla test edilmesi
Istediginiz bir web sitesinin belirli aralıklarla ayakta olup olmadığını test edebileceginiz örnek bir uygulama bulunuyor. Uygulama 5 dk da bir connection saglayıp bunu logluyor. Isterseniz mail de gönderebilirsiniz. Bu arada logları kaydetmek için c:/httpTestLog.txt isimli bir dosyanız olması gerekiyor.
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ConnectionTest {
public static String testAddress(String address) throws Exception {
URL page = new URL(address);
HttpURLConnection conn = (HttpURLConnection) page.openConnection();
conn.connect();
String returnStatus = conn.getHeaderField(0);
conn.disconnect();
return returnStatus;
}
public static void logYaz(String line){
try {
BufferedWriter fw = new BufferedWriter(new FileWriter("c:/httpTestLog.txt",true));
fw.append(line);
fw.newLine();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] arguments) throws Exception {
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
while(true){
long baslangic = System.currentTimeMillis();
String returnStatus = testAddress("http://www.melihsakarya.com");
long bitis = System.currentTimeMillis();
//cikti
String str = "Tarih = "+(format.format(new Date()))+" \tTalep süresi = " + (bitis-baslangic) + " ms \t Baglanti = "+returnStatus;
//log yazar
logYaz(str);
System.out.println(str);
//5 dk bekler
Thread.sleep(5*60*1000);
//Thread.sleep(3000);
}
}
}
Son Yorumlar