KISS healthcheck implemented in Python and Bash
Project description
InfraCheck
==========
[![Build Status](https://travis-ci.org/riotkit-org/infracheck.svg?branch=master)](https://travis-ci.org/riotkit-org/infracheck)
[![codecov](https://codecov.io/gh/riotkit-org/infracheck/branch/master/graph/badge.svg)](https://codecov.io/gh/riotkit-org/infracheck)
[![Documentation Status](https://readthedocs.org/projects/infracheck/badge/?version=latest)](https://infracheck.docs.riotkit.org/en/latest/?badge=latest)
Health check system designed to be easy to extend by not enforcing the programming language.
A single health check unit (let we call it later just 'check') can be written even in BASH.
Dictionary
----------
- `script` - a script that is checking something
- `check` - your definition (input arguments) how to use a `check` eg. "type": http + params what is the URL, you can define multiple configurations for single check
Guide to "check" creation
-------------------------
1. Write a `script` in any programming language, take environment variables as input (skip this step if you want to use existing pre-defined scripts)
2. Create a json `check` that will contain a working configuration example for your `script`.
Running
-------
See a working example in the `./example` directory.
```bash
# from this directory
make install
infracheck --help
```
docker or docker-compose:
```yaml
version: '2'
services:
healthcheck:
image: wolnosciowiec/infracheck
command: " --directory=/data --server-path-prefix=/some-prefix"
volumes:
# place your health checks structure at ./healthchecks
- "./healthchecks:/data"
- "/var/run/docker.sock:/var/run/docker.sock:ro"
ports:
- "8000:8000"
#labels:
# - "traefik.frontend.rule=Host: health.localhost; PathPrefix: /some-prefix"
# - "traefik.enable=true"
# - "traefik.basic.protocol=${PROTO}"
# - "traefik.port=8000"
```
==========
[![Build Status](https://travis-ci.org/riotkit-org/infracheck.svg?branch=master)](https://travis-ci.org/riotkit-org/infracheck)
[![codecov](https://codecov.io/gh/riotkit-org/infracheck/branch/master/graph/badge.svg)](https://codecov.io/gh/riotkit-org/infracheck)
[![Documentation Status](https://readthedocs.org/projects/infracheck/badge/?version=latest)](https://infracheck.docs.riotkit.org/en/latest/?badge=latest)
Health check system designed to be easy to extend by not enforcing the programming language.
A single health check unit (let we call it later just 'check') can be written even in BASH.
Dictionary
----------
- `script` - a script that is checking something
- `check` - your definition (input arguments) how to use a `check` eg. "type": http + params what is the URL, you can define multiple configurations for single check
Guide to "check" creation
-------------------------
1. Write a `script` in any programming language, take environment variables as input (skip this step if you want to use existing pre-defined scripts)
2. Create a json `check` that will contain a working configuration example for your `script`.
Running
-------
See a working example in the `./example` directory.
```bash
# from this directory
make install
infracheck --help
```
docker or docker-compose:
```yaml
version: '2'
services:
healthcheck:
image: wolnosciowiec/infracheck
command: " --directory=/data --server-path-prefix=/some-prefix"
volumes:
# place your health checks structure at ./healthchecks
- "./healthchecks:/data"
- "/var/run/docker.sock:/var/run/docker.sock:ro"
ports:
- "8000:8000"
#labels:
# - "traefik.frontend.rule=Host: health.localhost; PathPrefix: /some-prefix"
# - "traefik.enable=true"
# - "traefik.basic.protocol=${PROTO}"
# - "traefik.port=8000"
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
infracheck-1.0.2.dev3.tar.gz
(41.6 kB
view hashes)
Built Distribution
Close
Hashes for infracheck-1.0.2.dev3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1877e44562e3d2f351a9e0d658209872e0eef0e3cd6a5a8fd8215b84475e0f9a |
|
MD5 | 4de3d29622f98b6677cecc90599c19dd |
|
BLAKE2b-256 | ad36ed0d77d69487c209517249409591bdadb58c2e152fb99cb0571b27d644c8 |