TP-5555 | search param addition

This commit is contained in:
varnit goyal
2025-01-10 12:38:59 +05:30
parent dcf59b0d98
commit 989493506f

View File

@@ -29,6 +29,7 @@ func (s *SearchService) GetErrorDetails(c *gin.Context) {
error_hash := c.Query("error_hash")
project_id := c.Query("project_id")
from := c.DefaultQuery("from", "0")
search_key := c.DefaultQuery("search_key", "")
fromInNumber, err := strconv.ParseInt(from, 10, 64)
@@ -38,8 +39,16 @@ func (s *SearchService) GetErrorDetails(c *gin.Context) {
}
term_query := utils.CreateTermSubQuery("error_hash", error_hash)
multiMatchQuery := utils.CreateMultiMatchQuery(search_key, "error", "title", "extra.metadata.agentId",
"extra.metadata.external_customer_id",
"extra.metadata.deviceId",
"extra.metadata.web_session_id", "extra.metadata.id")
project_id_term_query := utils.CreateTermSubQuery("project_id", project_id)
mustQuery := utils.CreateMustQuery(term_query, project_id_term_query)
if len(search_key) > 0 {
mustQuery = utils.CreateMustQuery(term_query, project_id_term_query, multiMatchQuery)
}
boolQuery := utils.CreateBoolQuery(mustQuery)
search_query := utils.CreateSearchQuery(boolQuery)
size_query := utils.CreateSizeQuery(1)
@@ -100,6 +109,7 @@ func (s *SearchService) GetSearchResults(c *gin.Context) {
func (s *SearchService) GetErrorListV2(c *gin.Context) {
projectId := c.Query("project_id")
sortKey := c.DefaultQuery("sort_key", "lastSeen")
search_key := c.DefaultQuery("search_key", "")
var orderQuery = ""
if sortKey == "lastSeen" {
@@ -113,7 +123,16 @@ func (s *SearchService) GetErrorListV2(c *gin.Context) {
}
//size := c.DefaultQuery("size", "100000")
term_query := utils.CreateTermSubQuery("project_id", projectId)
multiMatchQuery := utils.CreateMultiMatchQuery(search_key, "error", "title", "extra.metadata.agentId",
"extra.metadata.external_customer_id",
"extra.metadata.deviceId",
"extra.metadata.web_session_id", "extra.metadata.id")
should_query := utils.CreateMustQuery(term_query, multiMatchQuery)
boolQuery := utils.CreateBoolQuery(should_query)
search_query := utils.CreateSearchQuery(term_query)
if len(search_key) > 0 {
search_query = utils.CreateSearchQuery(boolQuery)
}
size_query := utils.CreateSizeQuery(0)
top_hits_aggs_name_query := utils.BuildAggregationQuery("unique_errors", utils.CreateTopHitsAggsQuery(1, []string{"error", "significant_stack", "created_at", "error_hash"}))
last_seen_aggs_query := utils.BuildAggregationQuery("last_seen", utils.CreateMaxAggregationQuery("created_at"))