You are viewing our old blog site. For latest posts, please visit us at the new space. Follow our publication there to stay updated with tech articles, tutorials, events & more.

Managing Crons

0.00 avg. rating (0% score) - 0 votes

Not a nightmare anymore ..

What is Cron ?
Cron is a time-based job scheduler in Unix-like computer operating systems. People who set up and maintain software environments use cron to schedule jobs (commands or shell scripts) to run periodically at fixed times, dates, or intervals.

With increasing servers, applications, crons (schedule jobs) it was becoming pain to manage and monitor all crons.
We thus built NCConfig – a tool to monitor all crons which includes their status – Success/Failure, executing time, output, etc

Few major problems which we used to face before building NCConfig

– Did my job actually run?
Generally all crons were used to be monitored via email now because the typical way to monitor cron jobs is via email it is often extremely hard to find out if a job has actually run successfully. Ideally your monitoring shouldn’t involve people being awake and willing to read automatically generated emails. Especially if the cron job is important.

– Email, email everywhere!
Cron used to email the output of a given job to the user that the job is running as. This can be very useful when some aspect of the job requires alerting the user.
The problem is that you very often do not want emails from cron jobs. And usually when they start they can flood your inbox very fast.

– Where is my cron running ?
With more than 100 serves and single applications running on multiple servers its sometime get difficault to find where actually is my cron running.

– Execution Statistics
You may see the cron job execution statistics (including the total number of successful executions,  total number of failed executions (TF) and number of consecutive failed executions (CF)) in the cron job list


Feature details  : 

* Centralized system to manage all your crons running on multiple servers.
* Execution Statistics – You can get the time taken for each and every cron using this tool (Start Time, End Time)
* Graphical Statistics – You can check the execution statistics in graphical format
* Role based Management – Admin / Application Manager / Read Only
– Admin : Will have all the rights like adding server, application, crons. etc
– Application Manager – Will have the rights to manage the crons of the application which they own.
– Ready Only – Will have only read only access
* Cron Success/Failure logs – Stores all the output of the crons in the databases which can be accessed anytime and also the cron status
* Single Change Settings – includes any actions that can change cron job settings excepting “Enable Logs”, “Disable Logs”, “Enable Cron Job” and “Disable Cron Job”.
* Easy Integration – One-time setup/integration with your existing environment.
* NCConfig is totally free for non-commercial use.
* You can modify the source code to suit your system and use it internally, as well as develop customized tools aggregating features to NCConfig.
* All settings and the values collected are stored in a simple format and are fully open
You can download the NCConfig from here https://github.com/naukri-engineering/NCConfig
Cheers