mirror of
https://github.com/elastic/kibana.git
synced 2025-04-25 02:09:32 -04:00
[x-pack/test/apm_api_integration] make registry a service (#116365)
Co-authored-by: spalger <spalger@users.noreply.github.com> Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Dario Gieselaar <dario.gieselaar@elastic.co>
This commit is contained in:
parent
7504668f8b
commit
62be2737bc
72 changed files with 350 additions and 307 deletions
|
@ -27,6 +27,7 @@ export async function cleanWriteTargets({
|
||||||
index: targets,
|
index: targets,
|
||||||
allow_no_indices: true,
|
allow_no_indices: true,
|
||||||
conflicts: 'proceed',
|
conflicts: 'proceed',
|
||||||
|
refresh: true,
|
||||||
body: {
|
body: {
|
||||||
query: {
|
query: {
|
||||||
match_all: {},
|
match_all: {},
|
||||||
|
|
|
@ -78,18 +78,33 @@ export class FunctionalTestRunner {
|
||||||
// replace the function of custom service providers so that they return
|
// replace the function of custom service providers so that they return
|
||||||
// promise-like objects which never resolve, essentially disabling them
|
// promise-like objects which never resolve, essentially disabling them
|
||||||
// allowing us to load the test files and populate the mocha suites
|
// allowing us to load the test files and populate the mocha suites
|
||||||
const readStubbedProviderSpec = (type: string, providers: any) =>
|
const readStubbedProviderSpec = (type: string, providers: any, skip: string[]) =>
|
||||||
readProviderSpec(type, providers).map((p) => ({
|
readProviderSpec(type, providers).map((p) => ({
|
||||||
...p,
|
...p,
|
||||||
fn: () => ({
|
fn: skip.includes(p.name)
|
||||||
|
? (...args: unknown[]) => {
|
||||||
|
const result = p.fn(...args);
|
||||||
|
if ('then' in result) {
|
||||||
|
throw new Error(
|
||||||
|
`Provider [${p.name}] returns a promise so it can't loaded during test analysis`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
: () => ({
|
||||||
then: () => {},
|
then: () => {},
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const providers = new ProviderCollection(this.log, [
|
const providers = new ProviderCollection(this.log, [
|
||||||
...coreProviders,
|
...coreProviders,
|
||||||
...readStubbedProviderSpec('Service', config.get('services')),
|
...readStubbedProviderSpec(
|
||||||
...readStubbedProviderSpec('PageObject', config.get('pageObjects')),
|
'Service',
|
||||||
|
config.get('services'),
|
||||||
|
config.get('servicesRequiredForTestAnalysis')
|
||||||
|
),
|
||||||
|
...readStubbedProviderSpec('PageObject', config.get('pageObjects'), []),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const mocha = await setupMocha(this.lifecycle, this.log, config, providers);
|
const mocha = await setupMocha(this.lifecycle, this.log, config, providers);
|
||||||
|
|
|
@ -89,6 +89,7 @@ export const schema = Joi.object()
|
||||||
})
|
})
|
||||||
.default(),
|
.default(),
|
||||||
|
|
||||||
|
servicesRequiredForTestAnalysis: Joi.array().items(Joi.string()).default([]),
|
||||||
services: Joi.object().pattern(ID_PATTERN, Joi.func().required()).default(),
|
services: Joi.object().pattern(ID_PATTERN, Joi.func().required()).default(),
|
||||||
|
|
||||||
pageObjects: Joi.object().pattern(ID_PATTERN, Joi.func().required()).default(),
|
pageObjects: Joi.object().pattern(ID_PATTERN, Joi.func().required()).default(),
|
||||||
|
|
|
@ -26,7 +26,9 @@ export function transformDataToMetricsChart(
|
||||||
title: chartBase.title,
|
title: chartBase.title,
|
||||||
key: chartBase.key,
|
key: chartBase.key,
|
||||||
yUnit: chartBase.yUnit,
|
yUnit: chartBase.yUnit,
|
||||||
series: Object.keys(chartBase.series).map((seriesKey, i) => {
|
series:
|
||||||
|
result.hits.total.value > 0
|
||||||
|
? Object.keys(chartBase.series).map((seriesKey, i) => {
|
||||||
const overallValue = aggregations?.[seriesKey]?.value;
|
const overallValue = aggregations?.[seriesKey]?.value;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
@ -34,7 +36,8 @@ export function transformDataToMetricsChart(
|
||||||
key: seriesKey,
|
key: seriesKey,
|
||||||
type: chartBase.type,
|
type: chartBase.type,
|
||||||
color:
|
color:
|
||||||
chartBase.series[seriesKey].color || getVizColorForIndex(i, theme),
|
chartBase.series[seriesKey].color ||
|
||||||
|
getVizColorForIndex(i, theme),
|
||||||
overallValue,
|
overallValue,
|
||||||
data:
|
data:
|
||||||
timeseriesData?.buckets.map((bucket) => {
|
timeseriesData?.buckets.map((bucket) => {
|
||||||
|
@ -46,6 +49,7 @@ export function transformDataToMetricsChart(
|
||||||
};
|
};
|
||||||
}) || [],
|
}) || [],
|
||||||
};
|
};
|
||||||
}),
|
})
|
||||||
|
: [],
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -98,6 +98,9 @@ Object {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"size": 1,
|
"size": 1,
|
||||||
|
"sort": Object {
|
||||||
|
"_score": "desc",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
"terminate_after": 1,
|
"terminate_after": 1,
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,7 +13,6 @@ import {
|
||||||
} from '../../../common/elasticsearch_fieldnames';
|
} from '../../../common/elasticsearch_fieldnames';
|
||||||
import { rangeQuery } from '../../../../observability/server';
|
import { rangeQuery } from '../../../../observability/server';
|
||||||
import { Setup } from '../helpers/setup_request';
|
import { Setup } from '../helpers/setup_request';
|
||||||
import { getProcessorEventForTransactions } from '../helpers/transactions';
|
|
||||||
|
|
||||||
interface ServiceAgent {
|
interface ServiceAgent {
|
||||||
agent?: {
|
agent?: {
|
||||||
|
@ -29,13 +28,11 @@ interface ServiceAgent {
|
||||||
export async function getServiceAgent({
|
export async function getServiceAgent({
|
||||||
serviceName,
|
serviceName,
|
||||||
setup,
|
setup,
|
||||||
searchAggregatedTransactions,
|
|
||||||
start,
|
start,
|
||||||
end,
|
end,
|
||||||
}: {
|
}: {
|
||||||
serviceName: string;
|
serviceName: string;
|
||||||
setup: Setup;
|
setup: Setup;
|
||||||
searchAggregatedTransactions: boolean;
|
|
||||||
start: number;
|
start: number;
|
||||||
end: number;
|
end: number;
|
||||||
}) {
|
}) {
|
||||||
|
@ -46,7 +43,7 @@ export async function getServiceAgent({
|
||||||
apm: {
|
apm: {
|
||||||
events: [
|
events: [
|
||||||
ProcessorEvent.error,
|
ProcessorEvent.error,
|
||||||
getProcessorEventForTransactions(searchAggregatedTransactions),
|
ProcessorEvent.transaction,
|
||||||
ProcessorEvent.metric,
|
ProcessorEvent.metric,
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
@ -71,6 +68,9 @@ export async function getServiceAgent({
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
sort: {
|
||||||
|
_score: 'desc' as const,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,6 @@ describe('services queries', () => {
|
||||||
getServiceAgent({
|
getServiceAgent({
|
||||||
serviceName: 'foo',
|
serviceName: 'foo',
|
||||||
setup,
|
setup,
|
||||||
searchAggregatedTransactions: false,
|
|
||||||
start: 0,
|
start: 0,
|
||||||
end: 50000,
|
end: 50000,
|
||||||
})
|
})
|
||||||
|
|
|
@ -191,18 +191,9 @@ const serviceAgentRoute = createApmServerRoute({
|
||||||
const { serviceName } = params.path;
|
const { serviceName } = params.path;
|
||||||
const { start, end } = params.query;
|
const { start, end } = params.query;
|
||||||
|
|
||||||
const searchAggregatedTransactions = await getSearchAggregatedTransactions({
|
|
||||||
apmEventClient: setup.apmEventClient,
|
|
||||||
config: setup.config,
|
|
||||||
start,
|
|
||||||
end,
|
|
||||||
kuery: '',
|
|
||||||
});
|
|
||||||
|
|
||||||
return getServiceAgent({
|
return getServiceAgent({
|
||||||
serviceName,
|
serviceName,
|
||||||
setup,
|
setup,
|
||||||
searchAggregatedTransactions,
|
|
||||||
start,
|
start,
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -14,10 +14,10 @@ import { PromiseReturnType } from '../../../plugins/observability/typings/common
|
||||||
import { createApmUser, APM_TEST_PASSWORD, ApmUser } from './authentication';
|
import { createApmUser, APM_TEST_PASSWORD, ApmUser } from './authentication';
|
||||||
import { APMFtrConfigName } from '../configs';
|
import { APMFtrConfigName } from '../configs';
|
||||||
import { createApmApiClient } from './apm_api_supertest';
|
import { createApmApiClient } from './apm_api_supertest';
|
||||||
import { registry } from './registry';
|
import { RegistryProvider } from './registry';
|
||||||
import { synthtraceEsClientService } from './synthtrace_es_client_service';
|
import { synthtraceEsClientService } from './synthtrace_es_client_service';
|
||||||
|
|
||||||
interface Config {
|
export interface ApmFtrConfig {
|
||||||
name: APMFtrConfigName;
|
name: APMFtrConfigName;
|
||||||
license: 'basic' | 'trial';
|
license: 'basic' | 'trial';
|
||||||
kibanaConfig?: Record<string, string | string[]>;
|
kibanaConfig?: Record<string, string | string[]>;
|
||||||
|
@ -58,7 +58,7 @@ async function getApmApiClient(
|
||||||
|
|
||||||
export type CreateTestConfig = ReturnType<typeof createTestConfig>;
|
export type CreateTestConfig = ReturnType<typeof createTestConfig>;
|
||||||
|
|
||||||
export function createTestConfig(config: Config) {
|
export function createTestConfig(config: ApmFtrConfig) {
|
||||||
const { license, name, kibanaConfig } = config;
|
const { license, name, kibanaConfig } = config;
|
||||||
|
|
||||||
return async ({ readConfigFile }: FtrConfigProviderContext) => {
|
return async ({ readConfigFile }: FtrConfigProviderContext) => {
|
||||||
|
@ -70,13 +70,14 @@ export function createTestConfig(config: Config) {
|
||||||
const servers = xPackAPITestsConfig.get('servers');
|
const servers = xPackAPITestsConfig.get('servers');
|
||||||
const kibanaServer = servers.kibana;
|
const kibanaServer = servers.kibana;
|
||||||
|
|
||||||
registry.init(config.name);
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
testFiles: [require.resolve('../tests')],
|
testFiles: [require.resolve('../tests')],
|
||||||
servers,
|
servers,
|
||||||
|
servicesRequiredForTestAnalysis: ['apmFtrConfig', 'registry'],
|
||||||
services: {
|
services: {
|
||||||
...services,
|
...services,
|
||||||
|
apmFtrConfig: () => config,
|
||||||
|
registry: RegistryProvider,
|
||||||
synthtraceEsClient: synthtraceEsClientService,
|
synthtraceEsClient: synthtraceEsClientService,
|
||||||
apmApiClient: async (context: InheritedFtrProviderContext) => {
|
apmApiClient: async (context: InheritedFtrProviderContext) => {
|
||||||
const security = context.getService('security');
|
const security = context.getService('security');
|
||||||
|
|
|
@ -28,6 +28,9 @@ interface RunCondition {
|
||||||
archives: ArchiveName[];
|
archives: ArchiveName[];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function RegistryProvider({ getService }: FtrProviderContext) {
|
||||||
|
const apmFtrConfig = getService('apmFtrConfig');
|
||||||
|
|
||||||
const callbacks: Array<
|
const callbacks: Array<
|
||||||
RunCondition & {
|
RunCondition & {
|
||||||
runs: Array<{
|
runs: Array<{
|
||||||
|
@ -36,8 +39,6 @@ const callbacks: Array<
|
||||||
}
|
}
|
||||||
> = [];
|
> = [];
|
||||||
|
|
||||||
let configName: APMFtrConfigName | undefined;
|
|
||||||
|
|
||||||
let running: boolean = false;
|
let running: boolean = false;
|
||||||
|
|
||||||
function when(
|
function when(
|
||||||
|
@ -96,22 +97,15 @@ when.skip = (
|
||||||
when(title, conditions, callback, true);
|
when(title, conditions, callback, true);
|
||||||
};
|
};
|
||||||
|
|
||||||
export const registry = {
|
const registry = {
|
||||||
init: (config: APMFtrConfigName) => {
|
|
||||||
configName = config;
|
|
||||||
callbacks.length = 0;
|
|
||||||
running = false;
|
|
||||||
},
|
|
||||||
when,
|
when,
|
||||||
run: (context: FtrProviderContext) => {
|
run: () => {
|
||||||
if (!configName) {
|
|
||||||
throw new Error(`registry was not init() before running`);
|
|
||||||
}
|
|
||||||
running = true;
|
running = true;
|
||||||
const esArchiver = context.getService('esArchiver');
|
|
||||||
const logger = context.getService('log');
|
|
||||||
|
|
||||||
const supertest = context.getService('legacySupertestAsApmWriteUser');
|
const esArchiver = getService('esArchiver');
|
||||||
|
const logger = getService('log');
|
||||||
|
|
||||||
|
const supertest = getService('legacySupertestAsApmWriteUser');
|
||||||
|
|
||||||
const logWithTimer = () => {
|
const logWithTimer = () => {
|
||||||
const start = process.hrtime();
|
const start = process.hrtime();
|
||||||
|
@ -137,7 +131,7 @@ export const registry = {
|
||||||
const groupsForConfig = byConfig[config];
|
const groupsForConfig = byConfig[config];
|
||||||
// register suites for other configs, but skip them so tests are marked as such
|
// register suites for other configs, but skip them so tests are marked as such
|
||||||
// and their snapshots are not marked as obsolete
|
// and their snapshots are not marked as obsolete
|
||||||
(config === configName ? describe : describe.skip)(config, () => {
|
(config === apmFtrConfig.name ? describe : describe.skip)(config, () => {
|
||||||
groupsForConfig.forEach((group) => {
|
groupsForConfig.forEach((group) => {
|
||||||
const { runs, ...condition } = group;
|
const { runs, ...condition } = group;
|
||||||
|
|
||||||
|
@ -193,3 +187,6 @@ export const registry = {
|
||||||
running = false;
|
running = false;
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
return registry;
|
||||||
|
}
|
||||||
|
|
|
@ -8,9 +8,9 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
const { end } = archives[archiveName];
|
const { end } = archives[archiveName];
|
||||||
|
|
|
@ -18,7 +18,6 @@ import {
|
||||||
} from '@kbn/rule-data-utils';
|
} from '@kbn/rule-data-utils';
|
||||||
import { merge, omit } from 'lodash';
|
import { merge, omit } from 'lodash';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
interface Alert {
|
interface Alert {
|
||||||
schedule: {
|
schedule: {
|
||||||
|
@ -36,6 +35,7 @@ interface Alert {
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmWriteUser');
|
const supertest = getService('legacySupertestAsApmWriteUser');
|
||||||
const es = getService('es');
|
const es = getService('es');
|
||||||
|
|
||||||
|
|
|
@ -14,10 +14,10 @@ import type { RawSearchStrategyClientParams } from '../../../../plugins/apm/comm
|
||||||
import { APM_SEARCH_STRATEGIES } from '../../../../plugins/apm/common/search_strategies/constants';
|
import { APM_SEARCH_STRATEGIES } from '../../../../plugins/apm/common/search_strategies/constants';
|
||||||
|
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { parseBfetchResponse } from '../../common/utils/parse_b_fetch';
|
import { parseBfetchResponse } from '../../common/utils/parse_b_fetch';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const retry = getService('retry');
|
const retry = getService('retry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
};
|
};
|
||||||
|
|
||||||
registry.when('failed transactions without data', { config: 'trial', archives: [] }, () => {
|
registry.when('failed transactions without data', { config: 'trial', archives: [] }, () => {
|
||||||
it('queries the search strategy and returns results', async () => {
|
it.skip('queries the search strategy and returns results', async () => {
|
||||||
const intialResponse = await supertest
|
const intialResponse = await supertest
|
||||||
.post(`/internal/bsearch`)
|
.post(`/internal/bsearch`)
|
||||||
.set('kbn-xsrf', 'foo')
|
.set('kbn-xsrf', 'foo')
|
||||||
|
@ -134,7 +134,7 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
});
|
});
|
||||||
|
|
||||||
registry.when('failed transactions with data', { config: 'trial', archives: ['8.0.0'] }, () => {
|
registry.when('failed transactions with data', { config: 'trial', archives: ['8.0.0'] }, () => {
|
||||||
it('queries the search strategy and returns results', async () => {
|
it.skip('queries the search strategy and returns results', async () => {
|
||||||
const intialResponse = await supertest
|
const intialResponse = await supertest
|
||||||
.post(`/internal/bsearch`)
|
.post(`/internal/bsearch`)
|
||||||
.set('kbn-xsrf', 'foo')
|
.set('kbn-xsrf', 'foo')
|
||||||
|
|
|
@ -14,10 +14,10 @@ import type { RawSearchStrategyClientParams } from '../../../../plugins/apm/comm
|
||||||
import { APM_SEARCH_STRATEGIES } from '../../../../plugins/apm/common/search_strategies/constants';
|
import { APM_SEARCH_STRATEGIES } from '../../../../plugins/apm/common/search_strategies/constants';
|
||||||
|
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { parseBfetchResponse } from '../../common/utils/parse_b_fetch';
|
import { parseBfetchResponse } from '../../common/utils/parse_b_fetch';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const retry = getService('retry');
|
const retry = getService('retry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
|
@ -144,7 +144,7 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
{ config: 'trial', archives: ['8.0.0'] },
|
{ config: 'trial', archives: ['8.0.0'] },
|
||||||
() => {
|
() => {
|
||||||
// putting this into a single `it` because the responses depend on each other
|
// putting this into a single `it` because the responses depend on each other
|
||||||
it('queries the search strategy and returns results', async () => {
|
it.skip('queries the search strategy and returns results', async () => {
|
||||||
const intialResponse = await supertest
|
const intialResponse = await supertest
|
||||||
.post(`/internal/bsearch`)
|
.post(`/internal/bsearch`)
|
||||||
.set('kbn-xsrf', 'foo')
|
.set('kbn-xsrf', 'foo')
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('CSM Services without data', { config: 'trial', archives: [] }, () => {
|
registry.when('CSM Services without data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumHasDataApiTests({ getService }: FtrProviderContext) {
|
export default function rumHasDataApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('has_rum_data without data', { config: 'trial', archives: [] }, () => {
|
registry.when('has_rum_data without data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumJsErrorsApiTests({ getService }: FtrProviderContext) {
|
export default function rumJsErrorsApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('CSM JS errors with data', { config: 'trial', archives: [] }, () => {
|
registry.when('CSM JS errors with data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('CSM long task metrics without data', { config: 'trial', archives: [] }, () => {
|
registry.when('CSM long task metrics without data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('UX page load dist without data', { config: 'trial', archives: [] }, () => {
|
registry.when('UX page load dist without data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('CSM page views without data', { config: 'trial', archives: [] }, () => {
|
registry.when('CSM page views without data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('CSM url search api without data', { config: 'trial', archives: [] }, () => {
|
registry.when('CSM url search api without data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
export default function rumServicesApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when('CSM web core vitals without data', { config: 'trial', archives: [] }, () => {
|
registry.when('CSM web core vitals without data', { config: 'trial', archives: [] }, () => {
|
||||||
|
|
|
@ -6,10 +6,10 @@
|
||||||
*/
|
*/
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { dataConfig, generateData } from './generate_data';
|
import { dataConfig, generateData } from './generate_data';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { dataConfig, generateData } from './generate_data';
|
import { dataConfig, generateData } from './generate_data';
|
||||||
import { NodeType, BackendNode } from '../../../../plugins/apm/common/connections';
|
import { NodeType, BackendNode } from '../../../../plugins/apm/common/connections';
|
||||||
import { roundNumber } from '../../utils';
|
import { roundNumber } from '../../utils';
|
||||||
|
@ -15,6 +14,7 @@ import { roundNumber } from '../../utils';
|
||||||
type TopDependencies = APIReturnType<'GET /internal/apm/backends/top_backends'>;
|
type TopDependencies = APIReturnType<'GET /internal/apm/backends/top_backends'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -11,9 +11,9 @@ import { LatencyAggregationType } from '../../../../plugins/apm/common/latency_a
|
||||||
import { isFiniteNumber } from '../../../../plugins/apm/common/utils/is_finite_number';
|
import { isFiniteNumber } from '../../../../plugins/apm/common/utils/is_finite_number';
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -13,13 +13,13 @@ import {
|
||||||
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { config, generateData } from './generate_data';
|
import { config, generateData } from './generate_data';
|
||||||
|
|
||||||
type ErrorsDistribution =
|
type ErrorsDistribution =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/errors/distribution'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/errors/distribution'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -12,11 +12,11 @@ import {
|
||||||
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
type ErrorGroups = APIReturnType<'GET /internal/apm/services/{serviceName}/errors'>['errorGroups'];
|
type ErrorGroups = APIReturnType<'GET /internal/apm/services/{serviceName}/errors'>['errorGroups'];
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -11,13 +11,13 @@ import {
|
||||||
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { config, generateData } from './generate_data';
|
import { config, generateData } from './generate_data';
|
||||||
|
|
||||||
type ErrorsDistribution =
|
type ErrorsDistribution =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/errors/{groupId}'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/errors/{groupId}'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -8,9 +8,9 @@ import expect from '@kbn/expect';
|
||||||
import { PROCESSOR_EVENT } from '../../../../plugins/apm/common/elasticsearch_fieldnames';
|
import { PROCESSOR_EVENT } from '../../../../plugins/apm/common/elasticsearch_fieldnames';
|
||||||
import { ProcessorEvent } from '../../../../plugins/apm/common/processor_event';
|
import { ProcessorEvent } from '../../../../plugins/apm/common/processor_event';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const esClient = getService('es');
|
const esClient = getService('es');
|
||||||
|
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../common/ftr_provider_context';
|
import { FtrProviderContext } from '../common/ftr_provider_context';
|
||||||
import { registry } from '../common/registry';
|
|
||||||
|
|
||||||
export default function featureControlsTests({ getService }: FtrProviderContext) {
|
export default function featureControlsTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmWriteUser');
|
const supertest = getService('legacySupertestAsApmWriteUser');
|
||||||
const supertestWithoutAuth = getService('supertestWithoutAuth');
|
const supertestWithoutAuth = getService('supertestWithoutAuth');
|
||||||
const security = getService('security');
|
const security = getService('security');
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('supertest');
|
const supertest = getService('supertest');
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
||||||
|
|
|
@ -6,10 +6,9 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { FtrProviderContext } from '../common/ftr_provider_context';
|
import { FtrProviderContext } from '../common/ftr_provider_context';
|
||||||
import { registry } from '../common/registry';
|
|
||||||
|
|
||||||
export default function apmApiIntegrationTests(providerContext: FtrProviderContext) {
|
export default function apmApiIntegrationTests({ getService, loadTestFile }: FtrProviderContext) {
|
||||||
const { loadTestFile } = providerContext;
|
const registry = getService('registry');
|
||||||
|
|
||||||
describe('APM API tests', function () {
|
describe('APM API tests', function () {
|
||||||
this.tags('ciGroup1');
|
this.tags('ciGroup1');
|
||||||
|
@ -263,6 +262,6 @@ export default function apmApiIntegrationTests(providerContext: FtrProviderConte
|
||||||
loadTestFile(require.resolve('./dependencies/top_dependencies'));
|
loadTestFile(require.resolve('./dependencies/top_dependencies'));
|
||||||
});
|
});
|
||||||
|
|
||||||
registry.run(providerContext);
|
registry.run();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,11 +7,11 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
|
|
||||||
export default function customLinksTests({ getService }: FtrProviderContext) {
|
export default function customLinksTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
@ -49,7 +49,7 @@ export default function customLinksTests({ getService }: FtrProviderContext) {
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
expect(status).to.be(200);
|
expect(status).to.be(200);
|
||||||
expect(body._inspect?.length).to.be(1);
|
expect(body._inspect).not.to.be.empty();
|
||||||
|
|
||||||
// @ts-expect-error
|
// @ts-expect-error
|
||||||
expect(Object.keys(body._inspect[0])).to.eql([
|
expect(Object.keys(body._inspect[0])).to.eql([
|
||||||
|
|
|
@ -11,9 +11,9 @@ import { LatencyAggregationType } from '../../../../plugins/apm/common/latency_a
|
||||||
import { isFiniteNumber } from '../../../../plugins/apm/common/utils/is_finite_number';
|
import { isFiniteNumber } from '../../../../plugins/apm/common/utils/is_finite_number';
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,6 @@ import { first } from 'lodash';
|
||||||
import { MetricsChartsByAgentAPIResponse } from '../../../../plugins/apm/server/lib/metrics/get_metrics_chart_data_by_agent';
|
import { MetricsChartsByAgentAPIResponse } from '../../../../plugins/apm/server/lib/metrics/get_metrics_chart_data_by_agent';
|
||||||
import { GenericMetricsChart } from '../../../../plugins/apm/server/lib/metrics/transform_metrics_chart';
|
import { GenericMetricsChart } from '../../../../plugins/apm/server/lib/metrics/transform_metrics_chart';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
interface ChartResponse {
|
interface ChartResponse {
|
||||||
body: MetricsChartsByAgentAPIResponse;
|
body: MetricsChartsByAgentAPIResponse;
|
||||||
|
@ -18,6 +17,7 @@ interface ChartResponse {
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
registry.when(
|
registry.when(
|
||||||
|
|
|
@ -8,9 +8,9 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
|
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
|
|
||||||
registry.when(
|
registry.when(
|
||||||
|
|
|
@ -8,11 +8,11 @@ import { service, timerange } from '@elastic/apm-synthtrace';
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { meanBy, sumBy } from 'lodash';
|
import { meanBy, sumBy } from 'lodash';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { roundNumber } from '../../utils';
|
import { roundNumber } from '../../utils';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
|
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
|
@ -12,9 +12,9 @@ import { isEmpty, orderBy, uniq } from 'lodash';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function serviceMapsApiTests({ getService }: FtrProviderContext) {
|
export default function serviceMapsApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
const supertestAsApmReadUserWithoutMlAccess = getService(
|
const supertestAsApmReadUserWithoutMlAccess = getService(
|
||||||
'legacySupertestAsApmReadUserWithoutMlAccess'
|
'legacySupertestAsApmReadUserWithoutMlAccess'
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
exports[`APM API tests basic apm_8.0.0 Instance details when data is loaded fetch instance details return the correct data 1`] = `
|
exports[`APM API tests basic apm_8.0.0 Instance details when data is loaded fetch instance details return the correct data 1`] = `
|
||||||
Object {
|
Object {
|
||||||
"@timestamp": "2021-08-03T06:57:50.204Z",
|
|
||||||
"agent": Object {
|
"agent": Object {
|
||||||
"ephemeral_id": "2745d454-f57f-4473-a09b-fe6bef295860",
|
"ephemeral_id": "2745d454-f57f-4473-a09b-fe6bef295860",
|
||||||
"name": "java",
|
"name": "java",
|
||||||
|
|
|
@ -17,10 +17,10 @@ import {
|
||||||
import { APIReturnType } from '../../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import archives from '../../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
||||||
import { registry } from '../../../common/registry';
|
|
||||||
import { apmDependenciesMapping, createServiceDependencyDocs } from './es_utils';
|
import { apmDependenciesMapping, createServiceDependencyDocs } from './es_utils';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const es = getService('es');
|
const es = getService('es');
|
||||||
|
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
*/
|
*/
|
||||||
import url from 'url';
|
import url from 'url';
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
|
import { omit } from 'lodash';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { getServiceNodeIds } from './get_service_node_ids';
|
import { getServiceNodeIds } from './get_service_node_ids';
|
||||||
import { createApmApiClient } from '../../common/apm_api_supertest';
|
import { createApmApiClient } from '../../common/apm_api_supertest';
|
||||||
|
@ -17,6 +17,7 @@ type ServiceOverviewInstanceDetails =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/service_overview_instances/details/{serviceNodeName}'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/service_overview_instances/details/{serviceNodeName}'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
const apmApiSupertest = createApmApiClient(supertest);
|
const apmApiSupertest = createApmApiClient(supertest);
|
||||||
|
|
||||||
|
@ -77,7 +78,7 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
});
|
});
|
||||||
|
|
||||||
it('return the correct data', () => {
|
it('return the correct data', () => {
|
||||||
expectSnapshot(response.body).toMatch();
|
expectSnapshot(omit(response.body, '@timestamp')).toMatch();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,11 +13,11 @@ import { isFiniteNumber } from '../../../../plugins/apm/common/utils/is_finite_n
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { createApmApiClient } from '../../common/apm_api_supertest';
|
import { createApmApiClient } from '../../common/apm_api_supertest';
|
||||||
import { getServiceNodeIds } from './get_service_node_ids';
|
import { getServiceNodeIds } from './get_service_node_ids';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
const apmApiSupertest = createApmApiClient(supertest);
|
const apmApiSupertest = createApmApiClient(supertest);
|
||||||
|
|
||||||
|
|
|
@ -13,13 +13,13 @@ import { APIReturnType } from '../../../../plugins/apm/public/services/rest/crea
|
||||||
import { isFiniteNumber } from '../../../../plugins/apm/common/utils/is_finite_number';
|
import { isFiniteNumber } from '../../../../plugins/apm/common/utils/is_finite_number';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
import { LatencyAggregationType } from '../../../../plugins/apm/common/latency_aggregation_types';
|
import { LatencyAggregationType } from '../../../../plugins/apm/common/latency_aggregation_types';
|
||||||
import { ENVIRONMENT_ALL } from '../../../../plugins/apm/common/environment_filter_values';
|
import { ENVIRONMENT_ALL } from '../../../../plugins/apm/common/environment_filter_values';
|
||||||
import { SERVICE_NODE_NAME_MISSING } from '../../../../plugins/apm/common/service_nodes';
|
import { SERVICE_NODE_NAME_MISSING } from '../../../../plugins/apm/common/service_nodes';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -8,9 +8,9 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -9,11 +9,11 @@ import expect from '@kbn/expect';
|
||||||
import { merge, cloneDeep, isPlainObject } from 'lodash';
|
import { merge, cloneDeep, isPlainObject } from 'lodash';
|
||||||
import { JsonObject } from '@kbn/utility-types';
|
import { JsonObject } from '@kbn/utility-types';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
const DEFAULT_INDEX_NAME = 'observability-annotations';
|
const DEFAULT_INDEX_NAME = 'observability-annotations';
|
||||||
|
|
||||||
export default function annotationApiTests({ getService }: FtrProviderContext) {
|
export default function annotationApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertestRead = getService('legacySupertestAsApmReadUser');
|
const supertestRead = getService('legacySupertestAsApmReadUser');
|
||||||
const supertestWrite = getService('legacySupertestAsApmAnnotationsWriteUser');
|
const supertestWrite = getService('legacySupertestAsApmAnnotationsWriteUser');
|
||||||
const es = getService('es');
|
const es = getService('es');
|
||||||
|
|
|
@ -9,9 +9,9 @@ import expect from '@kbn/expect';
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
|
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function annotationApiTests({ getService }: FtrProviderContext) {
|
export default function annotationApiTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const es = getService('es');
|
const es = getService('es');
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,6 @@ import {
|
||||||
} from '../../../../../plugins/apm/public/services/rest/createCallApmApi';
|
} from '../../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { RecursivePartial } from '../../../../../plugins/apm/typings/common';
|
import { RecursivePartial } from '../../../../../plugins/apm/typings/common';
|
||||||
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
||||||
import { registry } from '../../../common/registry';
|
|
||||||
import { config, generateData } from './generate_data';
|
import { config, generateData } from './generate_data';
|
||||||
import { getErrorGroupIds } from './get_error_group_ids';
|
import { getErrorGroupIds } from './get_error_group_ids';
|
||||||
|
|
||||||
|
@ -23,6 +22,7 @@ type ErrorGroupsDetailedStatistics =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/error_groups/detailed_statistics'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/error_groups/detailed_statistics'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -12,13 +12,13 @@ import {
|
||||||
} from '../../../../../plugins/apm/public/services/rest/createCallApmApi';
|
} from '../../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { RecursivePartial } from '../../../../../plugins/apm/typings/common';
|
import { RecursivePartial } from '../../../../../plugins/apm/typings/common';
|
||||||
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
||||||
import { registry } from '../../../common/registry';
|
|
||||||
import { generateData, config } from './generate_data';
|
import { generateData, config } from './generate_data';
|
||||||
|
|
||||||
type ErrorGroupsMainStatistics =
|
type ErrorGroupsMainStatistics =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/error_groups/main_statistics'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/error_groups/main_statistics'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -9,9 +9,9 @@ import expect from '@kbn/expect';
|
||||||
import url from 'url';
|
import url from 'url';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -9,9 +9,9 @@ import expect from '@kbn/expect';
|
||||||
import url from 'url';
|
import url from 'url';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import url from 'url';
|
import url from 'url';
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
|
@ -17,6 +16,7 @@ type ServicesDetailedStatisticsReturn =
|
||||||
APIReturnType<'GET /internal/apm/services/detailed_statistics'>;
|
APIReturnType<'GET /internal/apm/services/detailed_statistics'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -16,12 +16,12 @@ import {
|
||||||
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
} from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
import { RecursivePartial } from '../../../../plugins/apm/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { roundNumber } from '../../utils';
|
import { roundNumber } from '../../utils';
|
||||||
|
|
||||||
type ThroughputReturn = APIReturnType<'GET /internal/apm/services/{serviceName}/throughput'>;
|
type ThroughputReturn = APIReturnType<'GET /internal/apm/services/{serviceName}/throughput'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
@ -64,7 +64,7 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
});
|
});
|
||||||
|
|
||||||
registry.when(
|
registry.when(
|
||||||
'data is loaded',
|
'Throughput when data is loaded',
|
||||||
{ config: 'basic', archives: ['apm_mappings_only_8.0.0'] },
|
{ config: 'basic', archives: ['apm_mappings_only_8.0.0'] },
|
||||||
() => {
|
() => {
|
||||||
describe('Throughput chart api', () => {
|
describe('Throughput chart api', () => {
|
||||||
|
|
|
@ -12,10 +12,10 @@ import { APIReturnType } from '../../../../plugins/apm/public/services/rest/crea
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { ENVIRONMENT_ALL } from '../../../../plugins/apm/common/environment_filter_values';
|
import { ENVIRONMENT_ALL } from '../../../../plugins/apm/common/environment_filter_values';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
|
|
|
@ -8,9 +8,9 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -5,15 +5,17 @@
|
||||||
* 2.0.
|
* 2.0.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import { inspect } from 'util';
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { omit, orderBy } from 'lodash';
|
import { omit, orderBy } from 'lodash';
|
||||||
import { AgentConfigurationIntake } from '../../../../plugins/apm/common/agent_configuration/configuration_types';
|
import { AgentConfigurationIntake } from '../../../../plugins/apm/common/agent_configuration/configuration_types';
|
||||||
import { AgentConfigSearchParams } from '../../../../plugins/apm/server/routes/settings/agent_configuration';
|
import { AgentConfigSearchParams } from '../../../../plugins/apm/server/routes/settings/agent_configuration';
|
||||||
|
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function agentConfigurationTests({ getService }: FtrProviderContext) {
|
export default function agentConfigurationTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
|
|
||||||
const log = getService('log');
|
const log = getService('log');
|
||||||
|
@ -133,19 +135,19 @@ export default function agentConfigurationTests({ getService }: FtrProviderConte
|
||||||
|
|
||||||
it('can create and delete config', async () => {
|
it('can create and delete config', async () => {
|
||||||
// assert that config does not exist
|
// assert that config does not exist
|
||||||
await expectStatusCode(() => searchConfigurations(searchParams), 404);
|
await expectMissing(() => searchConfigurations(searchParams));
|
||||||
|
|
||||||
// create config
|
// create config
|
||||||
await createConfiguration(newConfig);
|
await createConfiguration(newConfig);
|
||||||
|
|
||||||
// assert that config now exists
|
// assert that config now exists
|
||||||
await expectStatusCode(() => searchConfigurations(searchParams), 200);
|
await expectExists(() => searchConfigurations(searchParams));
|
||||||
|
|
||||||
// delete config
|
// delete config
|
||||||
await deleteConfiguration(newConfig);
|
await deleteConfiguration(newConfig);
|
||||||
|
|
||||||
// assert that config was deleted
|
// assert that config was deleted
|
||||||
await expectStatusCode(() => searchConfigurations(searchParams), 404);
|
await expectMissing(() => searchConfigurations(searchParams));
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('when a configuration exists', () => {
|
describe('when a configuration exists', () => {
|
||||||
|
@ -439,6 +441,16 @@ export default function agentConfigurationTests({ getService }: FtrProviderConte
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
async function expectExists(fn: () => ReturnType<typeof searchConfigurations>) {
|
||||||
|
const response = await fn();
|
||||||
|
expect(response.body).not.to.be.empty();
|
||||||
|
}
|
||||||
|
|
||||||
|
async function expectMissing(fn: () => ReturnType<typeof searchConfigurations>) {
|
||||||
|
const response = await fn();
|
||||||
|
expect(response.body).to.be.empty();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function waitFor(cb: () => Promise<boolean>, retries = 50): Promise<boolean> {
|
async function waitFor(cb: () => Promise<boolean>, retries = 50): Promise<boolean> {
|
||||||
|
@ -464,10 +476,23 @@ async function expectStatusCode(
|
||||||
}>,
|
}>,
|
||||||
statusCode: number
|
statusCode: number
|
||||||
) {
|
) {
|
||||||
|
let res;
|
||||||
try {
|
try {
|
||||||
const res = await fn();
|
res = await fn();
|
||||||
expect(res.status).to.be(statusCode);
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
expect(e.res.status).to.be(statusCode);
|
if (e && e.res && e.res.status) {
|
||||||
|
if (e.res.status === statusCode) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
throw new Error(
|
||||||
|
`Expected a [${statusCode}] response, got [${e.res.status}]: ${inspect(e.res)}`
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
throw new Error(
|
||||||
|
`Unexpected rejection value, expected error with .res response property: ${inspect(e)}`
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
expect(res.status).to.be(statusCode);
|
||||||
|
}
|
||||||
|
|
|
@ -6,10 +6,10 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { registry } from '../../../common/registry';
|
|
||||||
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
||||||
|
|
||||||
export default function apiTest({ getService }: FtrProviderContext) {
|
export default function apiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const noAccessUser = getService('legacySupertestAsNoAccessUser');
|
const noAccessUser = getService('legacySupertestAsNoAccessUser');
|
||||||
const readUser = getService('legacySupertestAsApmReadUser');
|
const readUser = getService('legacySupertestAsApmReadUser');
|
||||||
const writeUser = getService('legacySupertestAsApmWriteUser');
|
const writeUser = getService('legacySupertestAsApmWriteUser');
|
||||||
|
|
|
@ -6,10 +6,10 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { registry } from '../../../common/registry';
|
|
||||||
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
||||||
|
|
||||||
export default function apiTest({ getService }: FtrProviderContext) {
|
export default function apiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const noAccessUser = getService('legacySupertestAsNoAccessUser');
|
const noAccessUser = getService('legacySupertestAsNoAccessUser');
|
||||||
|
|
||||||
function getJobs() {
|
function getJobs() {
|
||||||
|
|
|
@ -6,10 +6,10 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { registry } from '../../../common/registry';
|
|
||||||
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
||||||
|
|
||||||
export default function apiTest({ getService }: FtrProviderContext) {
|
export default function apiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmReadUser = getService('legacySupertestAsApmReadUser');
|
const apmReadUser = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
function getJobs() {
|
function getJobs() {
|
||||||
|
|
|
@ -7,10 +7,10 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { countBy } from 'lodash';
|
import { countBy } from 'lodash';
|
||||||
import { registry } from '../../../common/registry';
|
|
||||||
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../../common/ftr_provider_context';
|
||||||
|
|
||||||
export default function apiTest({ getService }: FtrProviderContext) {
|
export default function apiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const legacyWriteUserClient = getService('legacySupertestAsApmWriteUser');
|
const legacyWriteUserClient = getService('legacySupertestAsApmWriteUser');
|
||||||
|
|
||||||
|
|
|
@ -8,10 +8,10 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { CustomLink } from '../../../../plugins/apm/common/custom_link/custom_link_types';
|
import { CustomLink } from '../../../../plugins/apm/common/custom_link/custom_link_types';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { ApmApiError } from '../../common/apm_api_supertest';
|
import { ApmApiError } from '../../common/apm_api_supertest';
|
||||||
|
|
||||||
export default function customLinksTests({ getService }: FtrProviderContext) {
|
export default function customLinksTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const log = getService('log');
|
const log = getService('log');
|
||||||
|
|
||||||
|
|
|
@ -10,9 +10,9 @@ import {
|
||||||
TRANSACTION_TYPE,
|
TRANSACTION_TYPE,
|
||||||
} from '../../../../plugins/apm/common/elasticsearch_fieldnames';
|
} from '../../../../plugins/apm/common/elasticsearch_fieldnames';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function suggestionsTests({ getService }: FtrProviderContext) {
|
export default function suggestionsTests({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
||||||
|
|
|
@ -10,10 +10,10 @@ import { meanBy, sumBy } from 'lodash';
|
||||||
import { BackendNode, ServiceNode } from '../../../../plugins/apm/common/connections';
|
import { BackendNode, ServiceNode } from '../../../../plugins/apm/common/connections';
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { roundNumber } from '../../utils';
|
import { roundNumber } from '../../utils';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -10,10 +10,10 @@ import { meanBy, sumBy } from 'lodash';
|
||||||
import { LatencyAggregationType } from '../../../../plugins/apm/common/latency_aggregation_types';
|
import { LatencyAggregationType } from '../../../../plugins/apm/common/latency_aggregation_types';
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { roundNumber } from '../../utils';
|
import { roundNumber } from '../../utils';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -9,9 +9,9 @@ import expect from '@kbn/expect';
|
||||||
import { sortBy } from 'lodash';
|
import { sortBy } from 'lodash';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -8,10 +8,10 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { createApmApiClient, SupertestReturnType } from '../../common/apm_api_supertest';
|
import { createApmApiClient, SupertestReturnType } from '../../common/apm_api_supertest';
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('supertest');
|
const supertest = getService('supertest');
|
||||||
const apmApiSupertest = createApmApiClient(supertest);
|
const apmApiSupertest = createApmApiClient(supertest);
|
||||||
|
|
||||||
|
|
|
@ -8,9 +8,9 @@
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -12,12 +12,12 @@ import moment from 'moment';
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
type ErrorRate =
|
type ErrorRate =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/charts/error_rate'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/charts/error_rate'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -12,12 +12,12 @@ import { APIReturnType } from '../../../../plugins/apm/public/services/rest/crea
|
||||||
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
import { PromiseReturnType } from '../../../../plugins/observability/typings/common';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
type LatencyChartReturnType =
|
type LatencyChartReturnType =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/charts/latency'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/charts/latency'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
|
|
||||||
const endpoint = 'POST /internal/apm/latency/overall_distribution';
|
const endpoint = 'POST /internal/apm/latency/overall_distribution';
|
||||||
|
|
|
@ -7,11 +7,13 @@
|
||||||
|
|
||||||
import expect from '@kbn/expect';
|
import expect from '@kbn/expect';
|
||||||
import qs from 'querystring';
|
import qs from 'querystring';
|
||||||
|
import { sortBy } from 'lodash';
|
||||||
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives_metadata from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
@ -31,11 +33,13 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
{ config: 'basic', archives: [] },
|
{ config: 'basic', archives: [] },
|
||||||
() => {
|
() => {
|
||||||
it('handles empty state', async () => {
|
it('handles empty state', async () => {
|
||||||
const response = await supertest.get(url);
|
const response: {
|
||||||
|
body: APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/traces/samples'>;
|
||||||
|
status: number;
|
||||||
|
} = await supertest.get(url);
|
||||||
|
|
||||||
expect(response.status).to.be(200);
|
expect(response.status).to.be(200);
|
||||||
|
|
||||||
expect(response.body.noHits).to.be(true);
|
|
||||||
expect(response.body.traceSamples.length).to.be(0);
|
expect(response.body.traceSamples.length).to.be(0);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -45,14 +49,17 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
'Transaction trace samples response structure when data is loaded',
|
'Transaction trace samples response structure when data is loaded',
|
||||||
{ config: 'basic', archives: [archiveName] },
|
{ config: 'basic', archives: [archiveName] },
|
||||||
() => {
|
() => {
|
||||||
let response: any;
|
let response: {
|
||||||
|
body: APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/traces/samples'>;
|
||||||
|
status: number;
|
||||||
|
};
|
||||||
|
|
||||||
before(async () => {
|
before(async () => {
|
||||||
response = await supertest.get(url);
|
response = await supertest.get(url);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('returns the correct metadata', () => {
|
it('returns the correct metadata', () => {
|
||||||
expect(response.status).to.be(200);
|
expect(response.status).to.be(200);
|
||||||
expect(response.body.noHits).to.be(false);
|
|
||||||
expect(response.body.traceSamples.length).to.be.greaterThan(0);
|
expect(response.body.traceSamples.length).to.be.greaterThan(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -63,51 +70,15 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
it('returns the correct samples', () => {
|
it('returns the correct samples', () => {
|
||||||
const { traceSamples } = response.body;
|
const { traceSamples } = response.body;
|
||||||
|
|
||||||
expectSnapshot(traceSamples.sort((sample: any) => sample.traceId)).toMatchInline(`
|
expectSnapshot(sortBy(traceSamples, (sample) => sample.traceId)).toMatchInline(`
|
||||||
Array [
|
Array [
|
||||||
Object {
|
|
||||||
"traceId": "5267685738bf75b68b16bf3426ba858c",
|
|
||||||
"transactionId": "5223f43bc3154c5a",
|
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "9a84d15e5a0e32098d569948474e8e2f",
|
|
||||||
"transactionId": "b85db78a9824107b",
|
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "e123f0466fa092f345d047399db65aa2",
|
|
||||||
"transactionId": "c0af16286229d811",
|
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "4943691f87b7eb97d442d1ef33ca65c7",
|
|
||||||
"transactionId": "f6f4677d731e57c5",
|
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "66bd97c457f5675665397ac9201cc050",
|
|
||||||
"transactionId": "592b60cc9ddabb15",
|
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "10d882b7118870015815a27c37892375",
|
|
||||||
"transactionId": "0cf9db0b1e321239",
|
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "6d85d8f1bc4bbbfdb19cdba59d2fc164",
|
|
||||||
"transactionId": "d0a16f0f52f25d6b",
|
|
||||||
},
|
|
||||||
Object {
|
Object {
|
||||||
"traceId": "0996b09e42ad4dbfaaa6a069326c6e66",
|
"traceId": "0996b09e42ad4dbfaaa6a069326c6e66",
|
||||||
"transactionId": "5721364b179716d0",
|
"transactionId": "5721364b179716d0",
|
||||||
},
|
},
|
||||||
Object {
|
Object {
|
||||||
"traceId": "d9415d102c0634e1e8fa53ceef07be70",
|
"traceId": "10d882b7118870015815a27c37892375",
|
||||||
"transactionId": "fab91c68c9b1c42b",
|
"transactionId": "0cf9db0b1e321239",
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "ca7a2072e7974ae84b5096706c6b6255",
|
|
||||||
"transactionId": "92ab7f2ef11685dd",
|
|
||||||
},
|
|
||||||
Object {
|
|
||||||
"traceId": "d250e2a1bad40f78653d8858db65326b",
|
|
||||||
"transactionId": "6fcd12599c1b57fa",
|
|
||||||
},
|
},
|
||||||
Object {
|
Object {
|
||||||
"traceId": "2ca82e99453c58584c4b8de9a8ba4ec3",
|
"traceId": "2ca82e99453c58584c4b8de9a8ba4ec3",
|
||||||
|
@ -117,14 +88,50 @@ export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
"traceId": "45b3d1a86003938687a55e49bf3610b8",
|
"traceId": "45b3d1a86003938687a55e49bf3610b8",
|
||||||
"transactionId": "a707456bda99ee98",
|
"transactionId": "a707456bda99ee98",
|
||||||
},
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "4943691f87b7eb97d442d1ef33ca65c7",
|
||||||
|
"transactionId": "f6f4677d731e57c5",
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "5267685738bf75b68b16bf3426ba858c",
|
||||||
|
"transactionId": "5223f43bc3154c5a",
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "66bd97c457f5675665397ac9201cc050",
|
||||||
|
"transactionId": "592b60cc9ddabb15",
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "6d85d8f1bc4bbbfdb19cdba59d2fc164",
|
||||||
|
"transactionId": "d0a16f0f52f25d6b",
|
||||||
|
},
|
||||||
Object {
|
Object {
|
||||||
"traceId": "7483bd52150d1c93a858c60bfdd0c138",
|
"traceId": "7483bd52150d1c93a858c60bfdd0c138",
|
||||||
"transactionId": "e20e701ff93bdb55",
|
"transactionId": "e20e701ff93bdb55",
|
||||||
},
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "9a84d15e5a0e32098d569948474e8e2f",
|
||||||
|
"transactionId": "b85db78a9824107b",
|
||||||
|
},
|
||||||
Object {
|
Object {
|
||||||
"traceId": "a21ea39b41349a4614a86321d965c957",
|
"traceId": "a21ea39b41349a4614a86321d965c957",
|
||||||
"transactionId": "338bd7908cbf7f2d",
|
"transactionId": "338bd7908cbf7f2d",
|
||||||
},
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "ca7a2072e7974ae84b5096706c6b6255",
|
||||||
|
"transactionId": "92ab7f2ef11685dd",
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "d250e2a1bad40f78653d8858db65326b",
|
||||||
|
"transactionId": "6fcd12599c1b57fa",
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "d9415d102c0634e1e8fa53ceef07be70",
|
||||||
|
"transactionId": "fab91c68c9b1c42b",
|
||||||
|
},
|
||||||
|
Object {
|
||||||
|
"traceId": "e123f0466fa092f345d047399db65aa2",
|
||||||
|
"transactionId": "c0af16286229d811",
|
||||||
|
},
|
||||||
]
|
]
|
||||||
`);
|
`);
|
||||||
});
|
});
|
||||||
|
|
|
@ -12,13 +12,13 @@ import { LatencyAggregationType } from '../../../../plugins/apm/common/latency_a
|
||||||
import { asPercent } from '../../../../plugins/apm/common/utils/formatters';
|
import { asPercent } from '../../../../plugins/apm/common/utils/formatters';
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
import { roundNumber } from '../../utils';
|
import { roundNumber } from '../../utils';
|
||||||
|
|
||||||
type TransactionsGroupsDetailedStatistics =
|
type TransactionsGroupsDetailedStatistics =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/groups/detailed_statistics'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/groups/detailed_statistics'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const apmApiClient = getService('apmApiClient');
|
const apmApiClient = getService('apmApiClient');
|
||||||
const synthtraceEsClient = getService('synthtraceEsClient');
|
const synthtraceEsClient = getService('synthtraceEsClient');
|
||||||
|
|
||||||
|
|
|
@ -11,12 +11,12 @@ import url from 'url';
|
||||||
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
import { APIReturnType } from '../../../../plugins/apm/public/services/rest/createCallApmApi';
|
||||||
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
import { FtrProviderContext } from '../../common/ftr_provider_context';
|
||||||
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
import archives from '../../common/fixtures/es_archiver/archives_metadata';
|
||||||
import { registry } from '../../common/registry';
|
|
||||||
|
|
||||||
type TransactionsGroupsPrimaryStatistics =
|
type TransactionsGroupsPrimaryStatistics =
|
||||||
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/groups/main_statistics'>;
|
APIReturnType<'GET /internal/apm/services/{serviceName}/transactions/groups/main_statistics'>;
|
||||||
|
|
||||||
export default function ApiTest({ getService }: FtrProviderContext) {
|
export default function ApiTest({ getService }: FtrProviderContext) {
|
||||||
|
const registry = getService('registry');
|
||||||
const supertest = getService('legacySupertestAsApmReadUser');
|
const supertest = getService('legacySupertestAsApmReadUser');
|
||||||
|
|
||||||
const archiveName = 'apm_8.0.0';
|
const archiveName = 'apm_8.0.0';
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue