Вывод значений чтения из DynamoDB - PullRequest
0 голосов
/ 08 октября 2018

Мой код читает таблицу DynamoDB с заданной меткой времени (которая является ключом для таблицы DynamoDB).Затем я пытаюсь распечатать конкретный столбец / данные в консоли.Но выводится как «Не определено».

Проблема: Консоль отображает «dataget.VALUEMAX» как неопределенное, но «event.VALUEMAX» с правильным значением.Я не могу найти, что я делаю неправильно с набором данных.

Журнал:

Received dataget: {
  "Item": {
    "TimeStamp": timestamp,
    "VALUEMIN": 101,
    "VALUEMAX": 500
  }
}
VALUEMAX undefined
VALUEMAX 500

Мой код:

    console.log('Loading function');
    var AWS = require('aws-sdk');
    var dynamo = new AWS.DynamoDB.DocumentClient();
    var table = "TABLE";

    exports.handler = function(event, context) {
        console.log('Received event:', JSON.stringify(event, null, 2));

    var TimeStamp = String(Math.round(Date.now() / 60000) * 60000);
    console.log("TimeStamp: ", TimeStamp);


    //READ EXISTING VALUES IN DB AT TIMESTAMP   

              var paramsget = {
                TableName:table,
                    Key:{TimeStamp": TimeStamp},
                            };
             dynamo.get(paramsget, function(err, dataget) {
               if (err) console.log(err, err.stack); // an error occurred
               else    console.log('Received dataget:', JSON.stringify(dataget, null, 2))
                       console.log("VALUEMAX", dataget.VALUEMAX);
                       console.log("VALUEMAX", event.VALUEMAX);
             }

    //END READ EXISTING VALUES IN DB AT TIMESTAMP 


   //ADD EVENT TO DB
        var params = {
        TableName:table,
        Item:{
            "VALUEID": event.VALUEID,
            "VALUEMAX": event.VALUEMAX,
            "VALUEMIN": event.VALUEMIN,
            "TimeStamp": TimeStamp
        }    
                    };

        console.log("Adding...");
        dynamo.put(params, function(err, data) {
            if (err) {
                console.error("Unable to add. Error JSON:", JSON.stringify(err, null, 2));
                context.fail();
            } else {
                console.log("Added:", JSON.stringify(data, null, 2));
                context.succeed();

                        }
        });


    };

1 Ответ

0 голосов
/ 08 октября 2018

Изменить это: console.log("VALUEMAX", dataget.VALUEMAX);

На это: console.log("VALUEMAX", dataget.Item.VALUEMAX);

...