SIENTIAPDE-1645: Expose detailed model training information via a new Prometheus gauge. This gauge, sientia_training_info, records metadata such as dataset sizes, feature count, and evaluation metrics (MSE, MAE, R2) along with the training run's timestamp.

This commit is contained in:
vitor-aignosi
2026-06-18 09:56:30 -03:00
parent bc65ebb955
commit 2c63414770
3 changed files with 76 additions and 0 deletions

View File

@@ -262,6 +262,18 @@ class Training(SientiaMonitoring):
train_result.r2_val
)
mm_metrics.SIENTIA_TRAINING_INFO.labels(
pod_id=labels['pod_id'],
model_name=train_params.model_name,
model_type=train_params.model_type,
dataset_train_rows=str(len(train_result.train_data)),
dataset_val_rows=str(len(train_result.val_data)),
feature_count=str(len(train_params.variable_columns)),
mse=str(train_result.mse_val) if train_result.mse_val is not None else '',
mae=str(train_result.mae_val) if train_result.mae_val is not None else '',
r2=str(train_result.r2_val) if train_result.r2_val is not None else '',
).set(time.time() * 1000)
self.info(f'Starting MLflow run for {train_params.model_type}', metadata)
with self.mlflow_repository.start_run(
model_name=train_params.model_name,

View File

@@ -27,6 +27,22 @@ APP_UP = Gauge(
_TRAINING_LABELS = ['pod_id', 'model_name', 'model_type']
SIENTIA_TRAINING_INFO = Gauge(
'sientia_training_info',
'Metadata and execution timestamp (ms) of the last successful model training run',
[
'pod_id',
'model_name',
'model_type',
'dataset_train_rows',
'dataset_val_rows',
'feature_count',
'mse',
'mae',
'r2',
],
)
SIENTIA_TRAINING_MODEL_TRAINED_TOTAL = Counter(
'sientia_training_model_trained_total',
'Number of successfully completed model training runs',