Skip to content

Commit

Permalink
tweak function API for topItemsHandler/fetchTopCategories
Browse files Browse the repository at this point in the history
  • Loading branch information
walterra committed Jul 5, 2024
1 parent 6a6a8a8 commit b09d449
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,25 @@ import type { AiopsLogRateAnalysisSchema } from '../api/schema';

import { fetchCategories } from './fetch_categories';

export const fetchTopCategories = async (
esClient: ElasticsearchClient,
params: AiopsLogRateAnalysisSchema,
fieldNames: string[],
logger: Logger,
export const fetchTopCategories = async ({
esClient,
abortSignal,
emitError,
logger,
arguments: args,
}: {
esClient: ElasticsearchClient;
logger: Logger;
emitError: (m: string) => void;
abortSignal?: AbortSignal;
arguments: AiopsLogRateAnalysisSchema & {
fieldNames: string[];
sampleProbability?: number;
};
}) => {
// The default value of 1 means no sampling will be used
sampleProbability: number = 1,
emitError: (m: string) => void,
abortSignal?: AbortSignal
) => {
const { fieldNames, sampleProbability = 1, ...params } = args;

const categoriesOverall = await fetchCategories(
esClient,
params,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,15 +63,17 @@ export const topItemsHandlerFactory =
// Get categories of text fields
if (textFieldCandidates.length > 0) {
topCategories.push(
...(await fetchTopCategories(
...(await fetchTopCategories({
esClient,
requestBody,
textFieldCandidates,
logger,
stateHandler.sampleProbability(),
responseStream.pushError,
abortSignal
))
emitError: responseStream.pushError,
abortSignal,
arguments: {
...requestBody,
fieldNames: textFieldCandidates,
sampleProbability: stateHandler.sampleProbability(),
},
}))
);

if (topCategories.length > 0) {
Expand Down

0 comments on commit b09d449

Please sign in to comment.