All Projects → jamesrwhite → Minicron

jamesrwhite / Minicron

Licence: gpl-3.0
🕰️ Monitor your cron jobs

Programming Languages

ruby
36898 projects - #4 most used programming language
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
go
31211 projects - #10 most used programming language
SCSS
7915 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to Minicron

Defcon24 Infra Monitoring Workshop
Defcon24 Workshop Contents : Ninja Level Infrastructure Monitoring
Stars: ✭ 104 (-95.58%)
Mutual labels:  automation, monitoring, devops, infrastructure
Healthchecks
A cron monitoring tool written in Python & Django
Stars: ✭ 4,297 (+82.77%)
Mutual labels:  cron, monitoring, devops, ops
Rundeck
Enable Self-Service Operations: Give specific users access to your existing tools, services, and scripts
Stars: ✭ 4,426 (+88.26%)
Mutual labels:  automation, scheduler, devops, ops
Howtheysre
A curated collection of publicly available resources on how technology and tech-savvy organizations around the world practice Site Reliability Engineering (SRE)
Stars: ✭ 6,962 (+196.13%)
Mutual labels:  monitoring, devops, infrastructure
Linuxbashshellscriptforops
Linux Bash Shell Script and Python Script For Ops and Devops
Stars: ✭ 298 (-87.32%)
Mutual labels:  automation, devops, ops
Ansible For Kubernetes
Ansible and Kubernetes examples from Ansible for Kubernetes Book
Stars: ✭ 389 (-83.45%)
Mutual labels:  automation, devops, infrastructure
Runbook
A framework for gradual system automation
Stars: ✭ 531 (-77.41%)
Mutual labels:  automation, devops, ops
Sandpolis
Experimental remote monitoring and management
Stars: ✭ 30 (-98.72%)
Mutual labels:  automation, monitoring, devops
Chef
Chef Infra, a powerful automation platform that transforms infrastructure into code automating how infrastructure is configured, deployed and managed across any environment, at any scale
Stars: ✭ 6,766 (+187.79%)
Mutual labels:  automation, devops, infrastructure
Gatus
⛑ Gatus - Automated service health dashboard
Stars: ✭ 1,203 (-48.83%)
Mutual labels:  automation, monitoring, devops
Terrahub
Terraform Automation and Orchestration Tool (Open Source)
Stars: ✭ 148 (-93.7%)
Mutual labels:  automation, devops, infrastructure
Netbox As Ansible Inventory
Ansible dynamic inventory script for Netbox.
Stars: ✭ 161 (-93.15%)
Mutual labels:  automation, devops
Python devops book
[Book-2020] Python For DevOps: Learn Ruthlessly Effective Automation
Stars: ✭ 166 (-92.94%)
Mutual labels:  automation, devops
Dellemc Openmanage Ansible Modules
Dell EMC OpenManage Ansible Modules
Stars: ✭ 169 (-92.81%)
Mutual labels:  automation, devops
Scheduler
Task scheduler for Golang
Stars: ✭ 171 (-92.73%)
Mutual labels:  scheduler, cron
Autospotting
Saves up to 90% of AWS EC2 costs by automating the use of spot instances on existing AutoScaling groups. Installs in minutes using CloudFormation or Terraform. Convenient to deploy at scale using StackSets. Uses tagging to avoid launch configuration changes. Automated spot termination handling. Reliable fallback to on-demand instances.
Stars: ✭ 2,014 (-14.33%)
Mutual labels:  automation, infrastructure
Kitten
Tiny multi-server automation tool
Stars: ✭ 171 (-92.73%)
Mutual labels:  automation, devops
Ostent
Ostent is a server tool to collect, display and report system metrics.
Stars: ✭ 171 (-92.73%)
Mutual labels:  monitoring, devops
Opunit
🕵️‍♂️ Sanity checking containers, vms, and servers
Stars: ✭ 176 (-92.51%)
Mutual labels:  devops, infrastructure
Dockbix Agent Xxl
🐳 Dockerized Zabbix agent with Docker metrics and host metrics support for CoreOS, RHEL, CentOS, Ubuntu, Debian, Fedora, Boot2docker, Photon OS, Amazon Linux, ...
Stars: ✭ 177 (-92.47%)
Mutual labels:  monitoring, devops

🕰️ minicron

minicron makes it simple to monitor your cron jobs and ensure they are running both correctly and on schedule.

⚠️ minicron is no longer being worked on

The latest release is v0.9.6, but 0.9.x is not being actively developed or supported.

This branch (master) is the current state of progress towards a v1.0 release however I am not currently actively working on it due not having sufficient time to dedicate to the project as I did in the past.


Overview

minicron runs your jobs via its easy to install client which lives on your server and relays the job data back to the server (web ui) where you can view it and set up alerts to ensure the job is running correctly.

Background

I initially developed minicron as part of my dissertation at university in 2014. The motivation for developing minicron comes largely from my experience and frustrations using cron both in a personal and professional capacity.

Features

Requirements

OS

Should run on OSX and any Linux/BSD based OS.

Database

  • SQLite
  • MySQL
  • PostgreSQL

Web Server / Reverse Proxy

Nginx

A simple example config for nginx is provided.

Apache

If you're using apache as your reverse proxy you need to ensure you have the following modules installed:

  • libapache2-mod-proxy-html
  • apache2-utils

Run the following to enable them and then restart apache a2enmod proxy proxy_html proxy_http xml2enc.

A simple example config for apache is provided.

Installation

TODO: update for 1.0

Usage

Run a command

minicron run 'mysqldump db > backup.sql'

The global --verbose option can also be passed to the run argument like so

minicron run --verbose ls

You can also run a command in 'dry run' mode to test if it works without sending the output to the server.

minicron run --dry-run 'zip -r backup.zip website'

for further information see minicron help run.

Get help

Running minicron with no arguments is an alias to running minicron help, minicron -h or minicron --help. You can also use the help argument to get information on any command as shown above in the run a command section or alternatively you can pass the -h or --help options like so minicron run -h.

Server

To launch the server (aka the Hub) run

minicron server start

by default it will bind to port 9292 on the host 0.0.0.0 but this can be configured by the command line arguments --host --port and --path or in the config file.

By default the server will run as a daemon with its process id stored in /tmp/minicron.pid you can also use the stop, restart and status commands to control the server.

To run the server in debug mode, so you can see its output and any errors, you can pass the --debug option.

Version

Like many command line programs minicron will show its version number when the global options -v or --version are passed to the CLI.

Configuration

Some configuration options can be passed in manually but the recommended way to configure minicron is through the use of a config file. You can specify the path to the file using the --config global option. The file is expected to be in the toml format. The default options are specified in the server.toml file and minicron will parse a config located in /etc/minicron/server.toml if it exists. Options specified via the command line will take precedence over those taken from a config file.

Versioning

All stable releases will follow the semantic versioning guidelines.

Releases will be numbered with the following format:

<major>.<minor>.<patch>

Based on the following guidelines:

  • A new major release indicates a large change where backwards compatibility is broken.
  • A new minor release indicates a normal change that maintains backwards compatibility.
  • A new patch release indicates a bugfix or small change which does not affect compatibility.

Contributing

Feedback and pull requests are welcome. Please see CONTRIBUTING.md for more info.

Areas that I would love some help with:

  • Any of the unassigned issues here.
  • General testing of the system. Let me know what you think, and create issues for any bugs you find!
  • Tests!!
  • Validation and error handling improvements
  • Documentation improvements.
  • Look for 'TODO:' notices littered around the code, I'm trying to convert them all to issues but there are a lot...
  • Code refactoring: I had a deadline to meet for the initial versions so some parts are a tad rushed
  • UI improvements

Support

Where possible I will try to provide support for minicron but I offer no guarantees.

Feel free to open an issue and I'll do my best to help.

Credit

minicron makes use of a lot of awesome open source projects that have saved me a lot of time in its development. I started out trying to list all of them but it was taking way too much time so check out the dependencies in minicron.gemspec and app.rb.

License

minicron is licensed under the GPL v3 - see here for the full license

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].