【以下的问题经过翻译处理】 我有一些信息,看起来像这样:
{
"measurement":"observation",
"timestamp":"2022-03-08T18:04:48.389Z",
"fields": {
"rms0": 0.22936178743839264,
"max0": 0.22936178743839264,
"rms1": 0.2076568752527237,
"max1": 0.2076568752527237,
"rms2": 0.20974993705749512,
"max2": 0.20974993705749512
},
"tags": {
"bucket":"powermon",
"address":"CA64"
}
}
我使用基本输入方法将它们发送到此主题:
$aws/rules/PowerMonRule
我向该规则添加了三个操作。其中一个是将消息写入云监控日志,用于正常和错误条件。第二个规则尝试将数据写入SiteWise。这是我遇到问题的地方。实际上没有数据出现,我不太确定如何找出原因。我现在正在记录规则产生的内容;是否有一种方法可以记录进入SiteWise时发生的情况,以便我可以弄清楚SiteWise正在处理数据的情况?
我的时间戳使用ISO样式格式,因此对于我编写的每个属性,我都要对转换进行重复。我通过编写写入Timestream的IoT规则来进行测试,这按预期工作,因此我认为它也应该在这里工作。出于相同的原因,我认为选择*然后引用值${fields.rms0}
应该可以正常工作。
我的模型有以下测量值:
{
"id": "5fd1be48-f8ab-44a1-9d93-2c8102f80e02",
"name": "Irms0",
"dataType": "DOUBLE",
"unit": "Amp",
"type": {
"measurement":
}
},
{
"id": "085dfa46-3b8a-47a2-b325-1d211b33a6f4",
"name": "Irms1",
"dataType": "DOUBLE",
"unit": "Amp",
"type": {
"measurement": {}
}
},
{
"id": "1ec8a6c6-a9cc-4bde-9ae5-4394b09914c8",
"name": "Irms2",
"dataType": "DOUBLE",
"unit": "Amp",
"type": {
"measurement": {}
}
}
所以我所做的是使用以下操作去設置了一個警報規則。它的功能是提取消息(規則只是SELECT *),並從中提取出三個字段,這些字段存儲在與上述匹配的屬性中。目前,該規則被設置為將數據寫入一個特定的、硬編碼的資產ID中,而屬性ID則從模型中提取。
{
"iotSiteWise": {
"putAssetPropertyValueEntries": [
{
"assetId": "e6739e7d-248e-47cd-ba53-bf369126d482",
"propertyId": "5fd1be48-f8ab-44a1-9d93-2c8102f80e02",
"propertyValues": [
{
"value": {
"doubleValue": "${fields.rms0}"
},
"timestamp": {
"timeInSeconds": "${time_to_epoch(ts,"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")}"
}
}
]
},
{
"assetId": "e6739e7d-248e-47cd-ba53-bf369126d482",
"propertyId": "085dfa46-3b8a-47a2-b325-1d211b33a6f4",
"propertyValues": [
{
"value": {
"doubleValue": "${fields.rms1}"
},
"timestamp": {
"timeInSeconds": "${time_to_epoch(ts,"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")}"
}
}
]
},
{
"assetId": "e6739e7d-248e-47cd-ba53-bf369126d482",
"propertyId": "1ec8a6c6-a9cc-4bde-9ae5-4394b09914c8",
"propertyValues": [
{
"value": {
"doubleValue": "${fields.rms2}"
},
"timestamp": {
"timeInSeconds": "${time_to_epoch(ts,"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")}"
}
}
]
}
]
}
}