Adapter services JSON configuration file

The IMS adapter services are configured in the IMS_Adapter_Config.json file.

The installation configuration JSON file for IMS adapter services contains the following elements:

  • EnvironmentName. Environment where the services will be deployed (such as dev, test, or prod). Make sure that the IMS and Reading database is created with this environment name (ims_<EnvironmentName> and readings_<EnvironmentName>). For example:

    • ims_dev
    • readings_dev

    Note: The environment name should be in lower case. Make sure that the name does not change for any IMS upgrades.

  • CustomerShortName. A short customer name (such as itron or xyz). This is required to configure IMS. Make sure that this name does not change. Always use lower case.

  • InstallationPath. Used by all services to extract the service binaries and run services from this path. For example:

    E:\\HostApps

    Caution: The InstallationPath location should not be a network shared path.

  • AppInsightConnectionString. (Optional) The Microsoft Azure Application Insight connection string used to capture logs. If the connection string is available, assign it as the value for this setting. Otherwise, keep the default value, which is NA. For example:

    NA

  • ServiceAccountUserName. The domain user service account running the IMS services for this account. The user name should use the fully qualified domain name (FQDN) format (for example: IMSAdmin@itron.com or IMSAdmin@subitron.itron.local). This user should have full control access to InstallationPath.

    Note: If the FQDN is subitron.itron.local, then the user name should be UserName@subitron.itron.local. If the FQDN is itron.com, then the user name should be UserName@itron.com. These credentials are used to validate against Active Directory or domain authentication.

  • LoggingType. The logging level for capturing logs for the log file, helpful for troubleshooting. The logging type levels from low to high are as follows: Trace, Debug, Information, Warning, Error, and Fatal. For example:

    Information

  • MessageBrokerConfiguration. The setting to connect the Kafka messaging service. Use the following format: [IP]:[PORT] or [FQDN]:[PORT]. For example:

    10.161.33.09:9092

    or

    Kafka-Server.Itron.com:9092

    Tip: Kafka packages sometimes revert to the machine name even with an IP provided in the config file. To prevent this issue, edit the driver file and add both the IP and the machine name in case the Kafka server is not a domain-joined machine.

  • UserName. The user name to connect to a secure Kafka service. If Kafka is unsecured, this will be NA.

  • DBConnectionString. The setting to connect to the database. The following elements are related:

    • HostName. The database server host name.

    • UserName. The user name to connect to the database.

    • Port. The port on which the database server is running. The default is 5432 for PostgreSQL and 6432 for PgBouncer. Use port 6432.

    Note: The database should be created with names like ims_<EnvironmentName> and readings_<EnvironmentName>, which will be assigned to each service setting. Make sure that during database creation the database name reflects this.

  • Adapters. The following services comprise the Adapters/Transform components:

    [
    "OWCommandsIngressTransform",
    "AMMCommandsEgressTransform",
    "HotReadingsQueryAPI",
    "OWClientReadingsEgressTransform",
    "AMMReadingsIngressTransform",
    "ReadingsStorageService"
    ]

    Note: Remove from this list the services that will not be installed on the server. Make sure that this setting is exactly correct before running the installation to prevent duplicate service installations on multiple systems. The adapters can be installed on multiple servers except HotReadingsQueryAPI and AMMCommandsEgressTransform.

  • AMMCommandsEgressTransform_Settings. Used for AMM Command Egress Transform service settings. The following elements are related:

    • DmsBaseAddress. The DMS base API endpoint used to fetch ESN and MACAddress mapping. For example:

      https://dms.shared-50x-install.eng.ssnsgs.net:7043

      Note: This endpoint should be reachable during the installation of the AMMTransform service. The connectivity will be verifies as part of the pre-check validation during installation.

    • DmsUser.The DMS API endpoint username used for authentication. This is required in the case of a secured DMS endpoint; otherwise, keep as NA.

  • AMMReadingsIngressTransform_Settings. Used for AMM Reading Ingress Transform service settings. The following element is related:

    • EnableEventFilter. Enables or disables the event filter based on event configuration. This filters unnecessary events coming from AMM/UIQ and considers only selected events according to the configuration file. To support this, the EventAlarmMapping configuration CSV file must be provided during installation.

  • OWClientReadingsEgressTransform_Settings. Used for OpenWay Client Readings Egress Transform service settings. The following elements are related:

    • EnableScheduleReads. Enables or disables scheduled reads based on configuration.

    • EnableEvents. Enables or disables events based on configuration.

    • EnableODRReads. Enables or disables ODR reads based on configuration.

  • HotReadingsQueryAPI_Settings. Used for the Hot Reading Streaming API settings. The following elements are related:

    • IdentityUrl.: The Identity URL for Hot Reading Query API to connect for authentication and authorization. For example:

      https://idenservertest2.itrontotaltest.com/

      or

      https://ims-iden.itron.com:10800/

      This should be lower case only as the Identity URL is case sensitive.

    • CertificateThumbprint. The SSL certificate thumbprint (without spaces) for the Hot Reading Query API to expose secure endpoints for external systems. For example:

      13fb7dcadd430df19213b7bbe460d55401606414

    • EnableUnsecure. Set to true if you want to host the service in unsecure mode.

    • ReadingsMetaDataApiUrl. The ReadingsMetaDataAPI service URL for retrieving the destination system's mappings for UOMs, events, and interval or register statuses. This can be captured from the core services installation log, for example:

      [1/23/2024 7:32:29 PM - Information] : Readings Metadata API Service deployed at ReadingsMetaDataApiUrl: https://sdsfd.itron.com:5010

See also the Sample adapter services JSON file.