1
0
Fork 0
mirror of https://github.com/eosswedenorg/antelope-api-healthcheck synced 2026-06-17 04:50:02 +02:00
No description
Find a file
2020-06-11 19:04:09 +02:00
scripts scripts/templates/rc.conf: pass "-p" flag (create pidfile) to program. 2020-06-11 19:04:09 +02:00
src src/server.go: Use pid package and write pid file. 2020-06-11 19:01:32 +02:00
.gitignore Initial commit 2020-02-03 13:24:34 +01:00
compile.sh Adding compile.sh 2020-04-29 14:40:00 +02:00
Makefile Adding getopts package to parse pid file path. 2020-06-11 19:01:32 +02:00
README.md README.md: update parameter delimiter in requests. 2020-03-06 11:23:57 +01:00

EOSIO API Healthcheck for HAProxy

This program implements EOSIO healthcheck for HAProxy over TCP.

TCP Protocol

The protocol is simple and has 4 rules.

  1. Data is transmitted in packets encoded in ascii and ends with newline \n.
  2. There are two types of packages: Request and Response. Each Request has exactly one Response.
  3. Each parameter inside a Request is separated by |
  4. Each response contains exactly one status code (see below)

Request

The following parameters are supported in a request and are ordered from first to last below:

# Name Required Description
1 Host Yes IP/Hostname to the api.
2 Port No Port number to the api (default 80)
3 num_blocks No Number of blocks the api can drift before reported down (default 10)
4 version No API Version to check against, v1 = standard, v2 = Hyperion (default v1)

Response

The api can respond with exactly one status code. See HAproxy documentation for more information

code Description
up Api is healthy
down Api is not healthy
failed The program failed to read the status from the api.
maint Api is set in maintenance mode (not used)
ready Api is ready again after being in maint state (not used)
stopped Api has been stopped manually (not used)

Author

Henrik Hautakoski - henrik@eossweden.org