Run this as a scheduled agent to test the HTTP availability of a set server.
Not a difficult one.
It sends an e-mail at whatever interval the agent runs at to give a log of
availability.
import lotus.domino.*;
import java.net.*;
import java.util.*;
public class JavaAgent extends AgentBase {
URL url;
String strSubject, strBody;
Document docMail;
public void NotesMain() {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
docMail = agentContext.getCurrentDatabase().createDocument();
docMail.replaceItemValue("Form", "Memo");
URLConnection connURL;
Vector vSendTo = new Vector();
vSendTo.addElement("your e-mail address goes here");
RichTextItem rti = docMail.createRichTextItem("Body");
try {
url = new URL("http://www.WHATEVER.com");
try {
connURL = url.openConnection();
connURL.connect();
strSubject = "OK";
rti.addNewLine();
for (int i=0; i<10 i++) {
rti.appendText(connURL.getHeaderFieldKey(i) + " : " +
connURL.getHeaderField(i));
rti.addNewLine();
}
} catch (Exception e) {
strSubject = "Good URL - cannot connect";
}
} catch (MalformedURLException e) {
strSubject = "bad URL";
}
docMail.replaceItemValue("Subject", "Availability Test for " +
url.toString() + " " +
new Date() + " " + strSubject);
docMail.send(false, vSendTo);
} catch(Exception e) {
e.printStackTrace();
}
}
}
This was first published in November 2000