Making an Opaque Search Request

Hello, I am working in an environment with many services.
We are introducing Elasticsearch as an after-thought; it means we need to do this in a way that does not impact on already existing service.
To achieve this, we delegate the responsibility of ingesting data into Elasticsearch to each specific service.
For data ingestion, we make use of a message broker (Rabbit MQ) to decouple our already running service from the indexing service.

The problem which I am facing now is to write an opaque search functionality.
I want to be able to search any field which my search functionality does not know before each request hits .
The search needs to be as opaque to fields as possible and the search needs to support fuzzy search.

To let you know of what I intend doing, my current plan is to dictate to each service to pass the fields along the search query to the search function.
So, if a user searches for the word "Foo" , the application service that needs to communicate with the search service should have this URL :

http(s)://{rootUrl}/q={search-text}&index={index-to-search}&fields=[field-one , field-two , ... , field-n]

My search service can then use the search parameters to perform the search.

I want to know if there is anyone who has worked on something like this before.
If yes, kindly state how you went about it.
Thank you

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.