Getting started
C# Cron Job Monitoring
C# and .NET are powerhouses in the enterprise world. Whether you are running a console app on Windows Server or a background worker in Azure, you need to know your tasks are completing.
olic.io offers a platform-agnostic way to monitor .NET applications. We don’t care if you are on Windows or Linux; we just look for a “ping” (HTTP GET request) to verify your job’s health.
Adding a Heartbeat to Your C# App
Modern .NET (Core/5/6+) makes HTTP requests very straightforward with HttpClient.
Implementation
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
// Best practice: Instantiate HttpClient once (static)
private static readonly HttpClient client = new HttpClient();
static async Task Main(string[] args)
{
string heartbeatUrl = "https://api.olic.io/ping/YOUR-ID-HERE";
try
{
// --- YOUR CORE LOGIC HERE ---
Console.WriteLine("Starting data migration...");
// ----------------------------
// Send the success ping
HttpResponseMessage response = await client.GetAsync(heartbeatUrl);
response.EnsureSuccessStatusCode();
Console.WriteLine("Ping sent to olic.io");
}
catch (Exception ex)
{
Console.WriteLine($"Job failed: {ex.Message}");
Environment.Exit(1);
}
}
}
This fits seamlessly into standard .NET logging and dependency injection patterns. You can easily manage different monitors for different environments using Projects in the olic.io dashboard.
Why C# for Backend Automation
C# is the go-to for Business intelligence analysts and enterprises working within the Microsoft ecosystem. It is robust, strongly typed, and excellent for complex logic like Importing data from legacy SQL servers.
However, background console apps are often “set and forgotten” on a server. If the server restarts or the scheduled task credentials expire, the job stops. olic.io alerts you to this absence immediately.