From f27136458abe49f0a4d21ba0f1694f2011212fc2 Mon Sep 17 00:00:00 2001
From: Nilay Shah <58663029+njshah301@users.noreply.github.com>
Date: Wed, 14 Jan 2026 00:18:43 +0530
Subject: [PATCH] Configure cloud scheduler to trigger MoSAPI SLA status to
cloud monitoring (#2926)
* Configure cloud scheduler to trigger MoSAPI SLA status to cloud monitoring in production
- We have kept this job to trigger for every 3 minutes so that we get near to real time update for our task.
- This will not trigger metrics for now as we have not written Metrics triggering logic yet
- Logs are added
* Change Trigger scheduling from 3 minutes to 5 minutes
---
.../files/tasks/cloud-scheduler-tasks-production.xml | 11 +++++++++++
.../google/registry/mosapi/MosApiStateService.java | 1 +
.../registry/mosapi/TriggerServiceStateAction.java | 1 +
3 files changed, 13 insertions(+)
diff --git a/core/src/main/java/google/registry/config/files/tasks/cloud-scheduler-tasks-production.xml b/core/src/main/java/google/registry/config/files/tasks/cloud-scheduler-tasks-production.xml
index 7beba48ca..a6b57a01d 100644
--- a/core/src/main/java/google/registry/config/files/tasks/cloud-scheduler-tasks-production.xml
+++ b/core/src/main/java/google/registry/config/files/tasks/cloud-scheduler-tasks-production.xml
@@ -322,4 +322,15 @@
bsa
23 8,20 * * *
+
+
+
+ triggerMosApiServiceState
+
+ Fetches the service state from MosAPI and triggers the metrics status for all TLDs.
+
+
+ */5 * * * *
+
+
diff --git a/core/src/main/java/google/registry/mosapi/MosApiStateService.java b/core/src/main/java/google/registry/mosapi/MosApiStateService.java
index a51a0651c..0cd242b11 100644
--- a/core/src/main/java/google/registry/mosapi/MosApiStateService.java
+++ b/core/src/main/java/google/registry/mosapi/MosApiStateService.java
@@ -143,6 +143,7 @@ public class MosApiStateService {
if (!allStates.isEmpty()) {
try {
+ logger.atInfo().log("Triggering MoSAPI status to cloud monitoring for all TLDs.");
mosApiMetrics.recordStates(allStates);
} catch (Exception e) {
logger.atSevere().withCause(e).log("Failed to submit MoSAPI metrics batch.");
diff --git a/core/src/main/java/google/registry/mosapi/TriggerServiceStateAction.java b/core/src/main/java/google/registry/mosapi/TriggerServiceStateAction.java
index 908d29a2f..c8ced8f87 100644
--- a/core/src/main/java/google/registry/mosapi/TriggerServiceStateAction.java
+++ b/core/src/main/java/google/registry/mosapi/TriggerServiceStateAction.java
@@ -48,6 +48,7 @@ public class TriggerServiceStateAction implements Runnable {
public void run() {
response.setContentType(MediaType.PLAIN_TEXT_UTF_8);
try {
+ logger.atInfo().log("Beginning to trigger MoSAPI metrics for all TLDs.");
stateService.triggerMetricsForAllServiceStateSummaries();
response.setStatus(200);
response.setPayload("MoSAPI metrics triggered successfully for all TLDs.");