$darkmode
Elektra 0.11.0
|
This plugin is a notification plugin, which sends notifications using ZeroMq publish (ZMQ_PUB
) sockets when the key database (KDB) has been modified. It is compatible with the sending zeromqrecv plugin.
See installation. The package is called libelektra5-zeromq
.
libzmq3-dev
(ZeroMQ C bindings > 3.2)The recommended way is to globally mount the plugin together with the zeromqrecv plugin:
kdb global-mount zeromqsend zeromqrecv
This plugin is designed to be used as a transport plugin for Elektra's notification feature. Since ZeroMq creates threads for asynchronous I/O this plugin always operates asynchronously.
Since ZeroMQ sockets only provide a 1:n mapping (i.e. one publisher with many subscribers or one subscriber and many publishers) the zeromqsend
and zeromqrecv
plugins require a XPUB/XSUB endpoint. The kdb tool "hub-zeromq" provides these endpoints.
Mount this plugin globally with default settings to use it as sending transport plugin for Elektra's notification feature:
kdb global-mount zeromqsend
This plugin supports the following configuration options when mounting:
ipc
and tcp
ZeroMQ transports are recommended. The default value is "tcp://localhost:6000".The ZeroMQ transport plugins use the publish/subscribe sockets (ZMQ_PUB
and ZMQ_SUB
) for notification transport.
Each notification is a multipart message. The first part contains the type of change, the second part contains the name of the changed key.
Possible only current change is Commit
.