Configuration Options¶
You can generally deploy a ux4iot without specifying any parameters, except for the iotHubEventHubConnectionString. This is because we provide default values for all other configuration variables. However we highly recommend setting a serverVersion. Without it you will deploy the latest code version which is basically a version of a single commit. You will use a development version of ux4iot then.
The configuration options are somewhat ordered by priority. You will need the last ones the least amount of time. We recommend to deploy a ux4iot service with at least the following configuration variables:
- serverVersion
- iotHubEventHubConnectionString
- iotHubServiceConnectionString
- eventHubConsumerGroup
- sku
| Bicep / ARM Parameter | Default Value | Description | Allowed Values | type |
|---|---|---|---|---|
| serverVersion | latest | ux4iot docker image version to deploy | infra | |
| iotHubEventHubConnectionString | The connection string of the EventHub that publishes data you want to subscribe to | server | ||
| iotHubServiceConnectionString | "" | The service connection string of the IoTHub you want to access for devices. You need to pick a connection string that includes the policies "Registry Read" and "Service Connect" | server | |
| eventHubConsumerGroup | $Default | The consumer group of the EventHub that publishes data you want to subscribe to | server | |
| sku | standard | The scaling tier of ux4iot. Influences cpu and memory of ux4iot and redis containers within the container app. Standard: cpu cores redis: 0.5 memory redis: 1Gi cpu cores ux4iot: 1.0 memory ux4iot: 2Gi Small: cpu cores redis: 0.25 memory redis: 0.5Gi cpu cores ux4iot: 0.5 memory ux4iot: 1Gi | standard | small | infra |
| throttlingInterval | -1 | Throttle time to delay messages put on the websocket for consumers in milliseconds. | server | |
| connectionStateCacheTTL | 60 | Time in seconds how long a connection state update is persisted in the internal ux4iot cache, in seconds. Set to -1 or 0 set the lifetime to infinity. | server | |
| customTimestampKey | _ts | Custom object key of a message to look for the timestamp | server | |
| customDeviceIdKey | deviceId | Custom object key of a message to look for the deviceId | server | |
| customConnectionStateKey | "" | Custom object key of a message to look for the connectionState. | server | |
| connectionStateOnTelemetry | true | Flag on whether the connection state of a device should be updated whenever a telemetry message for that device is received. | true | false | server |
| logLevel | info | Sets the initial log level of ux4iot | error | warn | info | verbose | debug | server |
| location | resourceGroup().location | The location where all resources of ux4iot should be deployed | infra | |
| logAnalyticsTracesTableTier | Analytics | Tier of the log analytics traces table. You can only change this value once a week, as dictated by microsoft. Basic Tier will give you less options when querying for logs, but is cheaper. Also the retention time will be set to 7 days instead of 90. | Basic | Analytics | infra |
| redisVersion | 1.2.0 | redis docker image version to deploy | infra | |
| skipCustomResource | false | Skips deployment of the internal function app for the custom resource provider | true | false | infra |
| skipKeyVaultContents | false | Skips deployment of key vault secrets, which leads to the update of the iotHubServiceConnectionStringSecret, iotHubEventHubConnectionStringSecret, storageAccountConnectionStringSecret, backendFuncTriggerUrlSecret | true | false | infra |
| primaryAdminSecret | "" | Primary Shared Access Key of the Ux4iot | infra | |
| secondaryAdminSecret | "" | Secondary Shared Access Key of the Ux4iot | infra |