2424import org .opensearch .eval .judgments .clickmodel .JudgmentParameters ;
2525import org .opensearch .eval .judgments .clickmodel .coec .CoecClickModel ;
2626import org .opensearch .eval .judgments .clickmodel .coec .CoecClickModelParameters ;
27+ import org .opensearch .eval .model .TimeFilter ;
28+ import org .opensearch .eval .model .dao .querysets .QuerySetRunParameters ;
2729import org .opensearch .eval .runners .OpenSearchQuerySetRunner ;
2830import org .opensearch .eval .runners .QuerySetRunResult ;
29- import org .opensearch .eval .model .dao .querysets .QuerySetRunParameters ;
30- import org .opensearch .eval .samplers .AllQueriesQuerySampler ;
31- import org .opensearch .eval .samplers .AllQueriesQuerySamplerParameters ;
3231import org .opensearch .eval .samplers .ProbabilityProportionalToSizeQuerySampler ;
3332import org .opensearch .eval .samplers .ProbabilityProportionalToSizeSamplerParameters ;
3433import org .opensearch .eval .samplers .RandomQuerySampler ;
@@ -77,7 +76,7 @@ public static void main(String[] args) throws Exception {
7776 if (cmd .hasOption ("o" )) {
7877 uri = URI .create (cmd .getOptionValue ("o" ));
7978 } else {
80- System . out . println ("No OpenSearch host given so defaulting to http://localhost:9200" );
79+ LOGGER . info ("No OpenSearch host given so defaulting to http://localhost:9200" );
8180 uri = URI .create ("http://localhost:9200" );
8281 }
8382
@@ -150,56 +149,46 @@ public static void main(String[] args) throws Exception {
150149 final String samplerType = jsonObject .get ("sampler" ).getAsString ();
151150 String querySetId = null ;
152151
153- if (AllQueriesQuerySampler .NAME .equalsIgnoreCase (samplerType )) {
154-
155- final AllQueriesQuerySamplerParameters parameters = gson .fromJson (jsonString , AllQueriesQuerySamplerParameters .class );
156- final AllQueriesQuerySampler sampler = new AllQueriesQuerySampler (searchEngine , parameters );
157-
158- // TODO: Allow for selecting the queries by date.
159- final Map <String , Long > querySet = sampler .sample ();
160- if (!querySet .isEmpty ()) {
161- querySetId = sampler .indexQuerySet (searchEngine , parameters .getName (), parameters .getDescription (), parameters .getSampling (), querySet );
162- } else {
163- System .err .println ("The query set was empty." );
164- }
165-
166- } else if (ProbabilityProportionalToSizeQuerySampler .NAME .equalsIgnoreCase (samplerType )) {
152+ if (ProbabilityProportionalToSizeQuerySampler .NAME .equalsIgnoreCase (samplerType )) {
167153
168154 final ProbabilityProportionalToSizeSamplerParameters parameters = gson .fromJson (jsonString , ProbabilityProportionalToSizeSamplerParameters .class );
169155 final ProbabilityProportionalToSizeQuerySampler sampler = new ProbabilityProportionalToSizeQuerySampler (searchEngine , parameters );
170156
171- // TODO: Allow for selecting the queries by date.
172- final Map <String , Long > querySet = sampler .sample ();
157+ final TimeFilter timeFilter = TimeFilter .fromQuerySamplerParameters (parameters );
158+ final Map <String , Long > querySet = sampler .sample (timeFilter );
159+
173160 if (!querySet .isEmpty ()) {
174161 querySetId = sampler .indexQuerySet (searchEngine , parameters .getName (), parameters .getDescription (), parameters .getSampling (), querySet );
175162 } else {
176- System . err . println ("The query set was empty." );
163+ LOGGER . error ("The query set was empty." );
177164 }
178165
179166 } else if (RandomQuerySampler .NAME .equalsIgnoreCase (samplerType )) {
180167
181168 final RandomQuerySamplerParameters parameters = gson .fromJson (jsonString , RandomQuerySamplerParameters .class );
182169 final RandomQuerySampler sampler = new RandomQuerySampler (searchEngine , parameters );
183170
184- // TODO: Allow for selecting the queries by date.
185- final Map <String , Long > querySet = sampler .sample ();
171+ final TimeFilter timeFilter = TimeFilter .fromQuerySamplerParameters (parameters );
172+ final Map <String , Long > querySet = sampler .sample (timeFilter );
173+
186174 if (!querySet .isEmpty ()) {
187175 querySetId = sampler .indexQuerySet (searchEngine , parameters .getName (), parameters .getDescription (), parameters .getSampling (), querySet );
188176 } else {
189- System . err . println ("The query set was empty." );
177+ LOGGER . error ("The query set was empty." );
190178 }
191179
192180 } else if (TopNQuerySampler .NAME .equalsIgnoreCase (samplerType )) {
193181
194182 final TopNQuerySamplerParameters parameters = gson .fromJson (jsonString , TopNQuerySamplerParameters .class );
195183 final TopNQuerySampler sampler = new TopNQuerySampler (searchEngine , parameters );
196184
197- // TODO: Allow for selecting the queries by date.
198- final Map <String , Long > querySet = sampler .sample ();
185+ final TimeFilter timeFilter = TimeFilter .fromQuerySamplerParameters (parameters );
186+ final Map <String , Long > querySet = sampler .sample (timeFilter );
187+
199188 if (!querySet .isEmpty ()) {
200189 querySetId = sampler .indexQuerySet (searchEngine , parameters .getName (), parameters .getDescription (), parameters .getSampling (), querySet );
201190 } else {
202- System . err . println ("The query set was empty." );
191+ LOGGER . error ("The query set was empty." );
203192 }
204193
205194 } else {
@@ -210,19 +199,19 @@ public static void main(String[] args) throws Exception {
210199 }
211200
212201 if (querySetId != null ) {
213- System . out . println ("Query set created: " + querySetId );
202+ LOGGER . info ("Query set created: {}" , querySetId );
214203 } else {
215- System . err . println ("No queries found for query set." );
204+ LOGGER . warn ("No queries found for query set." );
216205 }
217206
218207 } else {
219- System . err . println ("The query set run parameters file does not exist." );
208+ LOGGER . error ("The query set run parameters file does not exist." );
220209 }
221210
222211
223212 } else {
224213
225- System . err . println ("Invalid options." );
214+ LOGGER . error ("Invalid options." );
226215
227216 }
228217
0 commit comments