Corrected metric for task queue total size

This commit is contained in:
DanasFi 2025-04-14 18:01:06 -04:00 committed by Tamo
parent 3d93efc6aa
commit eeb33b913c
3 changed files with 9 additions and 4 deletions

View File

@ -427,6 +427,11 @@ impl IndexScheduler {
Ok(self.env.non_free_pages_size()?)
}
/// Return the maximum possible database size
pub fn max_size(&self) -> Result<u64> {
Ok(self.env.info().map_size as u64)
}
/// Return the max size of task allowed until the task queue stop receiving.
pub fn remaining_size_until_task_queu_stop(&self) -> Result<u64> {
Ok((self.env.info().map_size as u64 * TASK_SCHEDULER_SIZE_THRESHOLD_PERCENT_INT / 100)

View File

@ -68,9 +68,9 @@ lazy_static! {
"Meilisearch Task Queue Latency in Seconds",
)
.expect("Can't create a metric");
pub static ref MEILISEARCH_TASK_QUEUE_TOTAL_SIZE: IntGauge = register_int_gauge!(opts!(
"meilisearch_task_queue_total_size",
"Meilisearch Task Queue Total Size",
pub static ref MEILISEARCH_TASK_QUEUE_MAX_SIZE: IntGauge = register_int_gauge!(opts!(
"meilisearch_task_queue_max_size",
"Meilisearch Task Queue Max Size",
))
.expect("Can't create a metric");
pub static ref MEILISEARCH_TASK_QUEUE_USED_SIZE: IntGauge = register_int_gauge!(opts!(

View File

@ -169,7 +169,7 @@ pub async fn get_metrics(
.map(|task| (OffsetDateTime::now_utc() - task.enqueued_at).as_seconds_f64())
.unwrap_or(0.0);
crate::metrics::MEILISEARCH_TASK_QUEUE_LATENCY_SECONDS.set(task_queue_latency_seconds);
crate::metrics::MEILISEARCH_TASK_QUEUE_TOTAL_SIZE.set(index_scheduler.size()? as i64);
crate::metrics::MEILISEARCH_TASK_QUEUE_MAX_SIZE.set(index_scheduler.max_size()? as i64);
crate::metrics::MEILISEARCH_TASK_QUEUE_USED_SIZE.set(index_scheduler.used_size()? as i64);
crate::metrics::MEILISEARCH_TASK_QUEUE_SIZE_UNTIL_STOP_REGISTERING