From 0d69677c274e9d04b73c6c108120d3598a8fce0c Mon Sep 17 00:00:00 2001 From: skyflow-vivek Date: Mon, 17 Nov 2025 15:43:15 +0530 Subject: [PATCH] SK-2370 Add SDK metrics header --- .../skyflow/vault/controller/VaultController.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/v3/src/main/java/com/skyflow/vault/controller/VaultController.java b/v3/src/main/java/com/skyflow/vault/controller/VaultController.java index 062515a8..73325f59 100644 --- a/v3/src/main/java/com/skyflow/vault/controller/VaultController.java +++ b/v3/src/main/java/com/skyflow/vault/controller/VaultController.java @@ -2,11 +2,13 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import com.google.gson.JsonObject; import com.skyflow.VaultClient; import com.skyflow.config.Credentials; import com.skyflow.config.VaultConfig; import com.skyflow.errors.SkyflowException; import com.skyflow.generated.rest.core.ApiClientApiException; +import com.skyflow.generated.rest.core.RequestOptions; import com.skyflow.generated.rest.types.InsertRecordData; import com.skyflow.generated.rest.types.InsertResponse; import com.skyflow.generated.rest.types.Upsert; @@ -31,6 +33,7 @@ public final class VaultController extends VaultClient { private static final Gson gson = new GsonBuilder().serializeNulls().create(); + private JsonObject metrics = Utils.getMetrics(); private int insertBatchSize; private int insertConcurrencyLimit; private int detokenizeBatchSize; @@ -262,7 +265,10 @@ private List> detokenizeBatchFutures(Execu } private com.skyflow.generated.rest.types.DetokenizeResponse processDetokenizeBatch(com.skyflow.generated.rest.resources.recordservice.requests.DetokenizeRequest batch) { - return this.getRecordsApi().detokenize(batch); + RequestOptions requestOptions = RequestOptions.builder() + .addHeader(Constants.SDK_METRICS_HEADER_KEY, metrics.toString()) + .build(); + return this.getRecordsApi().detokenize(batch, requestOptions); } private List> @@ -305,7 +311,10 @@ private InsertResponse insertBatch(List batch, String tableNam req.tableName(tableName); } com.skyflow.generated.rest.resources.recordservice.requests.InsertRequest request = req.build(); - return this.getRecordsApi().insert(request); + RequestOptions requestOptions = RequestOptions.builder() + .addHeader(Constants.SDK_METRICS_HEADER_KEY, metrics.toString()) + .build(); + return this.getRecordsApi().insert(request, requestOptions); } private void configureInsertConcurrencyAndBatchSize(int totalRequests) {