import {DataSection} from 'sentry/components/events/styles'; import Link from 'sentry/components/links/link'; import {t, tct} from 'sentry/locale'; import {Event} from 'sentry/types'; import {formatPercentage} from 'sentry/utils/formatters'; import useOrganization from 'sentry/utils/useOrganization'; import {normalizeUrl} from 'sentry/utils/withDomainRequired'; import { DisplayModes, transactionSummaryRouteWithQuery, } from 'sentry/views/performance/transactionSummary/utils'; type EventStatisticalDetectorMessageProps = { event: Event; }; function EventStatisticalDetectorMessage({event}: EventStatisticalDetectorMessageProps) { const organization = useOrganization(); const transactionName = event?.occurrence?.evidenceData?.transaction; const transactionSummaryLink = transactionSummaryRouteWithQuery({ orgSlug: organization.slug, transaction: transactionName, query: {}, projectID: event.projectID, display: DisplayModes.TREND, }); const detectionTime = new Date(event?.occurrence?.evidenceData?.breakpoint * 1000); // TODO: This messaging should respect selected locale in user settings return (
{tct( '[detected] Based on the transaction [transactionName], there was a [amount] increase in duration (P95) around [date] at [time] UTC. Overall operation percentage changes indicate what may have changed in the regression.', { detected: {t('Detected:')}, transactionName: ( {transactionName} ), amount: formatPercentage( event?.occurrence?.evidenceData?.trendPercentage - 1 ), date: detectionTime.toLocaleDateString(undefined, { month: 'short', day: 'numeric', }), time: detectionTime.toLocaleTimeString(undefined, { hour12: true, hour: 'numeric', minute: 'numeric', }), } )}
); } export default EventStatisticalDetectorMessage;