| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| |
| description: | |
| A tool for performance testing a Pulsar broker. |
| commands: |
| - name: consume |
| description: Run a consumer |
| options: |
| - flags: --auth_params |
| description: Authentication parameters in the form of `key1:val1,key2:val2` |
| - flags: --auth_plugin |
| description: Authentication plugin class name |
| - flags: -b, --batch-time-window |
| description: Batch messages in a window of the specified number of milliseconds |
| default: 1 |
| - flags: -z, --compression |
| description: Compress messages' payload. Possible values are `NONE`, `LZ4`, or `ZLIB`. |
| - flags: --conf-file |
| description: Configuration file |
| - flags: -c, --max-connections |
| description: Max number of TCP connections to a single broker |
| default: 0 |
| - flags: -o, --max-outstanding |
| description: Max number of outstanding messages |
| default: 1000 |
| - flags: -m, --num-messages |
| description: Number of messages to publish in total. If set to 0, it will keep publishing. |
| default: 0 |
| - flags: -n, --num-producers |
| description: The number of producers (per topic) |
| default: 1 |
| - flags: -t, --num-topic |
| description: The number of topics |
| default: 1 |
| - flags: -f, --payload-file |
| description: Use payload from a file instead of an empty buffer |
| - flags: -r, --rate |
| description: Publish rate msg/s across topics |
| default: 100 |
| - flags: -u, --service-url |
| description: Pulsar service URL |
| - flags: -s, --size |
| description: Message size (in bytes) |
| default: 1024 |
| - flags: -i, --stats-interval-seconds |
| description: Statistics interval seconds. If 0, statistics will be disabled. |
| default: 0 |
| - flags: -time, --test-duration |
| description: Test duration in secs. If set to 0, it will keep publishing. |
| default: 0 |
| - name: produce |
| description: Run a producer |
| options: |
| - flags: --auth_params |
| description: Authentication parameters in the form of `key1:val1,key2:val2` |
| - flags: --auth_plugin |
| description: Authentication plugin class name |
| - flags: -b, --batch-time-window |
| description: Batch messages in a window of the specified number of milliseconds |
| default: 1 |
| - flags: -z, --compression |
| description: Compress messages' payload. Possible values are `NONE`, `LZ4`, or `ZLIB`. |
| - flags: |
| - --conf-file |
| description: Configuration file |
| - flags: -c, --max-connections |
| description: Max number of TCP connections to a single broker |
| default: 0 |
| - flags: -o, --max-outstanding |
| description: Max number of outstanding messages |
| default: 1000 |
| - flags: -m, --num-messages |
| description: Number of messages to publish in total. If set to 0, it will keep publishing. |
| default: 0 |
| - flags: -n, --num-producers |
| description: The number of producers (per topic) |
| default: 1 |
| - flags: -t, --num-topic |
| description: The number of topics |
| default: 1 |
| - flags: -f, --payload-file |
| description: Use payload from a file instead of an empty buffer |
| - flags: -r, --rate |
| description: Publish rate msg/s across topics |
| default: 100 |
| - flags: -u, --service-url |
| description: Pulsar service URL |
| - flags: -s, --size |
| description: Message size (in bytes) |
| default: 1024 |
| - flags: -i, --stats-interval-seconds |
| description: Statistics interval seconds. If 0, statistics will be disabled. |
| default: 0 |
| - flags: -time, --test-duration |
| description: Test duration in secs. If set to 0, it will keep publishing. |
| default: 0 |
| - name: monitor-brokers |
| description: Continuously receive broker data and/or load reports |
| options: |
| - flags: --connect-string |
| description: A connection string for one or more ZooKeeper servers |
| - name: simulation-client |
| description: Run a simulation server acting as a Pulsar client. Uses the client configuration specified in `conf/client.conf`. |
| - name: simulation-controller |
| description: Run a simulation controller to give commands to servers |
| options: |
| - flags: --client-port |
| description: The port that the clients are listening on |
| default: 0 |
| - flags: --clients |
| description: Comma-separated list of client hostnames |
| - flags: --cluster |
| description: The cluster to test on |
| env_vars: |
| - name: PULSAR_LOG_CONF |
| description: Log4j configuration file |
| default: conf/log4j.properties |
| - name: PULSAR_CLIENT_CONF |
| description: Configuration file for the client |
| default: conf/client.conf |
| - name: PULSAR_EXTRA_OPTS |
| description: Extra options to be passed to the JVM |
| - name: PULSAR_EXTRA_CLASSPATH |
| description: Extra paths for Pulsar's classpath |