Browse Source

only make it possible to scan for older logs if there is at least one non failing selector

Erik Sundell 7 years ago
parent
commit
d9d84f45bc
2 changed files with 16 additions and 2 deletions
  1. 2 0
      public/app/features/explore/Explore.tsx
  2. 14 2
      public/app/features/explore/Logs.tsx

+ 2 - 0
public/app/features/explore/Explore.tsx

@@ -836,6 +836,7 @@ export class Explore extends React.PureComponent<ExploreProps, ExploreState> {
     const graphLoading = queryTransactions.some(qt => qt.resultType === 'Graph' && !qt.done);
     const graphLoading = queryTransactions.some(qt => qt.resultType === 'Graph' && !qt.done);
     const tableLoading = queryTransactions.some(qt => qt.resultType === 'Table' && !qt.done);
     const tableLoading = queryTransactions.some(qt => qt.resultType === 'Table' && !qt.done);
     const logsLoading = queryTransactions.some(qt => qt.resultType === 'Logs' && !qt.done);
     const logsLoading = queryTransactions.some(qt => qt.resultType === 'Logs' && !qt.done);
+    const logExpressionExists = queryTransactions.some(qt => qt.resultType === 'Logs' && qt.query.expr && !qt.error);
     const loading = queryTransactions.some(qt => !qt.done);
     const loading = queryTransactions.some(qt => !qt.done);
 
 
     return (
     return (
@@ -969,6 +970,7 @@ export class Explore extends React.PureComponent<ExploreProps, ExploreState> {
                           range={range}
                           range={range}
                           scanning={scanning}
                           scanning={scanning}
                           scanRange={scanRange}
                           scanRange={scanRange}
+                          logExpressionExists={logExpressionExists}
                         />
                         />
                       </Panel>
                       </Panel>
                     )}
                     )}

+ 14 - 2
public/app/features/explore/Logs.tsx

@@ -140,6 +140,7 @@ interface LogsProps {
   range?: RawTimeRange;
   range?: RawTimeRange;
   scanning?: boolean;
   scanning?: boolean;
   scanRange?: RawTimeRange;
   scanRange?: RawTimeRange;
+  logExpressionExists?: boolean;
   onChangeTime?: (range: RawTimeRange) => void;
   onChangeTime?: (range: RawTimeRange) => void;
   onClickLabel?: (label: string, value: string) => void;
   onClickLabel?: (label: string, value: string) => void;
   onStartScanning?: () => void;
   onStartScanning?: () => void;
@@ -239,7 +240,17 @@ export default class Logs extends PureComponent<LogsProps, LogsState> {
   };
   };
 
 
   render() {
   render() {
-    const { className = '', data, loading = false, onClickLabel, position, range, scanning, scanRange } = this.props;
+    const {
+      className = '',
+      data,
+      loading = false,
+      onClickLabel,
+      position,
+      range,
+      scanning,
+      scanRange,
+      logExpressionExists,
+    } = this.props;
     const { dedup, deferLogs, hiddenLogLevels, renderAll, showLocalTime, showUtc } = this.state;
     const { dedup, deferLogs, hiddenLogLevels, renderAll, showLocalTime, showUtc } = this.state;
     let { showLabels } = this.state;
     let { showLabels } = this.state;
     const hasData = data && data.rows && data.rows.length > 0;
     const hasData = data && data.rows && data.rows.length > 0;
@@ -357,7 +368,8 @@ export default class Logs extends PureComponent<LogsProps, LogsState> {
             ))}
             ))}
           {hasData && deferLogs && <span>Rendering {dedupedData.rows.length} rows...</span>}
           {hasData && deferLogs && <span>Rendering {dedupedData.rows.length} rows...</span>}
         </div>
         </div>
-        {!loading &&
+        {logExpressionExists &&
+          !loading &&
           !hasData &&
           !hasData &&
           !scanning && (
           !scanning && (
             <div className="logs-nodata">
             <div className="logs-nodata">