MeterMaid is a facility that comprises a server, which maintains "tables" of data, and a client side (in particular, the MTA's callouts to MeterMaid via mapping table MeterMaid routine callouts,
metermaid: URLs encoded into MTA configuration, and (new in Messaging Server 7.2) Sieve "
metermaid" tests or actions). The MeterMaid server maintains its data in-memory; this offers high performance, but note that it does imply that the MeterMaid data is not preserved across MeterMaid (or Messaging Server as a whole) restarts. As multiple processes can communicate with the MeterMaid server over protocol, MeterMaid permits across-process tracking of data. MeterMaid is thus particularly suited for configuring "throttle" effects.
MeterMaid requires configuration of itself -- the MeterMaid server, and some basics of MeterMaid client operation -- configured in Unified Configuration via MeterMaid options and MeterMaid client options, or in legacy configuration via configutil parameters. Once MeterMaid's own operation is established, then configuring the MTA on how to find/communicate with MeterMaid is configured via MeterMaid MTA options. And then any specific MeterMaid uses may be configured into the MTA via mapping table routine callouts,
metermaid: URLs in appropriate MTA configuration options, or use of Sieve "
metermaid" tests or actions.
For a number of examples of MeterMaid use in the form of MTA mapping table callouts to MeterMaid routines, see the discussion of Triggering effects from transaction logging with LOG_ACTION.
To find all options potentially relevant to MeterMaid, try doing
msconfig> apropos metermaid
Note that there are the options relevant for the MeterMaid server, settable under the
metermaid group, and there are options relevant for any MeterMaid clients, settable under
metermaid_client group; respectively, these correspond to the legacy configuration
metermaid.mtaclient.* configutil parameters. Some options are settable either generally for a named
metermaid_client group, or settable specifically for a named table under a
remote_table group. (Note that a named
remote_table group may only be set under
metermaid_client; a named
local_table group may only be set under
Then there are also a number of MTA options that override, for MTA purposes, some of the normal
metermaid_client options. There are also the
metermaidtable IMAP options (under the
pwexpirealert group), to specify whether to use MeterMaid, and what MeterMaid table to use, for password expiration alerts.
- MeterMaid MTA options
- metermaid options
- metermaid_client options
- Mapping entry templates
- MTA URL types
- Sieve metermaid extension
- check_metermaid callouts
- Triggering effects from transaction logging with LOG_ACTION
- Mail filtering and access control
- Defending against denial of service attacks
- viametermaid Option
- metermaidtable Option
- IMAP password expiration alert options