diff --git a/cmd/dump.go b/cmd/dump.go index fb7b400..07be4ee 100644 --- a/cmd/dump.go +++ b/cmd/dump.go @@ -46,18 +46,17 @@ Messages can be captured from an AMQP or AMQPS RabbitMQ server, with flexible TL GroupID: "available-commands", RunE: func(cmd *cobra.Command, args []string) error { cfg := config.New( - config.WithRabbitMQURL(fmt.Sprintf("%s://%s/%s", getProtocol(), viper.GetString("url"), viper.GetString("virtualhost"))), config.WithExchange(viper.GetString("exchange")), - config.WithQueue(queue), config.WithOutputFile(viper.GetString("output")), config.WithUseAMQPS(viper.GetBool("amqps")), config.WithVirtualHost(viper.GetString("virtualhost")), config.WithSkipTLSVerification(viper.GetBool("skip-tls-verify")), - config.WithAutoAck(viper.GetBool("auto-ack")), config.WithFileMode(viper.GetString("file-mode")), - config.WithStopAfterConsume(viper.GetBool("stop-after-consume")), config.WithPrettyPrint(viper.GetBool("pretty-print")), + config.WithQueue(queue), + config.WithStopAfterConsume(stopAfterConsume), + config.WithAutoAck(autoAck), ) return app.Dump(cfg) diff --git a/internal/app.go b/internal/app.go index b368b6c..a155c04 100644 --- a/internal/app.go +++ b/internal/app.go @@ -116,6 +116,11 @@ func bindQueueToRoutingKeys(consumer *rmq.Consumer, queueName string, routingKey // Helper function to process messages func processMessages(msgs <-chan rmq.Message, writer *filewriter.Writer, msgCount int, stopAfterConsume bool) error { + if msgCount == 0 && stopAfterConsume { + color.Yellow("No messages to consume. Exiting.") + return nil + } + consumedCount := 0 blue := color.New(color.FgBlue)