Relay status workflow
Overview
Devo Relay contains a mechanism that keeps the relay status in sync between the relay machine and the Devo application. The relay status can be checked both from the Devo app and from the relay machine using the CLI command.
Relay statuses
Devo Relay can be in any of the following statuses. After accessing the Devo app, Admin users can check the relay list of the domain and their status in Administration → Relays and ELBs → Relays.
Status | Description |
---|---|
Pending | The setup process is completed but the validation from the web app is still pending. Click the Activate button in the ellipsis menu of the relay to activate it. Learn how to set up a new relay and validate it on the app in Set up your relay. |
Applying config | The system is applying changes to the relay configuration. New relays will keep this status for a few minutes after being activated on the Devo app. |
Active | The relay is active and working correctly. |
Healthcheck failed | The relay health-check process failed to send data to Devo and read it afterwards. Please make sure that your relay fits the network requirements. |
Inactive | The certificate of the relay has been revoked. In the Devo app, you can do this in Administration → Relays and ELBs → Relays, by clicking the ellipsis menu in a relay row and selecting Deactivate. |
Stopped | The relay process is stopped. |
Deleted | The relay is deleted and will no longer appear on the Devo app relay list. |
The following diagram summarizes the relay status workflow and the actions required to move through the different statuses:
Automatic processes that affect the relay status
Some of the processes that affect the relay status are the following:
Config updater
The Config updater process checks every 2 minutes if the relay config has been updated in the Devo application. In case it has, it downloads the new configuration to the relay machine and applies the changes. The relay status will change accordingly.
Relay health-checker
The health-checker thread will move the relay from status Active and Error. This thread is running every 1 minute and it sends data to the table syslog.relay.monitor
and tries to retrieve it using the Query API. After 3 failed attempts, the relay status will be moved to Error. It will go back to Active after the first successful attempt.