Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ Adapter for Structured Data Files

Sample JSON files

  • Last UpdatedMay 19, 2026
  • 2 minute read

This section provides three example configurations to help you get started with the Structured Data Files adapter. The basic example illustrates the smallest set of required settings for basic operation, the recommended example adds commonly used options for reliability and consistency, and the full example demonstrates the complete configuration for advanced scenarios and reference purposes.

Basic Structured Data Files JSON configuration

This minimal example illustrates the smallest configuration required to run the Structured Data Files adapter. This example includes only required fields. It reads CSV files from an input directory, maps a single value and timestamp to a stream, and sends the data to an OMF endpoint.

{

"System": {

"Components": [

{

"componentId": "SDF1",

"componentType": "StructuredDataFiles"

},

{

"componentId": "OmfEgress",

"componentType": "OmfEgress"

}

]

},

"SDF1": {

"DataSource": {

"inputDirectory": "/mnt/input",

"outputDirectory": "/mnt/output",

"format": "Csv",

"hasHeader": true,

"fieldSeparator": ","

},

"DataSelection": [

{

"valueField": "Value",

"indexField": "Timestamp",

"dataType": "float64",

"selected": true,

"streamId": "Value"

}

]

},

"OmfEgress": {

"DataEndpoints": [

{

"id": "DataHub",

"endpoint": "https://<datahub-endpoint>/api/v1/tenants/<tenantId>/namespaces/<namespaceId>/omf",

"clientId": "<clientId>",

"clientSecret": "{{Secret1}}"

}

]

}

}

This recommended example builds on the minimal configuration by adding commonly used settings for logging, buffering, and time handling. It reflects a typical production setup, improving reliability, data consistency, and stream naming.

{

"System": {

"Logging": {

"logLevel": "Information"

},

"Components": [

{

"componentId": "SDF1",

"componentType": "StructuredDataFiles"

},

{

"componentId": "OmfEgress",

"componentType": "OmfEgress"

}

],

"Buffering": {

"bufferLocation": "/usr/share/OSIsoft/Adapters/SDF/Buffers",

"maxBufferSizeMB": 512,

"enablePersistentBuffering": true

}

},

"SDF1": {

"Logging": {

"logLevel": "Information"

},

"DataSource": {

"inputDirectory": "/mnt/input",

"outputDirectory": "/mnt/output",

"format": "Csv",

"hasHeader": true,

"fieldSeparator": ",",

"encoding": "UTF8",

"culture": "en-US",

"timeZone": "UTC",

"streamIdPrefix": "sdf"

},

"DataSelection": [

{

"valueField": "Value",

"indexField": "Timestamp",

"indexFormat": "yyyy-MM-ddTHH:mm:ssZ",

"dataType": "float64",

"selected": true,

"streamId": "sdf.Value"

}

]

},

"OmfEgress": {

"Logging": {

"logLevel": "Information"

},

"DataEndpoints": [

{

"id": "DataHub",

"endpoint": "https://<datahub-endpoint>/api/v1/tenants/<tenantId>/namespaces/<namespaceId>/omf",

"clientId": "<clientId>",

"clientSecret": "{{Secret1}}"

}

]

}

}

Full Structured Data Files JSON configuration

This recommended example builds on the minimal configuration by adding commonly used settings for logging, buffering, and time handling. It reflects a typical production setup, improving reliability, data consistency, and stream naming without introducing advanced or rarely used options.

{

"System": {

"Logging": {

"logLevel": "Information",

"logFileSizeLimitBytes": 34636833,

"logFileCountLimit": 31

},

"HealthEndpoints": [

{

"id": "DataHub-Health",

"endpoint": "https://<datahub-endpoint>/api/v1/tenants/<tenantId>/namespaces/<namespaceId>/omf",

"clientId": "<clientId>",

"clientSecret": "{{Secret1}}"

}

],

"Components": [

{

"componentId": "SDF1",

"componentType": "StructuredDataFiles"

},

{

"componentId": "OmfEgress",

"componentType": "OmfEgress"

}

],

"Buffering": {

"bufferLocation": "/usr/share/OSIsoft/Adapters/SDF/Buffers",

"maxBufferSizeMB": 1024,

"enablePersistentBuffering": true

},

"General": {

"enableDiagnostics": true,

"metadataLevel": "Medium",

"healthPrefix": null

}

},

"SDF1": {

"Logging": {

"logLevel": "Information",

"logFileSizeLimitBytes": 34636833,

"logFileCountLimit": 31

},

"DataSource": {

"friendlyName": "SDFAdapter",

"inputDirectory": "/mnt/input",

"outputDirectory": "/mnt/output",

"fileNameFilter": null,

"purgeDelay": "10:00:00",

"discoveryDirectory": null,

"format": "Csv",

"hasHeader": true,

"compression": "None",

"encoding": "UTF8",

"fieldSeparator": ",",

"culture": "en-US",

"timeZone": "UTC",

"streamIdPrefix": "sdf",

"defaultStreamIdPattern": null

},

"DataSelection": [

{

"valueField": "Value",

"dataFields": null,

"indexField": "Timestamp",

"indexFormat": "yyyy-MM-ddTHH:mm:ssZ",

"dataType": "float64",

"selected": true,

"selectionCriteria": null,

"streamId": "sdf.Value",

"uom": null,

"dataFilterId": null

}

]

},

"OmfEgress": {

"Logging": {

"logLevel": "Information",

"logFileSizeLimitBytes": 34636833,

"logFileCountLimit": 31

},

"DataEndpoints": [

{

"id": "DataHub",

"endpoint": "https://<datahub-endpoint>/api/v1/tenants/<tenantId>/namespaces/<namespaceId>/omf",

"clientId": "<clientId>",

"clientSecret": "{{Secret1}}"

}

]

}

}

In This Topic
Related Links
TitleResults for “How to create a CRG?”Also Available in