mod_heartmonitor - Apache HTTP Server Version 2.4

Apache HTTP Server Version 2.4

Apache > HTTP Server > Documentation > Version 2.4 > Modules

# Apache Module mod_heartmonitor

Available Languages: en | fr

Description: | Centralized monitor for mod_heartbeat origin servers
Status: | Experimental
Module Identifier: | heartmonitor_module
Source File: | mod_heartmonitor.c
Compatibility: | Available in Apache 2.3 and later

### Summary

`mod_heartmonitor` listens for server status messages generated by `mod_heartbeat` enabled origin servers and makes their status available to `mod_lbmethod_heartbeat`. This allows `ProxyPass` to use the "heartbeat" lbmethod inside of `ProxyPass`.

This module uses the services of `mod_slotmem_shm` when available instead of flat-file storage. No configuration is required to use `mod_slotmem_shm`.

To use `mod_heartmonitor`, `mod_status` and `mod_watchdog` must be either a static modules or, if a dynamic module, it must be loaded before `mod_heartmonitor`.

### Directives

### Bugfix checklist

- httpd changelog
- Known issues
- Report a bug

### See also

- Comments

## HeartbeatListen Directive

Description: | multicast address to listen for incoming heartbeat requests
Syntax: | `HeartbeatListen addr:port`
Default: | `disabled`
Context: | server config
Status: | Experimental
Module: | mod_heartmonitor

The `HeartbeatListen` directive specifies the multicast address on which the server will listen for status information from `mod_heartbeat`-enabled servers. This address will usually correspond to a configured `HeartbeatAddress` on an origin server.

    HeartbeatListen 239.0.0.1:27999

This module is inactive until this directive is used.

## HeartbeatMaxServers Directive

Description: | Specifies the maximum number of servers that will be sending heartbeat requests to this server
Syntax: | `HeartbeatMaxServers number-of-servers`
Default: | `HeartbeatMaxServers 10`
Context: | server config
Status: | Experimental
Module: | mod_heartmonitor
Compatibility: | The value of 0 is accepted only in 2.4.55 and above

The `HeartbeatMaxServers` directive specifies the maximum number of servers that will be sending requests to this monitor server. It is used to control the size of the shared memory allocated to store the heartbeat info when `mod_slotmem_shm` is in use.

For using flat-file storage (without loading `mod_slotmem_shm`), this must be set to 0. The value must be either 0, or bigger or equals 10.

## HeartbeatStorage Directive

Description: | Path to store heartbeat data when using flat-file storage
Syntax: | `HeartbeatStorage file-path`
Default: | `HeartbeatStorage logs/hb.dat`
Context: | server config
Status: | Experimental
Module: | mod_heartmonitor

The `HeartbeatStorage` directive specifies the path to store heartbeat data. This flat-file is used only when `mod_slotmem_shm` is not loaded and `HeartbeatMaxServers` is set to 0.

Available Languages: en | fr

## Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our mailing lists.