Skip to content
Swiss federal authorities

Monitoring

Monitoring page🔗

The sedex-Client’s monitoring page provides information about the sedex-Client’s current operational state. This page can be used by the system engineers to monitor the sedex-Client.

The monitoring page can be accessed in two ways:

  1. Via the network using HTTPS (or HTTP for older installations)

    The sedex-Client exposes the monitoring page via a network port which is configurable. See the configuration file of an installation to determine the port in use. Default value is 9443.

    Monitoring URL: https://<HOST>:<MONITORING_HTTPS_PORT>/monitoring

    Example: https://localhost:9443/monitoring

  2. Via the file system

    The sedex-Client exposes the monitoring page via a text file in the file system which is configurable. See the configuration file of the installation to determine where the monitoring page is written to.

    Default value is:

    • OS-based installations: <sedex_home>\monitoring\monitoring.txt

    • Docker-based installations: <sedex-data>/monitoring/monitoring.txt

Example of the sedex-Client’s monitoring page:

#####################################
### sedex client monitoring       ###
### Status at 2025-09-24T16:46:29 ###
#####################################
adapter-uptime=00:00:52
adapter-version=Adapter 8.0.X
adapter-sedexId=1-123-1
adapter-profile=small
adapter-organisationCertificateExpirationDate=2027-06-03T13:18:15
adapter-interfaceFoldersPresent=OK
adapter-moveToWorkingFolder=OK
adapter-connectionToSedexServer=OK
adapter-lastConnectionCheck=2025-09-24T16:45:33
adapter-writeAccessToDatabase=OK
adapter-incoming-message-interface-default=file-system
adapter-incoming-message-interface-number-of-rules-via-file-system=0
adapter-incoming-message-interface-number-of-rules-via-rest-api=0
adapter-incoming-message-interface-number-of-rules-with-errors=0
adapter-messaging-rest-api-number-of-messages-in-virtual-inboxes-in-total=0
adapter-messaging-rest-api-interface-enabled=true
adapter-messaging-encryption-in-client-filesystem-enabled=true
wsproxy-https-address=0.0.0.0
wsproxy-https-port=8443
wsproxy-https-tls-certificate-subject=CN=sedex-wsproxy, O=sedex (www.sedex.ch)
wsproxy-https-tls-certificate-issuer=CN=sedex-wsproxy, O=sedex (www.sedex.ch)
wsproxy-https-tls-certificate-create-date=2025-09-24T16:45:31
wsproxy-https-tls-certificate-expiry-date=2030-09-23T16:45:31
wsproxy-https-tls-certificate-alternative-names=ip6-localhost,localhost,ubuntu
wsproxy-https-tls-certificate-is-valid=true
wsproxy-http-disabled=true
wsproxy-http-address=0.0.0.0
wsproxy-http-port=
wsproxy-uptime=00:00:53
wsproxy-users-allow-anonymous=false
wsproxy-user-configuration-number-error=0
wsproxy-user-configuration-number-ok=0
wsproxy-user-configuration-processed-at=2025-09-24T16:45:34
wsproxy-version=WsProxy 8.0.X
wsproxy-webservice-definitions-updated-at=2025-09-24T16:45:27
wsproxy-webservice-definitions-expires-at=2025-10-01T16:45:27
wsproxy-webservice-definitions-update-status=OK
wsproxy-webservice-definitions-update-info=Updated successfully
wsproxy-webservice-definitions-valid=true
wsproxy-webservice-last-call=
monitoring.https.tls-certificate.alternative-names=ip6-localhost,localhost,ubuntu
monitoring.https.tls-certificate.create-date=2025-09-24T16:45:24
monitoring.https.tls-certificate.expiry-date=2030-09-23T16:45:24
monitoring.https.tls-certificate.issuer=CN=sedex-monitoring, O=sedex (www.sedex.ch)
monitoring.https.tls-certificate.is-valid=true
monitoring.https.tls-certificate.subject=CN=sedex-monitoring, O=sedex (www.sedex.ch)
controller-uptime=00:01:04
controller-version=Controller 8.0.X
controller-updateCertificateExpirationDate=2027-05-14T10:38:26
client-version=sedex-Client 8.0.X
monitor-lastCheckUp=2025-09-24T16:46:28
#####################################
### WSProxy                       ###
### Webservice configuration      ###
#####################################
wsproxy-webservice-CheckSedexWebService-address-http=http://localhost:8080/wsproxy/services/CheckSedexWebService
wsproxy-webservice-CheckSedexWebService-address-https=https://localhost:8443/wsproxy/services/CheckSedexWebService
wsproxy-webservice-CheckSedexWebService-users=anonymous, authenticated
wsproxy-webservice-CheckSedexWebService-target=https://sedex-service.admin.ch:443/sedex-clientServices-ws/CheckSedexWebService
[..]

Tips on how to use the Monitoring page:

  • Include regular automatic checks of the monitoring page in your automatic monitoring tool like Nagios, Icinga, Zabbix, etc.
  • The monitoring page is regenerated every 5 minutes by the sedex-Client. The creation date is contained in both the header of the page and in the following key: monitor-lastCheckUp=2025-09-24T16:46:28
  • Before evaluating specific keys on this page, make sure that the page is up-to-date by making sure that the value of the key monitor-lastCheckUp is not older than e.g. 6 minutes.
  • It is recommended to include at least the following automatic checks in your monitoring:

    • adapter-connectionToSedexServer=OK

      → the sedex-Client can connect to the sedex server

    • adapter-uptime=00:06:01

      → the sedex Adapter component (messaging) is running

    • wsproxy-uptime=00:05:55

      → the optional sedex Web Service Proxy is running

    • wsproxy-webservice-definitions-update-status=OK

      → the optional sedex Web Service Proxy can update its configuration

  • Depending on the situation it may be useful to check further keys/values.

Monitoring the state of the Windows service / daemon🔗

The sedex-Client’s processes can be monitored or controlled at the operating system level, like any other Windows service or daemon in Linux.

Once a sedex-Client has been installed as a service, it can be monitored and controlled via the Windows Service Manager, systemd, or System V Init (Start, Stop, etc.).

Monitoring Status via Docker Health State (Docker only)🔗

The basic status of the container can be checked via standard Docker container health mechanisms.

$ docker inspect sedex-client

       [...]
       "State": {
            "Status": "running",
            "Running": true,
            "Paused": false,
            "Restarting": false,
            "OOMKilled": false,
            "Dead": false,
            "Pid": 4804,
            "ExitCode": 0,
            "Error": "",
            "StartedAt": "2025-09-10T14:31:30.906584007Z",
            "FinishedAt": "2025-09-09T19:53:02.091368316Z",
            "Health": {
                "Status": "healthy",
                "FailingStreak": 0,
            [...]

Note: Extremely coarse indicator

The Docker health state of the container is an extremely coarse indicator. That's why it is recommended to additionally include the most important key/value pairs of the of the sedex-Client's monitoring page in your own operations monitoring system.