diff --git a/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.test.tsx b/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.test.tsx index 696529261a6..5bf430ba53e 100644 --- a/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.test.tsx +++ b/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.test.tsx @@ -64,6 +64,7 @@ describe('TraceQLSearch', () => { ], }, } as TempoDatasource; + datasource.isStreamingSearchEnabled = () => false; datasource.languageProvider = new TempoLanguageProvider(datasource); let query: TempoQuery = { refId: 'A', @@ -216,6 +217,7 @@ describe('TraceQLSearch', () => { ], }, } as TempoDatasource; + datasource.isStreamingSearchEnabled = () => false; datasource.languageProvider = new TempoLanguageProvider(datasource); await act(async () => { const { container } = render( diff --git a/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.tsx b/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.tsx index 64adda814ac..5c886b87c12 100644 --- a/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.tsx +++ b/public/app/plugins/datasource/tempo/SearchTraceQLEditor/TraceQLSearch.tsx @@ -253,7 +253,11 @@ const TraceQLSearch = ({ datasource, query, onChange, onClearResults, app, addVa Edit in TraceQL - + {error ? ( diff --git a/public/app/plugins/datasource/tempo/traceql/QueryEditor.tsx b/public/app/plugins/datasource/tempo/traceql/QueryEditor.tsx index 1259a9becc0..1684ffd61bb 100644 --- a/public/app/plugins/datasource/tempo/traceql/QueryEditor.tsx +++ b/public/app/plugins/datasource/tempo/traceql/QueryEditor.tsx @@ -69,7 +69,11 @@ export function QueryEditor(props: Props) { onRunQuery={props.onRunQuery} />
- +
); diff --git a/public/app/plugins/datasource/tempo/traceql/TempoQueryBuilderOptions.tsx b/public/app/plugins/datasource/tempo/traceql/TempoQueryBuilderOptions.tsx index 5723032aae2..b0662d47d64 100644 --- a/public/app/plugins/datasource/tempo/traceql/TempoQueryBuilderOptions.tsx +++ b/public/app/plugins/datasource/tempo/traceql/TempoQueryBuilderOptions.tsx @@ -11,6 +11,7 @@ import { TempoQuery } from '../types'; interface Props { onChange: (value: TempoQuery) => void; query: Partial & TempoQuery; + isStreaming: boolean; } /** @@ -26,7 +27,7 @@ const parseIntWithFallback = (val: string, fallback: number) => { return isNaN(parsed) ? fallback : parsed; }; -export const TempoQueryBuilderOptions = React.memo(({ onChange, query }) => { +export const TempoQueryBuilderOptions = React.memo(({ onChange, query, isStreaming }) => { if (!query.hasOwnProperty('limit')) { query.limit = DEFAULT_LIMIT; } @@ -53,6 +54,7 @@ export const TempoQueryBuilderOptions = React.memo(({ onChange, query }) `Spans Limit: ${query.spss || DEFAULT_SPSS}`, `Table Format: ${query.tableType === SearchTableType.Traces ? 'Traces' : 'Spans'}`, `Step: ${query.step || 'auto'}`, + `Streaming: ${isStreaming ? 'Enabled' : 'Disabled'}`, ]; return ( @@ -104,10 +106,33 @@ export const TempoQueryBuilderOptions = React.memo(({ onChange, query }) value={query.step} /> + } tooltipInteractive> +
{isStreaming ? 'Enabled' : 'Disabled'}
+
); }); +const StreamingTooltip = () => { + return ( +
+ + Indicates if streaming is currently enabled. Streaming allows you to view partial query results before the + entire query completes. + + + Learn more + +
+ ); +}; + TempoQueryBuilderOptions.displayName = 'TempoQueryBuilderOptions';