From decac3324411c9d6372df542d2ba0b495124f816 Mon Sep 17 00:00:00 2001 From: leandrofars Date: Sun, 14 Apr 2024 13:15:26 -0300 Subject: [PATCH] feat(api): stomp rtt --- .../services/controller/internal/api/info.go | 11 ++++++++++ .../services/controller/internal/nats/nats.go | 21 ++++++++++--------- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/backend/services/controller/internal/api/info.go b/backend/services/controller/internal/api/info.go index a96af6b..7610985 100644 --- a/backend/services/controller/internal/api/info.go +++ b/backend/services/controller/internal/api/info.go @@ -20,6 +20,7 @@ type StatusCount struct { type GeneralInfo struct { MqttRtt string WebsocketsRtt string + StompRtt string ProductClassCount []entity.ProductClassCount StatusCount StatusCount VendorsCount []entity.VendorsCount @@ -82,6 +83,16 @@ func (a *Api) generalInfo(w http.ResponseWriter, r *http.Request) { result.WebsocketsRtt = time.Until(now).String() } + now = time.Now() + _, err = bridge.NatsReqWithoutHttpSet[time.Duration]( + local.NATS_STOMP_ADAPTER_SUBJECT_PREFIX+"rtt", + []byte(""), + a.nc, + ) + if err == nil { + result.StompRtt = time.Until(now).String() + } + now = time.Now() _, err = bridge.NatsReqWithoutHttpSet[time.Duration]( local.NATS_MQTT_ADAPTER_SUBJECT_PREFIX+"rtt", diff --git a/backend/services/controller/internal/nats/nats.go b/backend/services/controller/internal/nats/nats.go index a24e65a..f2b4998 100644 --- a/backend/services/controller/internal/nats/nats.go +++ b/backend/services/controller/internal/nats/nats.go @@ -10,16 +10,17 @@ import ( ) const ( - NATS_ACCOUNT_SUBJ_PREFIX = "account-manager.v1." - NATS_REQUEST_TIMEOUT = 10 * time.Second - NATS_MQTT_SUBJECT_PREFIX = "mqtt.usp.v1." - NATS_MQTT_ADAPTER_SUBJECT_PREFIX = "mqtt-adapter.usp.v1." - NATS_ADAPTER_SUBJECT = "adapter.usp.v1." - NATS_WS_SUBJECT_PREFIX = "ws.usp.v1." - NATS_WS_ADAPTER_SUBJECT_PREFIX = "ws-adapter.usp.v1." - DEVICE_SUBJECT_PREFIX = "device.usp.v1." - BUCKET_NAME = "devices-auth" - BUCKET_DESCRIPTION = "Devices authentication" + NATS_ACCOUNT_SUBJ_PREFIX = "account-manager.v1." + NATS_REQUEST_TIMEOUT = 10 * time.Second + NATS_MQTT_SUBJECT_PREFIX = "mqtt.usp.v1." + NATS_MQTT_ADAPTER_SUBJECT_PREFIX = "mqtt-adapter.usp.v1." + NATS_ADAPTER_SUBJECT = "adapter.usp.v1." + NATS_WS_SUBJECT_PREFIX = "ws.usp.v1." + NATS_WS_ADAPTER_SUBJECT_PREFIX = "ws-adapter.usp.v1." + NATS_STOMP_ADAPTER_SUBJECT_PREFIX = "stomp-adapter.usp.v1." + DEVICE_SUBJECT_PREFIX = "device.usp.v1." + BUCKET_NAME = "devices-auth" + BUCKET_DESCRIPTION = "Devices authentication" ) func StartNatsClient(c config.Nats) (jetstream.JetStream, *nats.Conn, jetstream.KeyValue) {