mirror of
https://github.com/datahub-project/datahub.git
synced 2026-01-07 15:27:05 +00:00
feat(queries): [Experimental] Allow customization of # of queries in Query tab via env var (#6964)
This commit is contained in:
parent
d55ad6ca14
commit
5cecc3c48e
@ -12,6 +12,7 @@ import com.linkedin.datahub.graphql.generated.LineageConfig;
|
||||
import com.linkedin.datahub.graphql.generated.ManagedIngestionConfig;
|
||||
import com.linkedin.datahub.graphql.generated.PoliciesConfig;
|
||||
import com.linkedin.datahub.graphql.generated.Privilege;
|
||||
import com.linkedin.datahub.graphql.generated.QueriesTabConfig;
|
||||
import com.linkedin.datahub.graphql.generated.ResourcePrivileges;
|
||||
import com.linkedin.datahub.graphql.generated.TelemetryConfig;
|
||||
import com.linkedin.datahub.graphql.generated.TestsConfig;
|
||||
@ -122,6 +123,11 @@ public class AppConfigResolver implements DataFetcher<CompletableFuture<AppConfi
|
||||
visualConfig.setLogoUrl(_visualConfiguration.getAssets().getLogoUrl());
|
||||
visualConfig.setFaviconUrl(_visualConfiguration.getAssets().getFaviconUrl());
|
||||
}
|
||||
if (_visualConfiguration != null && _visualConfiguration.getQueriesTab() != null) {
|
||||
QueriesTabConfig queriesTabConfig = new QueriesTabConfig();
|
||||
queriesTabConfig.setQueriesTabResultSize(_visualConfiguration.getQueriesTab().getQueriesTabResultSize());
|
||||
visualConfig.setQueriesTab(queriesTabConfig);
|
||||
}
|
||||
appConfig.setVisualConfig(visualConfig);
|
||||
|
||||
final TelemetryConfig telemetryConfig = new TelemetryConfig();
|
||||
|
||||
@ -196,6 +196,21 @@ type VisualConfig {
|
||||
Custom favicon url for the homepage & top banner
|
||||
"""
|
||||
faviconUrl: String
|
||||
|
||||
"""
|
||||
Configuration for the queries tab
|
||||
"""
|
||||
queriesTab: QueriesTabConfig
|
||||
}
|
||||
|
||||
"""
|
||||
Configuration for the queries tab
|
||||
"""
|
||||
type QueriesTabConfig {
|
||||
"""
|
||||
Number of queries to show in the queries tab
|
||||
"""
|
||||
queriesTabResultSize: Int
|
||||
}
|
||||
|
||||
"""
|
||||
|
||||
@ -4,10 +4,16 @@ import { GetDatasetQuery } from '../../../../../../graphql/dataset.generated';
|
||||
import Query from './Query';
|
||||
import { useBaseEntity } from '../../../EntityContext';
|
||||
import getTopNQueries from './utils/getTopNQueries';
|
||||
import { useAppConfig } from '../../../../../useAppConfig';
|
||||
|
||||
export default function QueriesTab() {
|
||||
const appConfig = useAppConfig();
|
||||
const baseEntity = useBaseEntity<GetDatasetQuery>();
|
||||
const topQueries = getTopNQueries(5, baseEntity?.dataset?.usageStats?.buckets);
|
||||
|
||||
const topQueries = getTopNQueries(
|
||||
appConfig?.config?.visualConfig?.queriesTab?.queriesTabResultSize || 5,
|
||||
baseEntity?.dataset?.usageStats?.buckets,
|
||||
);
|
||||
|
||||
if (topQueries.length === 0) {
|
||||
return <Empty description="No Sample Queries" image={Empty.PRESENTED_IMAGE_SIMPLE} />;
|
||||
|
||||
@ -21,6 +21,9 @@ export const DEFAULT_APP_CONFIG = {
|
||||
},
|
||||
visualConfig: {
|
||||
logoUrl: undefined,
|
||||
queriesTab: {
|
||||
queriesTabResultSize: 5,
|
||||
},
|
||||
},
|
||||
authConfig: {
|
||||
tokenAuthEnabled: false,
|
||||
|
||||
@ -37,6 +37,9 @@ query appConfig {
|
||||
visualConfig {
|
||||
logoUrl
|
||||
faviconUrl
|
||||
queriesTab {
|
||||
queriesTabResultSize
|
||||
}
|
||||
}
|
||||
telemetryConfig {
|
||||
enableThirdPartyLogging
|
||||
|
||||
@ -0,0 +1,12 @@
|
||||
package com.linkedin.metadata.config;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
@Data
|
||||
public class QueriesTabConfig {
|
||||
/**
|
||||
* The number of queries to show on the queries tab.
|
||||
*/
|
||||
public Integer queriesTabResultSize;
|
||||
}
|
||||
@ -12,4 +12,9 @@ public class VisualConfiguration {
|
||||
* Asset related configurations
|
||||
*/
|
||||
public AssetsConfiguration assets;
|
||||
|
||||
/**
|
||||
* Queries tab related configurations
|
||||
*/
|
||||
public QueriesTabConfig queriesTab;
|
||||
}
|
||||
|
||||
@ -5,7 +5,7 @@ authentication:
|
||||
|
||||
# Required if enabled is true! A configurable chain of Authenticators
|
||||
authenticators:
|
||||
# Required for authenticating requests with DataHub-issued Access Tokens - best not to remove.
|
||||
# Required for authenticating requests with DataHub-issued Access Tokens - best not to remove.
|
||||
- type: com.datahub.authentication.authenticator.DataHubTokenAuthenticator
|
||||
configs:
|
||||
# Key used to validate incoming tokens. Should typically be the same as authentication.tokenService.signingKey
|
||||
@ -28,7 +28,6 @@ authentication:
|
||||
|
||||
# Authorization-related configurations.
|
||||
authorization:
|
||||
|
||||
# Configurations for the default DataHub policies-based authorizer.
|
||||
defaultAuthorizer:
|
||||
enabled: ${AUTH_POLICIES_ENABLED:true}
|
||||
@ -36,7 +35,7 @@ authorization:
|
||||
|
||||
ingestion:
|
||||
enabled: ${UI_INGESTION_ENABLED:true}
|
||||
defaultCliVersion: '${UI_INGESTION_DEFAULT_CLI_VERSION:@cliMajorVersion@}'
|
||||
defaultCliVersion: "${UI_INGESTION_DEFAULT_CLI_VERSION:@cliMajorVersion@}"
|
||||
|
||||
telemetry:
|
||||
enabledCli: ${CLI_TELEMETRY_ENABLED:true}
|
||||
@ -92,6 +91,10 @@ platformAnalytics:
|
||||
enabled: ${DATAHUB_ANALYTICS_ENABLED:true}
|
||||
|
||||
visualConfig:
|
||||
queriesTab:
|
||||
# Experimental! This env var is subject to change and may be deprecated in the future. The Queries tab has a larger
|
||||
# overhaul coming.
|
||||
queriesTabResultSize: ${REACT_APP_QUERIES_TAB_RESULT_SIZE:5}
|
||||
assets:
|
||||
logoUrl: ${REACT_APP_LOGO_URL:/assets/platforms/datahublogo.png}
|
||||
faviconUrl: ${REACT_APP_FAVICON_URL:/assets/favicon.ico}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user