我有一个 SQS 队列,它使用 eventbridge 管道为 FIFO 队列提供数据。管道从有效负载中获取一个值,然后使用 JSONpath 表达式将其添加到 MessageGroupID。
import { SqsTarget } from '@aws-cdk/aws-pipes-targets-alpha';
import { SqsSource } from '@aws-cdk/aws-pipes-sources-alpha';
import * as pipes from '@aws-cdk/aws-pipes-alpha';
const pipe = new pipes.Pipe(
this,
'pipe-name'),
{
source: new SqsSource(sourceQueueSQS),
target: new SqsTarget(targetFifoQueue, {
messageGroupId: '$.body.detail.some.value.used.as.id',
}),
role: pipeRole,
pipeName: 'pipe-name',
},
);
这很棒,确实按预期添加了 messageGroupID,但由于某种原因,它用另一个正文包装了消息正文。
我不确定为什么它会改变身体,有人可以帮忙吗?
您的问题是为什么 Pipes 在 SQS 消息周围添加特定于 Pipes 的信封而不是原始传递?