Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Ability to send data to a local or remote InfluxDB instance via InfluxDB http(s) REST API or InfluxDB Go Client
  • Authenticate the EdgeX node through Basic AuthenticationAuthentication with username/password
  • Create new measurements in InfluxDB
  • Export throughput up to 1,000 events/second from each EdgeX node
  • Local buffering and retry mechanism with resilience to network downtime
  • Local logging of error messages & events through EdgeX Log service

...

Although the best option would be to modify Core Data Service in order to rely on InfluxDB instead of MongoDB, a first step to achieve integration with influx is to modify the existing Export Service in order to enable a new delivery via InfluxDB Go Client or InfluxDB via InfluxDB http(s) REST API or InfluxDB Go Client.

Assumptions

    • There is a 1-to-1 relationship between EdgeX measurements and a . A table to map the datatypes shall be defined.Whenever a new subscription is created through the EdgeX Export Client, the target InfluxDB Database name and Measurement name will be specified
    • There is a 1-to-1 relationship between EdgeX events and PI Tag. A measurements and a tag-field pair. A table to map the datatypes shall be defined.
    • The corresponding PI Tag will have a name that is obtained by concatenating the three following pieces (with "." in between)
      • Tag Prefix as defined in the next section "Step 1 - Configuration"
      • Device Name (as what is specified in EdgeX Metadata - this must be unique)
      • Measurement/Event Name (as per what is specified in EdgeX Metadata - this must be unique within the same device)
    • An example of PI Tag Name will be "deployment001.deviceABC.measurement005"

...