fix: [SIG-575]: no data in new trace explorer page specific scenario (#4748)

Co-authored-by: Vishal Sharma <makeavish786@gmail.com>
This commit is contained in:
Vikrant Gupta 2024-03-28 16:34:09 +05:30 committed by GitHub
parent 31b1d58a70
commit 5959963b9d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 64 additions and 6 deletions

View File

@ -1,3 +1,5 @@
import { DataTypes } from 'types/api/queryBuilder/queryAutocompleteResponse';
import { OptionsQuery } from './types'; import { OptionsQuery } from './types';
export const URL_OPTIONS = 'options'; export const URL_OPTIONS = 'options';
@ -7,3 +9,46 @@ export const defaultOptionsQuery: OptionsQuery = {
maxLines: 2, maxLines: 2,
format: 'list', format: 'list',
}; };
export const defaultTraceSelectedColumns = [
{
key: 'serviceName',
dataType: DataTypes.String,
type: 'tag',
isColumn: true,
isJSON: false,
id: 'serviceName--string--tag--true',
},
{
key: 'name',
dataType: DataTypes.String,
type: 'tag',
isColumn: true,
isJSON: false,
id: 'name--string--tag--true',
},
{
key: 'durationNano',
dataType: DataTypes.Float64,
type: 'tag',
isColumn: true,
isJSON: false,
id: 'durationNano--float64--tag--true',
},
{
key: 'httpMethod',
dataType: DataTypes.String,
type: 'tag',
isColumn: true,
isJSON: false,
id: 'httpMethod--string--tag--true',
},
{
key: 'responseStatusCode',
dataType: DataTypes.String,
type: 'tag',
isColumn: true,
isJSON: false,
id: 'responseStatusCode--string--tag--true',
},
];

View File

@ -16,7 +16,11 @@ import {
} from 'types/api/queryBuilder/queryAutocompleteResponse'; } from 'types/api/queryBuilder/queryAutocompleteResponse';
import { DataSource } from 'types/common/queryBuilder'; import { DataSource } from 'types/common/queryBuilder';
import { defaultOptionsQuery, URL_OPTIONS } from './constants'; import {
defaultOptionsQuery,
defaultTraceSelectedColumns,
URL_OPTIONS,
} from './constants';
import { InitialOptions, OptionsMenuConfig, OptionsQuery } from './types'; import { InitialOptions, OptionsMenuConfig, OptionsQuery } from './types';
import { getOptionsFromKeys } from './utils'; import { getOptionsFromKeys } from './utils';
@ -124,20 +128,29 @@ const useOptionsMenu = ({
{ queryKey: [debouncedSearchText, isFocused], enabled: isFocused }, { queryKey: [debouncedSearchText, isFocused], enabled: isFocused },
); );
const searchedAttributeKeys = useMemo( const searchedAttributeKeys = useMemo(() => {
() => searchedAttributesData?.payload?.attributeKeys || [], if (searchedAttributesData?.payload?.attributeKeys?.length) {
[searchedAttributesData?.payload?.attributeKeys], return searchedAttributesData.payload.attributeKeys;
); }
if (dataSource === DataSource.TRACES) {
return defaultTraceSelectedColumns;
}
return [];
}, [dataSource, searchedAttributesData?.payload?.attributeKeys]);
const initialOptionsQuery: OptionsQuery = useMemo( const initialOptionsQuery: OptionsQuery = useMemo(
() => ({ () => ({
...defaultOptionsQuery, ...defaultOptionsQuery,
...initialOptions, ...initialOptions,
// eslint-disable-next-line no-nested-ternary
selectColumns: initialOptions?.selectColumns selectColumns: initialOptions?.selectColumns
? initialSelectedColumns ? initialSelectedColumns
: dataSource === DataSource.TRACES
? defaultTraceSelectedColumns
: defaultOptionsQuery.selectColumns, : defaultOptionsQuery.selectColumns,
}), }),
[initialOptions, initialSelectedColumns], [dataSource, initialOptions, initialSelectedColumns],
); );
const selectedColumnKeys = useMemo( const selectedColumnKeys = useMemo(