Skip to content

The Historian Multi Module

Historian Multi provides a single client that can query multiple historians in one request. It is the recommended historian interface.

  • Queries current values across one or more historians
  • Retrieves interpolated points or ranges
  • Retrieves raw datapoints and closest raw points
  • Writes data points to one or more tags

Use get_historian_multi() to create a client:

from eigeningenuity import get_historian_multi, EigenServer
ei = EigenServer("https://demo.eigen.co/")
hm = get_historian_multi(default_historian="Demo-influxdb", eigenserver=ei)
values = hm.getCurrentDataPoints(["DEMO_02TI301.PV", "DEMO_02TI201.PV"])
range_points = hm.getInterpolatedRange(
"DEMO_02TI301.PV",
"01/01/2024 00:00:00",
"01/01/2024 12:00:00",
100,
)
raw_points = hm.getRawDatapoints(
"DEMO_02TI301.PV",
"01/01/2024 00:00:00",
"01/01/2024 12:00:00",
)

Most calls support:

  • json (default)
  • df (pandas DataFrame)
  • raw (full API response)

For secured environments, configure Azure auth before creating the client. See Authentication.