loki: remove fullRangeLogsVolume feature flag (#45286)

pull/45383/head
Gábor Farkas 3 years ago committed by GitHub
parent 9a12b3ea00
commit a612087c63
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      packages/grafana-data/src/types/featureToggles.gen.ts
  2. 7
      pkg/services/featuremgmt/registry.go
  3. 4
      pkg/services/featuremgmt/toggles_gen.go
  4. 67
      public/app/plugins/datasource/loki/datasource.test.ts
  5. 4
      public/app/plugins/datasource/loki/datasource.ts

@ -31,7 +31,6 @@ export interface FeatureToggles {
tempoBackendSearch?: boolean;
tempoServiceGraph?: boolean;
lokiBackendMode?: boolean;
fullRangeLogsVolume?: boolean;
accesscontrol?: boolean;
prometheus_azure_auth?: boolean;
influxdbBackendMigration?: boolean;

@ -83,13 +83,6 @@ var (
State: FeatureStateAlpha,
FrontendOnly: true,
},
{
Name: "fullRangeLogsVolume",
Description: "Show full range logs volume in explore",
State: FeatureStateBeta,
FrontendOnly: true,
Expression: "true", // Enabled by default
},
{
Name: "accesscontrol",
Description: "Support robust access control",

@ -63,10 +63,6 @@ const (
// Loki datasource works as backend datasource
FlagLokiBackendMode = "lokiBackendMode"
// FlagFullRangeLogsVolume
// Show full range logs volume in explore
FlagFullRangeLogsVolume = "fullRangeLogsVolume"
// FlagAccesscontrol
// Support robust access control
FlagAccesscontrol = "accesscontrol"

@ -12,7 +12,7 @@ import {
MutableDataFrame,
toUtc,
} from '@grafana/data';
import { BackendSrvRequest, FetchResponse, config } from '@grafana/runtime';
import { BackendSrvRequest, FetchResponse } from '@grafana/runtime';
import LokiDatasource, { RangeQueryOptions } from './datasource';
import { LokiQuery, LokiResponse, LokiResultType } from './types';
@ -29,12 +29,6 @@ jest.mock('@grafana/runtime', () => ({
// @ts-ignore
...jest.requireActual('@grafana/runtime'),
getBackendSrv: () => backendSrv,
config: {
...(jest.requireActual('@grafana/runtime') as unknown as any).config,
featureToggles: {
fullRangeLogsVolume: true,
},
},
}));
const rawRange = {
@ -972,55 +966,34 @@ describe('LokiDatasource', () => {
});
describe('logs volume data provider', () => {
describe('when feature toggle is enabled', () => {
beforeEach(() => {
config.featureToggles.fullRangeLogsVolume = true;
});
it('creates provider for logs query', () => {
const ds = createLokiDSForTests();
const options = getQueryOptions<LokiQuery>({
targets: [{ expr: '{label=value}', refId: 'A' }],
});
expect(ds.getLogsVolumeDataProvider(options)).toBeDefined();
it('creates provider for logs query', () => {
const ds = createLokiDSForTests();
const options = getQueryOptions<LokiQuery>({
targets: [{ expr: '{label=value}', refId: 'A' }],
});
it('does not create provider for metrics query', () => {
const ds = createLokiDSForTests();
const options = getQueryOptions<LokiQuery>({
targets: [{ expr: 'rate({label=value}[1m])', refId: 'A' }],
});
expect(ds.getLogsVolumeDataProvider(options)).toBeDefined();
});
expect(ds.getLogsVolumeDataProvider(options)).not.toBeDefined();
it('does not create provider for metrics query', () => {
const ds = createLokiDSForTests();
const options = getQueryOptions<LokiQuery>({
targets: [{ expr: 'rate({label=value}[1m])', refId: 'A' }],
});
it('creates provider if at least one query is a logs query', () => {
const ds = createLokiDSForTests();
const options = getQueryOptions<LokiQuery>({
targets: [
{ expr: 'rate({label=value}[1m])', refId: 'A' },
{ expr: '{label=value}', refId: 'B' },
],
});
expect(ds.getLogsVolumeDataProvider(options)).toBeDefined();
});
expect(ds.getLogsVolumeDataProvider(options)).not.toBeDefined();
});
describe('when feature toggle is disabled', () => {
beforeEach(() => {
config.featureToggles.fullRangeLogsVolume = false;
it('creates provider if at least one query is a logs query', () => {
const ds = createLokiDSForTests();
const options = getQueryOptions<LokiQuery>({
targets: [
{ expr: 'rate({label=value}[1m])', refId: 'A' },
{ expr: '{label=value}', refId: 'B' },
],
});
it('does not create a provider for logs query', () => {
const ds = createLokiDSForTests();
const options = getQueryOptions<LokiQuery>({
targets: [{ expr: '{label=value}', refId: 'A' }],
});
expect(ds.getLogsVolumeDataProvider(options)).not.toBeDefined();
});
expect(ds.getLogsVolumeDataProvider(options)).toBeDefined();
});
});

@ -122,10 +122,6 @@ export class LokiDatasource
}
getLogsVolumeDataProvider(request: DataQueryRequest<LokiQuery>): Observable<DataQueryResponse> | undefined {
if (!config.featureToggles.fullRangeLogsVolume) {
return undefined;
}
const isLogsVolumeAvailable = request.targets.some((target) => target.expr && !isMetricsQuery(target.expr));
if (!isLogsVolumeAvailable) {
return undefined;

Loading…
Cancel
Save