Skip to content

Commit ac419b5

Browse files
lizk886Release Workflow
andauthored
add startup timer metric (#2004)
* add startup timer metric and tracking * update number display * Update shared version to 11.1.16 after rebase * Update uid2-shared.version to 11.1.14-alpha-304-SNAPSHOT * [CI Pipeline] Released Snapshot version: 5.58.26-alpha-220-SNAPSHOT * beautify * beautify * test out shared with optout total time count fix the new shared version after release * [CI Pipeline] Released Snapshot version: 5.58.27-alpha-221-SNAPSHOT * update metric using timer * update metric using timer * Revert "update metric using timer" This reverts commit 60f36d3. * Reapply "update metric using timer" This reverts commit 0623771. * remove comment * remove * remove * remove * update shared version * [CI Pipeline] Released Snapshot version: 5.58.28-alpha-223-SNAPSHOT * Update uid2-shared.version to 11.1.19-alpha-309-SNAPSHOT * [CI Pipeline] Released Snapshot version: 5.58.29-alpha-224-SNAPSHOT * Update uid2-shared.version to 11.1.62 * Downgrade version from 5.58.29-alpha-224-SNAPSHOT to 5.58.25 --------- Co-authored-by: Release Workflow <[email protected]>
1 parent 7e2ba94 commit ac419b5

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<enclave-aws.version>2.1.0</enclave-aws.version>
2323
<enclave-azure.version>2.1.13</enclave-azure.version>
2424
<enclave-gcp.version>2.1.0</enclave-gcp.version>
25-
<uid2-shared.version>11.1.13</uid2-shared.version>
25+
<uid2-shared.version>11.1.62</uid2-shared.version>
2626
<image.version>${project.version}</image.version>
2727
<maven.compiler.source>21</maven.compiler.source>
2828
<maven.compiler.target>21</maven.compiler.target>

src/main/java/com/uid2/operator/Main.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import com.uid2.shared.health.PodTerminationMonitor;
3737
import io.micrometer.core.instrument.Gauge;
3838
import io.micrometer.core.instrument.Meter;
39+
import io.micrometer.core.instrument.Timer;
3940
import io.micrometer.core.instrument.MeterRegistry;
4041
import io.micrometer.core.instrument.Metrics;
4142
import io.micrometer.core.instrument.config.MeterFilter;
@@ -68,6 +69,7 @@
6869
public class Main {
6970
private static final Logger LOGGER = LoggerFactory.getLogger(Main.class);
7071

72+
private static volatile Instant startupBeginTime;
7173
private final JsonObject config;
7274
private final Vertx vertx;
7375
private final ApplicationVersion appVersion;
@@ -244,7 +246,15 @@ private KeyManager getKeyManager() {
244246
return new KeyManager(this.keysetKeyStore, this.keysetProvider);
245247
}
246248

249+
public static void recordStartupComplete() {
250+
if (startupBeginTime == null) return;
251+
final Duration d = Duration.between(startupBeginTime, Instant.now());
252+
Timer.builder("uid2_operator_startup_duration").register(globalRegistry).record(d);
253+
LOGGER.info("Startup in {} ms", d.toMillis());
254+
}
255+
247256
public static void main(String[] args) throws Exception {
257+
startupBeginTime = Instant.now();
248258

249259
java.security.Security.setProperty("networkaddress.cache.ttl" , "60");
250260

src/main/java/com/uid2/operator/vertx/UIDOperatorVerticle.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.fasterxml.jackson.core.JsonProcessingException;
44
import com.fasterxml.jackson.databind.ObjectMapper;
55
import com.uid2.operator.Const;
6+
import com.uid2.operator.Main;
67
import com.uid2.operator.model.*;
78
import com.uid2.operator.model.IdentityScope;
89
import com.uid2.operator.monitoring.IStatsCollectorQueue;
@@ -219,6 +220,8 @@ public void start(Promise<Void> startPromise) throws Exception {
219220
.listen(port, result -> {
220221
if (result.succeeded()) {
221222
this.healthComponent.setHealthStatus(true);
223+
// Record startup completion now that HTTP server is ready
224+
Main.recordStartupComplete();
222225
startPromise.complete();
223226
} else {
224227
this.healthComponent.setHealthStatus(false, result.cause().getMessage());

0 commit comments

Comments
 (0)