Wie bekomme ich den reinen Json-String aus DynamoDB, um ein neues Image zu streamen?
Ich habe eine Dynamodb-Tabelle mit aktiviertem Streaming. Außerdem habe ich für diese Tabelle einen Trigger erstellt, der eine AWS-Lambda-Funktion aufruft. In dieser Lambda-Funktion versuche ich, das neue Image (Dynamodb-Element nach der Änderung) aus dem Dynamodb-Stream zu lesen und den reinen Json-String daraus zu ziehen. Meine Frage ist, wie kann ich den reinen JSON-String des DynamoDB-Elements erhalten, der über den Stream gesendet wurde? Ich verwende das unten angegebene Code-Snippet, um das neue Image zu erhalten, aber ich habe keine Ahnung, wie ich die JSON-Zeichenfolge daraus entfernen kann. Schätze deine Hilfe
public class LambdaFunctionHandler implements RequestHandler<DynamodbEvent, Object> {
@Override
public Object handleRequest(DynamodbEvent input, Context context) {
context.getLogger().log("Input: " + input);
for (DynamodbStreamRecord record : input.getRecords()){
context.getLogger().log(record.getEventID());
context.getLogger().log(record.getEventName());
context.getLogger().log(record.getDynamodb().toString());
Map<String,AttributeValue> currentRecord = record.getDynamodb().getNewImage();
//how to get the pure json string of the new image
//..............................................
}
return "Successfully processed " + input.getRecords().size() + " records.";
}
}