mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-01-25 20:57:35 +01:00
log the all settings updated route
This commit is contained in:
parent
bda7472880
commit
7524bfc07f
@ -4,7 +4,9 @@ use actix_web::{web, HttpResponse};
|
|||||||
use meilisearch_lib::index::{Settings, Unchecked};
|
use meilisearch_lib::index::{Settings, Unchecked};
|
||||||
use meilisearch_lib::index_controller::Update;
|
use meilisearch_lib::index_controller::Update;
|
||||||
use meilisearch_lib::MeiliSearch;
|
use meilisearch_lib::MeiliSearch;
|
||||||
|
use serde_json::json;
|
||||||
|
|
||||||
|
use crate::analytics::Analytics;
|
||||||
use crate::error::ResponseError;
|
use crate::error::ResponseError;
|
||||||
use crate::extractors::authentication::{policies::*, GuardedData};
|
use crate::extractors::authentication::{policies::*, GuardedData};
|
||||||
|
|
||||||
@ -154,9 +156,27 @@ pub async fn update_all(
|
|||||||
meilisearch: GuardedData<Private, MeiliSearch>,
|
meilisearch: GuardedData<Private, MeiliSearch>,
|
||||||
index_uid: web::Path<String>,
|
index_uid: web::Path<String>,
|
||||||
body: web::Json<Settings<Unchecked>>,
|
body: web::Json<Settings<Unchecked>>,
|
||||||
|
analytics: web::Data<&'static dyn Analytics>,
|
||||||
) -> Result<HttpResponse, ResponseError> {
|
) -> Result<HttpResponse, ResponseError> {
|
||||||
let settings = body.into_inner();
|
let settings = body.into_inner();
|
||||||
|
|
||||||
|
analytics.publish(
|
||||||
|
"Settings Updated".to_string(),
|
||||||
|
json!({
|
||||||
|
"ranking_rules": {
|
||||||
|
"sort_position": settings.ranking_rules.as_ref().set().map(|sort| sort.iter().filter(|s| s.contains(":")).count()),
|
||||||
|
},
|
||||||
|
"sortable_attributes": {
|
||||||
|
"total": settings.sortable_attributes.as_ref().set().map(|sort| sort.len()),
|
||||||
|
"has_geo": settings.sortable_attributes.as_ref().set().map(|sort| sort.iter().any(|s| s == "_geo")).unwrap_or(false),
|
||||||
|
},
|
||||||
|
"filterable_attributes": {
|
||||||
|
"total": settings.filterable_attributes.as_ref().set().map(|filter| filter.len()),
|
||||||
|
"has_geo": settings.filterable_attributes.as_ref().set().map(|filter| filter.iter().any(|s| s == "_geo")).unwrap_or(false),
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
|
||||||
let update = Update::Settings(settings);
|
let update = Update::Settings(settings);
|
||||||
let update_result = meilisearch
|
let update_result = meilisearch
|
||||||
.register_update(index_uid.into_inner(), update, true)
|
.register_update(index_uid.into_inner(), update, true)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user