fedmsg-logger(1)

fedmsg-logger1

Simply emit messages from the command-line to the fedmsg bus

Usage

fedmsg-logger [--message LOGGER_MESSAGE] [--json-input] [--topic TOPIC] [--modname MODNAME] [--cert-prefix CERT_PREFIX] [<common fedmsg options>]

fedmsg-logger [{-h | --help}]

Overview

fedmsg-logger is a simple command-line utility to send messages to the fedmsg bus. It is an ephemeral command, that doesn't bind a 0mq endpoint directly. It sends its messages to a fedmsg-relay(1) daemon that binds a persistent endpoint that the outside world can subscribe to. If the fedmsg-relay(1) service is not running at the address specified in the config, then fedmsg-logger will hang until that service becomes available.

If --message is not specified, this command accepts messages from stdin.

Options

-h, --help

Print an help message and exit

--message LOGGER_MESSAGE

The message to send.

--json-input

Take each line of input as JSON.

--topic TOPIC

The topic to which the messages are sent. Defaults to log if unset.

--modname MODNAME

The module name to which the messages are sent. Defaults to logger if unset.

--cert-prefix CERT_PREFIX

Specify a different cert from /etc/pki/fedmsg

Options

--io-threads IO_THREADS

Number of io threads for 0mq to use

--topic-prefix TOPIC_PREFIX

Prefix for the topic of each message sent.

--post-init-sleep POST_INIT_SLEEP

Number of seconds to sleep after initializing.

--config-filename CONFIG_FILENAME

Config file to use.

--print-config

Simply print out the configuration and exit. No action taken.

--timeout TIMEOUT

Timeout in seconds for any blocking zmq operations.

--high-water-mark HIGH_WATER_MARK

Limit on the number of messages in the queue before blocking.

--linger ZMQ_LINGER

Number of milliseconds to wait before timing out connections.

Topic construction

The full topic to which the messages are sent is constructed from the topic_prefix and environment set in the fedmsg configuration, and the --topic TOPIC and --modname MODNAME options this way:

<topic_prefix>.<environment>.MODNAME.TOPIC

Caveats

Note that when using --json-input, you must send valid JSON, including the use of double quotes as opposed to single quotes:

{"a": 1} is valid JSON.

{'a': 1} is invalid JSON.

Examples

Send a message from standard input in JSON format:

echo '{"a": 1}' | fedmsg-logger --json-input

Send a message to the git.repo.update topic

echo "Hai there." | fedmsg-logger --modname=git --topic=repo.update

Send a simple message:

fedmsg-logger --message="This is a message."

Send a JSON-format message:

fedmsg-logger --message='{"a": 1}' --json-input

Authors

The Fedora Infrastructure team <[email protected]>

Wrote the fedmsg software.

Nicolas Dandrimont <[email protected]>

Wrote this manpage for the Debian system.

From fedmsg 0.9.3-1 in Debian 8 (Jessie). Parsed by carta from the page's man source.