How to make the "cfg_nvmsgbroker.txt" take effect with deepstream-app

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU) dGPU
• DeepStream Version 6.1Docker container
• JetPack Version (valid for Jetson only)
• TensorRT Version
• NVIDIA GPU Driver Version (valid for GPU only)
• Issue Type( questions, new requirements, bugs)
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

I’ve learned from source/lib/nvmsgbroker/readme file that user can override the default properties in nvmsgbroker lib by change values in “cfg_nvmsgbroker.txt”, which is exactly what I want to do. But I cannot find any relevant information about where this config file should be placed and how I can config the path in which deepstream-app’s config files. I only found a similar post: How to test nv_msgbroker autoreconnect feature but no one answered his question about the location of the file.

Thank you for any help.

please refer to “#msg-broker-config=/opt/nvidia/deepstream/deepstream/sources/libs/kafka_protocol_adaptor/cfg_kafka.txt” in \opt\nvidia\deepstream\deepstream\sources\apps\sample_apps\deepstream-test5\configs\test5_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt

Thank you for your prompt reply.

I’ve check the config file “cfg_kafka.txt”. It has one [message-broker] group and several items in it as follows:
[message-broker]
#consumer-group-id =
#proto-cfg = “<semicolon separated key=value pairs generic for both producer & consumer>”
#producer-proto-cfg = “”
#consumer-proto-cfg = “”
#partition-key =
#share-connection = 1

I cannot figure out which item corresponding to “cfg-nvmsgbroker.txt”. BTW, I’ve used AMQP adapter a lot which has following configs (cfg_amqp.txt):

[message-broker]
hostname = localhost
port = 5672
username = guest
password = guest
exchange = amq.topic
topic = topicname
amqp-framesize = 131072
#share-connection = 1

The group and key name in “cfg_nvmsgbroker.txt” are:
#This file specifies default nvmsgbroker configs & policies

[nvmsgbroker]
#(0):disable
#(1):enable
auto-reconnect=1

#connection retry interval in seconds
retry-interval=1

#connection max retry limit in seconds
max-retry-limit=3600

I want to use the [nvmsgbroker] group and just do know how to integrate it with AMQP adapter’s config file.

Thank you again for any further advice.

please refer to “Configuration” part in opt\nvidia\deepstream\deepstream\sources\libs\nvmsgbroker\README. there are many kinds of broker, such as kafka, AMQP, you can overwrite cfg_nvmsgbroker.txt with adding the specific configurations for AMQP.

Thank you for the reply. I just want to make it clearer if this is what your meaning:

In application config file, just setup the path of the nvmsgbroker’s config file. In the nvmsgbroker config file, first part you can begin with [nvmsgbroker] group:

[nvmsgbroker]
#(0):disable
#(1):enable
auto-reconnect=1

#connection retry interval in seconds
retry-interval=1

#connection max retry limit in seconds
max-retry-limit=3600

and then add specific adapter’s config, for instance AMQP:
[message-broker]
hostname = localhost
port = 5672
username = guest
password = guest
exchange = amq.topic
topic = topicname
amqp-framesize = 131072
#share-connection = 1

Or you can merge above mentioned two groups into one under the group name [message-broker]?

yes, you can merge all configurations above under one [message-broker].

Thank you for your final confirmation!