1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import {Location} from 'history';
- import {t} from 'sentry/locale';
- import {NewQuery, Organization} from 'sentry/types';
- import EventView from 'sentry/utils/discover/eventView';
- export const UNPARAMETERIZED_TRANSACTION = '<< unparameterized >>'; // Represents 'other' transactions with high cardinality names that were dropped on the metrics dataset.
- const SHOW_UNPARAM_BANNER = 'showUnparameterizedBanner';
- enum DiscoverQueryPageSource {
- PERFORMANCE = 'performance',
- DISCOVER = 'discover',
- }
- export function createUnnamedTransactionsDiscoverTarget(props: {
- location: Location;
- organization: Organization;
- source?: DiscoverQueryPageSource;
- }) {
- const fields =
- props.source === DiscoverQueryPageSource.DISCOVER
- ? ['transaction', 'project', 'transaction.source', 'epm()']
- : ['transaction', 'project', 'transaction.source', 'epm()', 'p50()', 'p95()'];
- const query: NewQuery = {
- id: undefined,
- name:
- props.source === DiscoverQueryPageSource.DISCOVER
- ? t('Unparameterized Transactions')
- : t('Performance - Unparameterized Transactions'),
- query: 'event.type:transaction transaction.source:"url"',
- projects: [],
- fields,
- version: 2,
- };
- const discoverEventView = EventView.fromNewQueryWithLocation(
- query,
- props.location
- ).withSorts([{field: 'epm', kind: 'desc'}]);
- const target = discoverEventView.getResultsViewUrlTarget(props.organization.slug);
- target.query[SHOW_UNPARAM_BANNER] = 'true';
- return target;
- }
|