Overview
The ge_historian data receiver connects to and reads data from GE Proficy Historian APIs server.
References:
https://www.ge.com/digital/documentation/historian/version2023/r_managing_tags_apis.html
https://www.ge.com/digital/documentation/historian/version2023/c_interpolation_sampling_modes.html
Example
If we want to retrieve (raw) data from an GE Proficy Historian server at https://111.32.43.2:8081, our configuration will look something like this:
{
"data_receiver": [
{
"connections": [
{
"connection_name": "some_connection_name",
"host": "https://111.32.43.2:8081",
"timeout": 60,
"start_datetime": "2018-08-01T00:00:00Z",
"username": "some_username",
"password": "some_password",
"client_id": "some_client_id",
"client_secret": "some_client_secret"
}
],
"data_receiver_name": "my_ge_receiver",
"poll_interval": 10,
"protocol": "ge_historian",
"streams": [
{
"asset": "BL4",
"tags": [
"ABC.123.TAG_1",
"ABC.123.TAG_2",
"ABC.123.TAG_3",
"ABC.123.TAG_4"
],
"stream_type": "ABC-123-TAG_1"
}
]
}
]
}If we want to retrieve (interpolated) data from an GE Proficy Historian server at https://111.32.43.2:8081, the connection configuration will look something like this:
{
"connections": [
{
"connection_name": "some_connection_name",
"host": "https://111.32.43.2:8081",
"timeout": 60,
"start_datetime": "2018-08-01T00:00:00Z",
"interval_ms": 5000,
"read_data_mode": "interpolated",
"relative_duration": "15s",
"username": "some_username",
"password": "some_password",
"client_id": "some_client_id",
"client_secret": "some_client_secret"
}
],
}Configuration:
Required and optional properties that can be configured for the ge_historian receiver:
data_receiver_name: Unique name of the data receiver. This name will be used to track the progress state of the data stream.protocol: Protocol to be used. Should be set to
ge_historian.connections: How to connect to the GE Historian API Server. A GE Historian API Server connection has the following configurable settings:
Required and optional properties that can be configured for thege_historianconnection:host: Hostname or IP address of the database server with port if applicable. E.g https://10.1.1.1:8081
connection_name: Unique name for the connection.username: Username used along with a password to access the GE Historian API server.
password: Password used along with a username to access the GE Historian API server.
client_id:client_idused along with a client_secret to access the GE Historian API server.client_secret:client_secretused along with aclient_idto access the GE Historian API server.relative_duration: (Required for getting interpolated data, not used for raw data). This will decide theend_datetime. Receiver will fetch data fromstart_datetimetillend_datetimein single call. E.g. Ifstart_datetimeis 2018-08-01T00:00:00Z andrelative_durationis ‘2h’, the api will fetch data from 2018-08-01T00:00:00Z to 2018-08-01T02:00:00Z.
relative_duration supports the following units:s = second(s)
m = minute(s)
h = hour(s)
d = day(s)
interval_ms: Interval defines the time difference between two subsequent data points in milliseconds. (Required for getting interpolated data, not used for raw data).read_data_mode: Sets the type of data that should be retrieved, ‘raw’ and ‘interpolated’ are the only supported modes. (Defaults to raw data mode, the benefit of this over interpolated is that it will only return actual recorded data points, generally resulting in a smaller response payload. The downside is not being able to specify your own data interval).max_count: Maximum number of data points that can be requested in a single call. Default is 5000.timeout: Maximum number of seconds to wait for a response from a GE Historian API server. Default is 180.
start_datetime: Datetime in iso-format E.g. 2018-08-01T00:00:00Z. Receiver will start fetching data from this date. Default is earliest datetime possible.
streams: List of
ge_historiandata streams. Each input stream has the following configurable settings:asset: Asset identifier.
stream_type: Type of data streamtags: List of the tag names to fetch.
poll_interval: The number of seconds to wait between attempts to fetch new data from the GE Historian API Server.