* [APM] Fix anomalies not showing up on transaction charts * Added API tests to check transaction groups charts for anomaly data * Improve test names and assertions from PR feedback * Updated the transaction groups chart API to make `environment` a required param while making `uiFilters` optional * updates the basic API tests for transaction_groups/charts with the required `environment` param * makes uiFIltersES default to [] on core setup and removes SetupUIFilters type * fixes vertical shade * - replaces uiFiltersES with esFilter & uiFilters and cleans up related code around these - deduplicates the required environment in the transaction_groups/charts API * updates basic apm_api_integration tests * pr feedback * updates api test snapshots with correct anomaly data * removed environment query param from useTransactionCharts and ensures it's included in uiFilters returned from useUrlParams Co-authored-by: Oliver Gupte <olivergupte@gmail.com>
40 lines
982 B
TypeScript
40 lines
982 B
TypeScript
/*
|
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
* or more contributor license agreements. Licensed under the Elastic License;
|
|
* you may not use this file except in compliance with the Elastic License.
|
|
*/
|
|
|
|
import { Setup, SetupTimeRange } from '../../server/lib/helpers/setup_request';
|
|
import { SERVICE_NODE_NAME } from '../../common/elasticsearch_fieldnames';
|
|
import { mergeProjection } from './util/merge_projection';
|
|
import { getMetricsProjection } from './metrics';
|
|
|
|
export function getServiceNodesProjection({
|
|
setup,
|
|
serviceName,
|
|
serviceNodeName,
|
|
}: {
|
|
setup: Setup & SetupTimeRange;
|
|
serviceName: string;
|
|
serviceNodeName?: string;
|
|
}) {
|
|
return mergeProjection(
|
|
getMetricsProjection({
|
|
setup,
|
|
serviceName,
|
|
serviceNodeName,
|
|
}),
|
|
{
|
|
body: {
|
|
aggs: {
|
|
nodes: {
|
|
terms: {
|
|
field: SERVICE_NODE_NAME,
|
|
},
|
|
},
|
|
},
|
|
},
|
|
}
|
|
);
|
|
}
|