{actions}
{renderPermissions?.isDateTimeEnabled && (
diff --git a/frontend/src/container/LogDetailedView/TableView.tsx b/frontend/src/container/LogDetailedView/TableView.tsx
index 0d861bcebe..a7b0391ff7 100644
--- a/frontend/src/container/LogDetailedView/TableView.tsx
+++ b/frontend/src/container/LogDetailedView/TableView.tsx
@@ -91,7 +91,7 @@ function TableView({
const columns: ColumnsType = [
{
title: 'Action',
- width: 15,
+ width: 30,
render: (fieldData: Record): JSX.Element | null => {
const fieldKey = fieldData.field.split('.').slice(-1);
if (!RESTRICTED_FIELDS.includes(fieldKey[0])) {
diff --git a/frontend/src/container/LogsTopNav/index.tsx b/frontend/src/container/LogsTopNav/index.tsx
index 8eaec2e1f0..462d85a7e9 100644
--- a/frontend/src/container/LogsTopNav/index.tsx
+++ b/frontend/src/container/LogsTopNav/index.tsx
@@ -1,24 +1,72 @@
import { PlayCircleFilled } from '@ant-design/icons';
+import {
+ initialQueryBuilderFormValuesMap,
+ PANEL_TYPES,
+} from 'constants/queryBuilder';
+import { queryParamNamesMap } from 'constants/queryBuilderQueryNames';
+import { REACT_QUERY_KEY } from 'constants/reactQueryKeys';
import ROUTES from 'constants/routes';
-import { liveLogsCompositeQuery } from 'container/LiveLogs/constants';
+import {
+ constructCompositeQuery,
+ defaultLiveQueryDataConfig,
+} from 'container/LiveLogs/constants';
+import { QueryHistoryState } from 'container/LiveLogs/types';
import LocalTopNav from 'container/LocalTopNav';
+import { useQueryBuilder } from 'hooks/queryBuilder/useQueryBuilder';
import { useCallback, useMemo } from 'react';
+import { useQueryClient } from 'react-query';
import { useHistory } from 'react-router-dom';
+import { ErrorResponse, SuccessResponse } from 'types/api';
+import { MetricRangePayloadProps } from 'types/api/metrics/getQueryRange';
import { LiveButtonStyled } from './styles';
function LogsTopNav(): JSX.Element {
const history = useHistory();
+ const queryClient = useQueryClient();
+
+ const { stagedQuery, panelType } = useQueryBuilder();
const handleGoLive = useCallback(() => {
- const JSONCompositeQuery = encodeURIComponent(
- JSON.stringify(liveLogsCompositeQuery),
- );
+ if (!stagedQuery) return;
- const path = `${ROUTES.LIVE_LOGS}?${JSONCompositeQuery}`;
+ let queryHistoryState: QueryHistoryState | null = null;
- history.push(path);
- }, [history]);
+ const compositeQuery = constructCompositeQuery({
+ query: stagedQuery,
+ initialQueryData: initialQueryBuilderFormValuesMap.logs,
+ customQueryData: defaultLiveQueryDataConfig,
+ });
+
+ const isListView =
+ panelType === PANEL_TYPES.LIST && stagedQuery.builder.queryData[0];
+
+ if (isListView) {
+ const [graphQuery, listQuery] = queryClient.getQueriesData<
+ SuccessResponse | ErrorResponse
+ >({
+ queryKey: REACT_QUERY_KEY.GET_QUERY_RANGE,
+ active: true,
+ });
+
+ queryHistoryState = {
+ graphQueryPayload:
+ graphQuery && graphQuery[1]
+ ? graphQuery[1].payload?.data.result || []
+ : [],
+ listQueryPayload:
+ listQuery && listQuery[1]
+ ? listQuery[1].payload?.data.newResult.data.result || []
+ : [],
+ };
+ }
+
+ const JSONCompositeQuery = encodeURIComponent(JSON.stringify(compositeQuery));
+
+ const path = `${ROUTES.LIVE_LOGS}?${queryParamNamesMap.compositeQuery}=${JSONCompositeQuery}`;
+
+ history.push(path, queryHistoryState);
+ }, [history, panelType, queryClient, stagedQuery]);
const liveButton = useMemo(
() => (
diff --git a/frontend/src/hooks/queryBuilder/useShareBuilderUrl.ts b/frontend/src/hooks/queryBuilder/useShareBuilderUrl.ts
index d79f6531ee..ad09bc58e4 100644
--- a/frontend/src/hooks/queryBuilder/useShareBuilderUrl.ts
+++ b/frontend/src/hooks/queryBuilder/useShareBuilderUrl.ts
@@ -8,7 +8,7 @@ import { useQueryBuilder } from './useQueryBuilder';
export type UseShareBuilderUrlParams = { defaultValue: Query };
export const useShareBuilderUrl = (defaultQuery: Query): void => {
- const { redirectWithQueryBuilderData, resetQuery } = useQueryBuilder();
+ const { redirectWithQueryBuilderData } = useQueryBuilder();
const urlQuery = useUrlQuery();
const compositeQuery = useGetCompositeQueryParam();
@@ -18,11 +18,4 @@ export const useShareBuilderUrl = (defaultQuery: Query): void => {
redirectWithQueryBuilderData(defaultQuery);
}
}, [defaultQuery, urlQuery, redirectWithQueryBuilderData, compositeQuery]);
-
- useEffect(
- () => (): void => {
- resetQuery();
- },
- [resetQuery],
- );
};