Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
398670d
Expose search API in usage_counters start contract
gsoldevila Jul 8, 2024
a9fe013
Add support for custom retention periods in `usage-counter`
gsoldevila Jul 8, 2024
02974e3
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Jul 9, 2024
a64a986
UsageCountersService no longer registers the SO types
gsoldevila Jul 10, 2024
f9db2c7
Fix flaky test and buggy mock
gsoldevila Jul 10, 2024
f0bb528
Refactor interfaces, extract CollectorSet off of UsageCollection plugin
gsoldevila Jul 15, 2024
e1070ec
Filter official counters from integration test
gsoldevila Jul 15, 2024
ef65134
Move `rollups` logic and tests to `usage_collection`
gsoldevila Jul 17, 2024
d890d97
Extract `search` logic to separate module
gsoldevila Jul 17, 2024
8f460ab
[CI] Auto-commit changed files from 'node scripts/lint_ts_projects --…
kibanamachine Jul 17, 2024
0ae774c
Improve testing coverage
gsoldevila Jul 19, 2024
f4c9710
Default to sorting by `_shard_doc` when Pit is used
gsoldevila Aug 1, 2024
d8e86e4
Use PIT search to retrieve usage counters
gsoldevila Aug 1, 2024
f58e23b
Expose `search()` method in the `stop()` hook too
gsoldevila Aug 1, 2024
357b474
Perform mutiple search requests (1 per domain), use `bulkDelete`
gsoldevila Aug 1, 2024
adcbf42
Keep deleting counters if there might be more of them
gsoldevila Aug 2, 2024
b8abddb
Undo interface changes
gsoldevila Aug 2, 2024
c62399f
Fix outdated tests
gsoldevila Aug 2, 2024
9b9f007
Fix IUsageCounter mocks for failing tests
gsoldevila Aug 2, 2024
ea10c24
Merge branch 'main' into kbn-usage-counters-search-api
gsoldevila Aug 5, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,8 @@ describe('getSearchDsl', () => {
mappings,
opts.type,
opts.sortField,
opts.sortOrder
opts.sortOrder,
opts.pit
);
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ export function getSearchDsl(
hasNoReferenceOperator,
kueryNode,
}),
...getSortingParams(mappings, type, sortField, sortOrder),
...getSortingParams(mappings, type, sortField, sortOrder, pit),
...(pit ? getPitParams(pit) : {}),
search_after: searchAfter,
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -238,4 +238,12 @@ describe('searchDsl/getSortParams', () => {
});
});
});

describe('pit, no sortField', () => {
it('defaults to natural storage order sorting', () => {
expect(getSortingParams(MAPPINGS, 'saved', undefined, undefined, { id: 'abc123' })).toEqual({
sort: ['_shard_doc'],
});
});
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@
* Side Public License, v 1.
*/

import * as estypes from '@elastic/elasticsearch/lib/api/typesWithBodyKey';
import Boom from '@hapi/boom';
import type { SortOrder, SortCombinations } from '@elastic/elasticsearch/lib/api/typesWithBodyKey';
import type { SavedObjectsPitParams } from '@kbn/core-saved-objects-api-server/src/apis';
import { getProperty, type IndexMapping } from '@kbn/core-saved-objects-base-server-internal';

const TOP_LEVEL_FIELDS = ['_id', '_score'];
Expand All @@ -16,10 +17,15 @@ export function getSortingParams(
mappings: IndexMapping,
type: string | string[],
sortField?: string,
sortOrder?: estypes.SortOrder
): { sort?: estypes.SortCombinations[] } {
sortOrder?: SortOrder,
pit?: SavedObjectsPitParams
): { sort?: SortCombinations[] } {
if (!sortField) {
return {};
// if we are performing a PIT search, we must sort by some criteria
// in order to get the 'sort' property for each of the results.
// Defaulting to '_shard_doc' tells ES to sort by the natural stored order,
// giving the best performance
return pit ? { sort: ['_shard_doc'] } : {};
}

const types = Array.isArray(type) ? type : [type];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,6 @@
*/

export const getUsageCollection = () => ({
domainId: 'abc123',
incrementCounter: jest.fn(),
});

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,5 @@ export { registerCoreUsageCollector } from './core';
export { registerLocalizationUsageCollector } from './localization';
export { registerConfigUsageCollector } from './config_usage';
export { registerUiCountersUsageCollector } from './ui_counters';
export {
registerUsageCountersRollups,
registerUsageCountersUsageCollector,
} from './usage_counters';
export { registerUsageCountersUsageCollector } from './usage_counters';
export { registerEventLoopDelaysCollector } from './event_loop_delays';
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,3 @@
*/

export { registerUsageCountersUsageCollector } from './register_usage_counters_collector';
export { registerUsageCountersRollups } from './rollups';
Loading