This patch set adds two new server parameters, "agent-port" and
"agent-interval". These may be used to control running an agent check
as well as a (non-agent) health check.
Some details of how this may be configured may be found in the changelog
of the last patch of the series.
>From an implementation point-of-view the approach taken has been to allow a
server to have two checks. One for the health checks that have been
configurable up to now. And another for an agent check. As such most of
the series involves refactoring struct server and and code paths in
checks.c to separate a server from its check. It is only the last patch
that actually adds the second check.
Simon Horman (13):
DOC: Clarify documentation of option lb-agent-chk
CLEANUP: Make parameters of srv_downtime and srv_getinter const
MEDIUM: Split up struct server's check element
MEDIUM: Move {,fast,down}inter to struct check
MEDIUM: Move result element to struct check
MEDIUM: Paramatise functions over the check of a server
MEDIUM: cfgparse: Factor out check initialisation
MEDIUM: Add state to struct check
MEDIUM: Add name element to struct check
MEDIUM: Move health element to struct check
MEDIUM: Add type type to struct check
MEDIUM: Add helper for task creation for checks
MEDIUM: checks: Add supplementary agent checks
doc/configuration.txt | 67 ++++--
include/proto/checks.h | 4 +-
include/proto/server.h | 4 +-
include/types/server.h | 46 ++--
src/cfgparse.c | 154 +++++++++----
src/checks.c | 592 ++++++++++++++++++++++++------------------------
src/dumpstats.c | 22 +-
src/haproxy.c | 6 +
src/proto_http.c | 6 +-
src/server.c | 16 +-
10 files changed, 534 insertions(+), 383 deletions(-)
--
1.7.10.4