instead of ack+message-id just -ack message-id

master
Bel LaPointe 2023-02-06 08:10:29 -07:00
parent 839289ea81
commit 4beaa4c387
1 changed files with 11 additions and 16 deletions

27
main.go
View File

@ -23,16 +23,15 @@ import (
)
type Config struct {
AWSA string
AWSU string
AWSP string
AWSR string
Topic string
Message string
REMSWrap bool
MessageID string
Ack bool
Pub bool
AWSA string
AWSU string
AWSP string
AWSR string
Topic string
Message string
REMSWrap bool
Ack string
Pub bool
}
type isoc struct{}
@ -84,9 +83,8 @@ func getConfig() (Config, error) {
flag.StringVar(&c.AWSR, "awsr", "eu-central-1", "aws region")
flag.StringVar(&c.Topic, "topic", "rems-queue-prod-fra1-priority-low", "sns topic/sqs queue")
flag.StringVar(&c.Message, "message", `{"messageType": "NoOpMessage"}`, "published message")
flag.StringVar(&c.MessageID, "message-id", "", "sqs message id to ack")
flag.StringVar(&c.Ack, "ack", "", "sqs message id to ack")
flag.BoolVar(&c.REMSWrap, "rems-wrap", true, "rems wrap message")
flag.BoolVar(&c.Ack, "ack", true, "ack message matching message-id")
flag.BoolVar(&c.Pub, "pub", false, "publish message")
flag.Parse()
@ -148,7 +146,7 @@ func (c Config) Consume(ctx context.Context) error {
wrap.Unwrap([]byte(*message.Body), &v, isoc{})
}
log.Printf("message in queue: %s: %s: %+v", *message.MessageId, *message.Body, v)
if *message.MessageId != c.MessageID {
if *message.MessageId != c.Ack {
if err := c.unack(ctx, message); err != nil {
return err
}
@ -175,9 +173,6 @@ func (c Config) unack(ctx context.Context, message *sqs.Message) error {
}
func (c Config) ack(ctx context.Context, message *sqs.Message) error {
if !c.Ack {
return c.unack(ctx, message)
}
client := sqs.New(session.Must(session.NewSession()), c.awsc())
if _, err := client.DeleteMessageWithContext(ctx, &sqs.DeleteMessageInput{
QueueUrl: aws.String(c.sqsurl()),