bofc manual pages




psmqd - broker for publish subscribe over mqueue  


psmqd [ -h | -v | options ]  


psmqd is a broker that is responsible for handling clients and relaying messages to subscribed parties. No client can communicate with another without broker. Broker starts in foreground and doesn't daemonize on its own, to run it in background as demon, use external tool like start-stop-daemon.  


Prints short help and exits
Prints version information and exits
If set, ANSI colors will be added to logs depending on log level
-l level
Verbosity of logs. level can be on of:
    0   fatal errors, application cannot continue
    1   major failure, needs immediate attention
    2   critical errors
    3   error but recoverable
    4   warnings
    5   normal message, but of high importance
    6   info log, doesn't print that much (default)
    7   debug, not needed in production
-p path
Path to a file where logs from program will be stored. If not specified, or files does not exist or is not writable, logs will be printed to standard error output (stderr).
-b name
Name of the broker. This is effectively name of posix mq that will be used by clients to talk with the broker. Should start with one '/' (like "/name"), rest of the name is system specific. For example, QNX will accept name with multiple slashes (/multi/slash/path), but Linux will cry about it. Consult your system's manuall page (it's usually mq_overview(7)) If this is not specified, program will used default value /psmqd as mqueue name.
If previous instance of psmqd crashed or was killed with SIGKILL mqueue created by program will not be removed and will linger in the system. When you restart daemon after that, it will refuse to start because same mq already exists in the system. This is failsave to prevent two broker operate on single mqueue, which would lead to funny stuff. If you are sure it is safe to start broker, even though, mq with that name already exist, pass this flag, and broker will remove stalled mq prior to start.
-m maxmsg
Define maximum number of elements on the queue. This refers to control mqueue created by the broker, if you set this to small value, clients will hang in mq_send() until broker deals with incomig messages and free space in queue.


Please, report all bugs to "Michał Łyszczek <>"  


psmqd(1), psmq-pub(1), psmq-sub(1), psmq_cleanup(3), psmq_init(3), psmq_publish(3), psmq_receive(3), psmq_subscribe(3), psmq_timedreceive(3), psmq_timedreceive_ms(3), psmq_unsubscribe(3), psmq_building(7), psmq_overview(7).

19 May 2021 (v9999)