如何在规则引擎表达式中使用AWS IoT消息有效负载来生成PartitionKey

时间:2018-11-22 00:58:10

标签: amazon-web-services expression partitioning amazon-kinesis aws-iot

问题上下文: 使用AWS Rule Engine连接到Kinesis Data Stream(KDS)的AWS IoT,Rule Engine规则定义中有PartitionKey选项。可以使用诸如“ $ {topic()}”之类的表达式填充PartionKey。邮件有效负载示例是

{
    Id:"123"
    GS:"123"
}

问题: 如何定义使用有效负载的表达式,例如“ part $ {payload()。GS}”

1 个答案:

答案 0 :(得分:1)

您可以使用substitution template进行此操作。

例如:

{
    "rule": {
        "sql": "SELECT * FROM 'some/topic'", 
        "ruleDisabled": false, 
        "actions": [{
            "kinesis": {
                "roleArn": "arn:aws:iam::123456789012:role/aws_iot_kinesis", 
                "streamName": "my_kinesis_stream", 
                "partitionKey": "${GS}"
            }
        }], 
    }
}