From 584b77224800a945a3c3078625fc964f3befdfa9 Mon Sep 17 00:00:00 2001 From: Tamo Date: Thu, 21 Sep 2023 17:01:05 +0200 Subject: [PATCH] enable metrics in debug builds --- meilisearch/src/analytics/mod.rs | 24 +++++++++---------- .../src/analytics/segment_analytics.rs | 2 +- meilisearch/src/option.rs | 8 +++---- meilisearch/tests/common/server.rs | 2 +- 4 files changed, 17 insertions(+), 19 deletions(-) diff --git a/meilisearch/src/analytics/mod.rs b/meilisearch/src/analytics/mod.rs index 86f9c1abe..d21838dbb 100644 --- a/meilisearch/src/analytics/mod.rs +++ b/meilisearch/src/analytics/mod.rs @@ -1,6 +1,5 @@ mod mock_analytics; -// if we are in release mode and the feature analytics was enabled -#[cfg(all(not(debug_assertions), feature = "analytics"))] +#[cfg(feature = "analytics")] mod segment_analytics; use std::fs; @@ -17,26 +16,25 @@ use serde_json::Value; use crate::routes::indexes::documents::UpdateDocumentsQuery; use crate::routes::tasks::TasksFilterQuery; -// if we are in debug mode OR the analytics feature is disabled +// if the analytics feature is disabled // the `SegmentAnalytics` point to the mock instead of the real analytics -#[cfg(any(debug_assertions, not(feature = "analytics")))] +#[cfg(not(feature = "analytics"))] pub type SegmentAnalytics = mock_analytics::MockAnalytics; -#[cfg(any(debug_assertions, not(feature = "analytics")))] +#[cfg(not(feature = "analytics"))] pub type SearchAggregator = mock_analytics::SearchAggregator; -#[cfg(any(debug_assertions, not(feature = "analytics")))] +#[cfg(not(feature = "analytics"))] pub type MultiSearchAggregator = mock_analytics::MultiSearchAggregator; -#[cfg(any(debug_assertions, not(feature = "analytics")))] +#[cfg(not(feature = "analytics"))] pub type FacetSearchAggregator = mock_analytics::FacetSearchAggregator; -// if we are in release mode and the feature analytics was enabled -// we use the real analytics -#[cfg(all(not(debug_assertions), feature = "analytics"))] +// if the feature analytics is enabled we use the real analytics +#[cfg(feature = "analytics")] pub type SegmentAnalytics = segment_analytics::SegmentAnalytics; -#[cfg(all(not(debug_assertions), feature = "analytics"))] +#[cfg(feature = "analytics")] pub type SearchAggregator = segment_analytics::SearchAggregator; -#[cfg(all(not(debug_assertions), feature = "analytics"))] +#[cfg(feature = "analytics")] pub type MultiSearchAggregator = segment_analytics::MultiSearchAggregator; -#[cfg(all(not(debug_assertions), feature = "analytics"))] +#[cfg(feature = "analytics")] pub type FacetSearchAggregator = segment_analytics::FacetSearchAggregator; /// The Meilisearch config dir: diff --git a/meilisearch/src/analytics/segment_analytics.rs b/meilisearch/src/analytics/segment_analytics.rs index 4cb85606c..a8df940c5 100644 --- a/meilisearch/src/analytics/segment_analytics.rs +++ b/meilisearch/src/analytics/segment_analytics.rs @@ -310,7 +310,7 @@ impl From for Infos { log_level, indexer_options, config_file_path, - #[cfg(all(not(debug_assertions), feature = "analytics"))] + #[cfg(feature = "analytics")] no_analytics: _, } = options; diff --git a/meilisearch/src/option.rs b/meilisearch/src/option.rs index eaf96ee0c..b8489c3e3 100644 --- a/meilisearch/src/option.rs +++ b/meilisearch/src/option.rs @@ -28,7 +28,7 @@ const MEILI_DB_PATH: &str = "MEILI_DB_PATH"; const MEILI_HTTP_ADDR: &str = "MEILI_HTTP_ADDR"; const MEILI_MASTER_KEY: &str = "MEILI_MASTER_KEY"; const MEILI_ENV: &str = "MEILI_ENV"; -#[cfg(all(not(debug_assertions), feature = "analytics"))] +#[cfg(feature = "analytics")] const MEILI_NO_ANALYTICS: &str = "MEILI_NO_ANALYTICS"; const MEILI_HTTP_PAYLOAD_SIZE_LIMIT: &str = "MEILI_HTTP_PAYLOAD_SIZE_LIMIT"; const MEILI_SSL_CERT_PATH: &str = "MEILI_SSL_CERT_PATH"; @@ -159,7 +159,7 @@ pub struct Opt { /// Meilisearch automatically collects data from all instances that do not opt out using this flag. /// All gathered data is used solely for the purpose of improving Meilisearch, and can be deleted /// at any time. - #[cfg(all(not(debug_assertions), feature = "analytics"))] + #[cfg(feature = "analytics")] #[serde(default)] // we can't send true #[clap(long, env = MEILI_NO_ANALYTICS)] pub no_analytics: bool, @@ -390,7 +390,7 @@ impl Opt { ignore_missing_dump: _, ignore_dump_if_db_exists: _, config_file_path: _, - #[cfg(all(not(debug_assertions), feature = "analytics"))] + #[cfg(feature = "analytics")] no_analytics, experimental_enable_metrics: enable_metrics_route, experimental_reduce_indexing_memory_usage: reduce_indexing_memory_usage, @@ -401,7 +401,7 @@ impl Opt { export_to_env_if_not_present(MEILI_MASTER_KEY, master_key); } export_to_env_if_not_present(MEILI_ENV, env); - #[cfg(all(not(debug_assertions), feature = "analytics"))] + #[cfg(feature = "analytics")] { export_to_env_if_not_present(MEILI_NO_ANALYTICS, no_analytics.to_string()); } diff --git a/meilisearch/tests/common/server.rs b/meilisearch/tests/common/server.rs index c5d2cd85c..58f561eb8 100644 --- a/meilisearch/tests/common/server.rs +++ b/meilisearch/tests/common/server.rs @@ -209,7 +209,7 @@ pub fn default_settings(dir: impl AsRef) -> Opt { db_path: dir.as_ref().join("db"), dump_dir: dir.as_ref().join("dumps"), env: "development".to_owned(), - #[cfg(all(not(debug_assertions), feature = "analytics"))] + #[cfg(feature = "analytics")] no_analytics: true, max_index_size: Byte::from_unit(100.0, ByteUnit::MiB).unwrap(), max_task_db_size: Byte::from_unit(1.0, ByteUnit::GiB).unwrap(),