How to Monitor Java Cron Jobs with CronRabbit
JavaThe Problem
Java applications running scheduled tasks via cron, Quartz, or Spring @Scheduled can fail silently due to OOM errors, thread deadlocks, or unhandled exceptions.
The Solution
Add an HTTP call to CronRabbit at the end of your scheduled method or main() to confirm successful completion.
Integration
Use Java's built-in HttpClient (Java 11+) or HttpURLConnection to send a lightweight GET request to your CronRabbit ping URL.
Code Examples
Java 11+ HttpClient monitoring
Javaimport java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.time.Duration;
public class CronJob {
private static final String PING = "https://ping.cronrabbit.com/your-id";
private static final HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(10)).build();
public static void main(String[] args) {
ping("/start");
try {
runBackup();
ping("");
} catch (Exception e) {
ping("/fail");
System.exit(1);
}
}
private static void ping(String path) {
try {
client.send(HttpRequest.newBuilder()
.uri(URI.create(PING + path)).GET().build(),
HttpResponse.BodyHandlers.discarding());
} catch (Exception ignored) {}
}
}