Microsoft ACI - Backend Maintenance

Support DQE
Support DQE

1. Application Maintenance

1.1 Why Performing Maintenance Operations

This application is built to be resilient and does not require frequent maintenance. However, in some situations you may need to restart the stack to apply a new version or recover from an error state.

For instance, if data processing fails, temporary files may accumulate in the Redis or RabbitMQ volumes. Restarting the Container Group clears the in-memory state and resets the queue.

/!\ Note: This section covers ACI-level maintenance only. Network or firewall configuration specific to your organization is outside the scope of this document.

1.2 When Should You Operate

1.2.1 Data Processes Failed

The first signal that your application needs attention is when data processes launched from Dynamics 365 show a status of "Failed". Before acting, check the error description to rule out issues in your deduplication rules or other integrations.

If the error points to the server itself, proceed to § 3.3 – How to Proceed.

1.2.2 Data Processes Pending

If the job queue is stuck on the same message and blocking data processes, clear the RabbitMQ volume and restart the Container Group.

  1. Step 1 — Delete the RabbitMQ file share content:

    az storage file delete-batch \
      --account-name dqeunifystorage \
      --source rabbitvol
  2. Step 2 — Restart the Container Group:

    az container restart \
      --resource-group <resource-group> \
      --name dqe-unify

1.3 How to Proceed

1.3.1 Step 1 – Get the Logs

Logs are managed by ACI. Use the Azure CLI to retrieve them.

View logs for the Unify Server:

az container logs \
  --resource-group <resource-group> \
  --name dqe-unify \
  --container-name unify-server

View logs for the Queue Worker:

az container logs \
  --resource-group <resource-group> \
  --name dqe-unify \
  --container-name queue-worker

Follow logs in real time:

az container logs \
  --resource-group <resource-group> \
  --name dqe-unify \
  --container-name unify-server \
  --follow

1.3.2 Step 2 – Rebuild / Update the Application

To deploy a newer image version, delete the Container Group and redeploy from the updated YAML.

  1. Step 1 — Delete the existing Container Group:

    az container delete \
      --resource-group <resource-group> \
      --name dqe-unify \
      --yes
  2. Step 2 — (Optional) Clear the persistent volumes if needed:

    az storage file delete-batch --account-name dqeunifystorage --source redisvol
    az storage file delete-batch --account-name dqeunifystorage --source rabbitvol
  3. Step 3 — Redeploy with the updated YAML:

    az container create \
      --resource-group <resource-group> \
      --file container-group.yaml

1.3.3 Step 3 – Restart

For a simple restart without redeployment:

az container restart \
  --resource-group <resource-group> \
  --name dqe-unify

Monitor the restart:

az container show \
  --resource-group <resource-group> \
  --name dqe-unify \
  --query "containers[].{Name:name, State:instanceView.currentState.state}" \
  -o table

All containers should reach the state Running. If a container shows Terminated or remains stuck, check its logs and contact DQE Software support if the issue cannot be resolved.

Related to

Was this article helpful?

0 out of 0 found this helpful