diff --git a/public/app/plugins/datasource/loki/backendResultTransformer.test.ts b/public/app/plugins/datasource/loki/backendResultTransformer.test.ts index 1b713005141..098b7d276c3 100644 --- a/public/app/plugins/datasource/loki/backendResultTransformer.test.ts +++ b/public/app/plugins/datasource/loki/backendResultTransformer.test.ts @@ -91,6 +91,37 @@ describe('loki backendResultTransformer', () => { expect(result).toEqual(expected); }); + it('applies maxLines correctly', () => { + const response: DataQueryResponse = { data: [cloneDeep(inputFrame)] }; + + const frame1: DataFrame = transformBackendResult( + response, + [ + { + refId: 'A', + expr: LOKI_EXPR, + }, + ], + [] + ).data[0]; + + expect(frame1.meta?.limit).toBeUndefined(); + + const frame2 = transformBackendResult( + response, + [ + { + refId: 'A', + expr: LOKI_EXPR, + maxLines: 42, + }, + ], + [] + ).data[0]; + + expect(frame2.meta?.limit).toBe(42); + }); + it('processed derived fields correctly', () => { const input: DataFrame = { length: 1, diff --git a/public/app/plugins/datasource/loki/backendResultTransformer.ts b/public/app/plugins/datasource/loki/backendResultTransformer.ts index 93504c1caef..29c9b7a0f3b 100644 --- a/public/app/plugins/datasource/loki/backendResultTransformer.ts +++ b/public/app/plugins/datasource/loki/backendResultTransformer.ts @@ -27,6 +27,7 @@ function processStreamFrame( ): DataFrame { const meta: QueryResultMeta = { preferredVisualisationType: 'logs', + limit: query?.maxLines, searchWords: query !== undefined ? getHighlighterExpressionsFromQuery(formatQuery(query.expr)) : undefined, custom: { // used by logs_model