diff --git a/public/app/core/logs_model.ts b/public/app/core/logs_model.ts index d7f2fef4d06..3d06ee05164 100644 --- a/public/app/core/logs_model.ts +++ b/public/app/core/logs_model.ts @@ -680,6 +680,8 @@ export function queryLogsVolume( rawLogsVolume = rawLogsVolume.concat(dataQueryResponse.data.map(toDataFrame)); }, error: (error) => { + const errorMessage = error.data?.message || error.statusText || error.message; + console.error('Log volume query failed with error: ', errorMessage); observer.next({ state: LoadingState.Error, error: error, diff --git a/public/app/features/explore/LogsVolumePanel.test.tsx b/public/app/features/explore/LogsVolumePanel.test.tsx index d5311fd4dcd..de591e10095 100644 --- a/public/app/features/explore/LogsVolumePanel.test.tsx +++ b/public/app/features/explore/LogsVolumePanel.test.tsx @@ -40,10 +40,11 @@ describe('LogsVolumePanel', () => { expect(screen.getByText('ExploreGraph')).toBeInTheDocument(); }); - it('shows error message', () => { + it('shows warning message without details', () => { renderPanel({ state: LoadingState.Error, error: { data: { message: 'Test error message' } }, data: [] }); expect(screen.getByText('Failed to load log volume for this query')).toBeInTheDocument(); - expect(screen.getByText('Test error message')).toBeInTheDocument(); + expect(screen.getByText('Please check console logs for more details.')).toBeInTheDocument(); + expect(screen.queryByText('Test error message')).not.toBeInTheDocument(); }); it('does not show the panel when there is no volume data', () => { diff --git a/public/app/features/explore/LogsVolumePanel.tsx b/public/app/features/explore/LogsVolumePanel.tsx index 195a9f13740..ca19e023d72 100644 --- a/public/app/features/explore/LogsVolumePanel.tsx +++ b/public/app/features/explore/LogsVolumePanel.tsx @@ -27,8 +27,8 @@ export function LogsVolumePanel(props: Props) { return null; } else if (logsVolumeData?.error) { return ( - - {logsVolumeData.error.data?.message || logsVolumeData.error.statusText || logsVolumeData.error.message} + + Please check console logs for more details. ); } else if (logsVolumeData?.state === LoadingState.Loading) {