Historian Profile Config

Ignition 8.3 RC1

I’m trying to create a custom historian provider.

Where can I find the historian profile config?

ExtensionPointResourceForm form = new ExtensionPointResourceForm(
       HistorianExtensionPoint.getResourceType(),
        "Historian",
        TYPE_ID,
        SchemaUtil.fromType(####.class),
        SchemaUtil.fromType(SimulatorHistorianSettings.class),
        Collections.emptySet()
);

In the Create Historian popup, my custom historian is not selectable and when I click Next, it gives an application error.

1 Like

These should be all the steps necessary.

  1. Make sure that your module is supplying your SimulatorExtensionPoint through GatewayModuleHook::getExtensionPoints.
  2. Verify that your SimulatorExtensionPoint is an extension of HistorianExtensionPoint<S extends HistorianSettings>. HistorianSettings is just a marker; this would be your Historian configuration. So, SimulatorHistorianSettings need to be an extension of HistorianSettings.
public class SimulatorExtensionPoint extends HistorianExtensionPoint<SimulatorHistorianSettings> 

// Then, `SimulatorHistorian::getSettings` would return the instance of SimulatorHistorianSettings as configured. 

  1. In your SimulatorExtensionPoint , override getWebUiComponent; this would look something like below:
@Override
public Optional<WebUiComponent> getWebUiComponent(ComponentType type) {
    return Optional.of(
        new ExtensionPointResourceForm(
            HistorianExtensionPoint.getResourceType(),
            "Historian",
            TYPE_ID, // this would your CustomSimulatorExtensionPoint typeId
            SchemaUtil.fromType(HistorianProvider.class),
            SchemaUtil.fromType(SimulatorHistorianSettings.class)
        )
    );
}

I'm guessing that there's an issue with your SimulatorExtensionPoint, or SchemaUtil.fromType(####.class) wasn't actually SchemaUtil.fromType(HistorianProvider.class) as it needs to be.

I’ve added the HistorianProvider.class

Still getting the error though.

react-dom.js:121 TypeError: Cannot read properties of undefined (reading 'backupConfig')
at useMountExtensionPointForm.ts:38:40
at Id (react-dom.js:165:137)
at Xb (react-dom.js:200:284)
at Sk (react-dom.js:198:114)
at yb (react-dom.js:196:166)
at Mi (react-dom.js:189:373)
at db (react-dom.js:79:182)
at react-dom.js:184:289

@Override
public List<? extends ExtensionPoint<?>> getExtensionPoints() {
    SimulatorHistorianExtensionPoint sep = new SimulatorHistorianExtensionPoint();
    
    return List.of(sep);
}

Thank you for bringing this to our attention, Jae.

We have confirmed this is a bug related to how default values are handled within the extension point resource form on the Historian page.

Currently, we're targeting this for the upcoming final release, but if it doesn't make that deadline, then it will be included in 8.3.1. I will update you on our progress.