DDS Event Source (offline soon)

For the use of DDS triggers, please refer to Using a DDS Trigger.

DDS example event

{
  "records": [
    {
      "event_source": "dds",
      "event_name": "insert",
      "region": "region",
      "event_version": "1.0",
      "dds": {
        "size_bytes": "100",
        "token": "{\"_data\": \"825D8C2F4D0000001529295A100474039A3412A64BA89041DC952357FB4446645F696400645D8C2F8E5BECCB6CF5370D6A0004\"}",
        "full_document": "{\"_id\": {\"$oid\": \"5d8c2f8e5beccb6cf5370d6a\"},\"name\": \"dds\",\"age\": {\"$numberDouble\": \"52.0\"}}",
        "ns": "{\"db\": \"functiongraph\",\"coll\": \"person\"}"
      },
      "event_source_id": "e6065860-f7b8-4cca-80bd-24ef2a3bb748"
    }
  ]
}

Parameter description

Parameter

Type

Description

event_source

String

event_name

String

region

String

event_version

String

size_bytes

String

token

JSON String

full_document

JSON String

ns

JSON String

event_source_id

String

For full description of all parameters see DDS Event Reference.

Example

const { DDSEvent } = require("@opentelekomcloud-community/fg-dds-event");

exports.initializer = function (context, callback) {
  const logger = context.getLogger();
  logger.info("Function initialized");
  callback(null, "");
};

exports.handler = async function (event, context) {
  const logger = context.getLogger();

  logger.info("Function Name:", context.getFunctionName());

  const ddsEvent = new DDSEvent(event);

  const records = ddsEvent.getRecords();
  logger.info("DDS Event- Number of records:", records.length);

  records.forEach((record, index) => {
    logger.info(`DDS Event- Record ${index + 1}:`, record);
  });


  return "OK";
};