Bosch IoT Asset Communication

2021-09-09 - Bosch IoT Things - service update

Our latest service release comes with various changes:

Connections status details

To easy categorize the cause why a managed connection might not work as expected, we have introduced a “connection status”.

The connection status helps to distinguish between errors that are most probably “customer related” (i.e. in responsibility of the customer) vs. service related problems, which are in the responsibility of our backend. If an error cannot be distinguished, it is classified as “service related” for now.

Further, whenever connections are stuck in a service related failure state, we are alerted and will do best efforts to re-establish such connections.

Examples of customer related failures:

  • authentication errors due to wrong credentials

  • target host not reachable

  • certificate errors

Examples of service related failures:

  • internal required cluster communication failed

  • unknown (no known live status within status aggregation)

  • all other errors that cannot be identified as being caused by wrong usage

The easiest way to look up the newly introduced status is the Connections UI.

images/confluence/download/attachments/1921246153/connection-status.png

You can of course also retrieve the status via Bosch IoT Things HTTP API.
See GET /solutions/{solutionId}/connections/{connectionId}/status

{
"connectionId": "xxx",
"connectionStatus": "open",
"liveStatus": "open",
"clientStatus": [
{
"type": "client",
"client": "connectivity-xxx",
"address": null,
"status": "open",
"statusDetails": "[CONNECTED] Connected at 2021-09-09T11:19:10.459570814Z",
"inStateSince": "2021-09-09T11:19:07.857Z"
}
],
"sourceStatus": [],
"targetStatus": [
{
"type": "target",
"client": "connectivity-xxx",
"address": "Shared.things2di/{{ thing:id }}",
"status": "open",
"statusDetails": "Started at 2021-09-09T11:19:07.879082781Z",
"inStateSince": "2021-09-09T11:19:11.639Z"
}
],
"sshTunnelStatus": [],
"connectedSince": "2021-09-09T11:19:07.857Z"
}

Further changes

  • Minor corrections in this documentation as well as in HTTP API docs

  • Improved resilience of authentication chain

  • Security relates changes

    • Strict Transport Security (HSTS) configuration

    • Check usage of x-forwarded-host & x-original-uri

  • Improved Azure deployment

  • Removed all references to the Bosch IoT Permissions service, which is retired

  • Introduced basic tracing

At this occasion, various minor bugs have also been fixed.