mirror of
https://github.com/grafana/grafana.git
synced 2025-07-31 16:42:36 +08:00
Plugins: Remove secure socks proxy feature toggle (#66611)
This commit is contained in:

committed by
GitHub

parent
743fdc159b
commit
255d8f3326
@ -84,7 +84,6 @@ Alpha features might be changed or removed without prior notice.
|
||||
| `mysqlAnsiQuotes` | Use double quotes to escape keyword in a MySQL query |
|
||||
| `showTraceId` | Show trace ids for requests |
|
||||
| `datasourceOnboarding` | Enable data source onboarding page |
|
||||
| `secureSocksDatasourceProxy` | Enable secure socks tunneling for supported core datasources |
|
||||
| `authnService` | Use new auth service to perform authentication |
|
||||
| `alertingBacktesting` | Rule backtesting API for alerting |
|
||||
| `editPanelCSVDragAndDrop` | Enables drag and drop for CSV and Excel files |
|
||||
|
@ -216,6 +216,7 @@ export interface GrafanaConfig {
|
||||
feedbackLinksEnabled: boolean;
|
||||
secretsManagerPluginEnabled: boolean;
|
||||
supportBundlesEnabled: boolean;
|
||||
secureSocksDSProxyEnabled: boolean;
|
||||
googleAnalyticsId: string | undefined;
|
||||
googleAnalytics4Id: string | undefined;
|
||||
googleAnalytics4SendManualPageViews: boolean;
|
||||
|
@ -64,7 +64,6 @@ export interface FeatureToggles {
|
||||
showTraceId?: boolean;
|
||||
datasourceOnboarding?: boolean;
|
||||
emptyDashboardPage?: boolean;
|
||||
secureSocksDatasourceProxy?: boolean;
|
||||
authnService?: boolean;
|
||||
disablePrometheusExemplarSampling?: boolean;
|
||||
alertingBacktesting?: boolean;
|
||||
|
@ -67,6 +67,7 @@ export class GrafanaBootConfig implements GrafanaConfig {
|
||||
jwtUrlLogin = false;
|
||||
sigV4AuthEnabled = false;
|
||||
azureAuthEnabled = false;
|
||||
secureSocksDSProxyEnabled = false;
|
||||
samlEnabled = false;
|
||||
samlName = '';
|
||||
autoAssignOrg = true;
|
||||
|
@ -17,6 +17,7 @@ import { TagsInput } from '../TagsInput/TagsInput';
|
||||
import { BasicAuthSettings } from './BasicAuthSettings';
|
||||
import { CustomHeadersSettings } from './CustomHeadersSettings';
|
||||
import { HttpProxySettings } from './HttpProxySettings';
|
||||
import { SecureSocksProxySettings } from './SecureSocksProxySettings';
|
||||
import { TLSAuthSettings } from './TLSAuthSettings';
|
||||
import { HttpSettingsProps } from './types';
|
||||
|
||||
@ -71,6 +72,7 @@ export const DataSourceHttpSettings = (props: HttpSettingsProps) => {
|
||||
showForwardOAuthIdentityOption,
|
||||
azureAuthSettings,
|
||||
renderSigV4Editor,
|
||||
secureSocksDSProxyEnabled,
|
||||
} = props;
|
||||
let urlTooltip;
|
||||
const [isAccessHelpVisible, setIsAccessHelpVisible] = useState(false);
|
||||
@ -308,6 +310,7 @@ export const DataSourceHttpSettings = (props: HttpSettingsProps) => {
|
||||
<CustomHeadersSettings dataSourceConfig={dataSourceConfig} onChange={onChange} />
|
||||
)}
|
||||
</>
|
||||
{secureSocksDSProxyEnabled && <SecureSocksProxySettings options={dataSourceConfig} onOptionsChange={onChange} />}
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
@ -39,4 +39,6 @@ export interface HttpSettingsProps extends HttpSettingsBaseProps {
|
||||
azureAuthSettings?: AzureAuthSettings;
|
||||
/** If SIGV4 is enabled, provide an editor for SIGV4 connection config **/
|
||||
renderSigV4Editor?: React.ReactNode;
|
||||
/** Show the Secure Socks Datasource Proxy toggle option */
|
||||
secureSocksDSProxyEnabled?: boolean;
|
||||
}
|
||||
|
@ -187,6 +187,7 @@ type FrontendSettingsDTO struct {
|
||||
AwsAssumeRoleEnabled bool `json:"awsAssumeRoleEnabled"`
|
||||
SupportBundlesEnabled bool `json:"supportBundlesEnabled"`
|
||||
SnapshotEnabled bool `json:"snapshotEnabled"`
|
||||
SecureSocksDSProxyEnabled bool `json:"secureSocksDSProxyEnabled"`
|
||||
|
||||
Azure FrontendSettingsAzureDTO `json:"azure"`
|
||||
|
||||
|
@ -138,6 +138,7 @@ func (hs *HTTPServer) getFrontendSettings(c *contextmodel.ReqContext) (*dtos.Fro
|
||||
EditorsCanAdmin: hs.Cfg.EditorsCanAdmin,
|
||||
DisableSanitizeHtml: hs.Cfg.DisableSanitizeHtml,
|
||||
DateFormats: hs.Cfg.DateFormats,
|
||||
SecureSocksDSProxyEnabled: hs.Cfg.SecureSocksDSProxy.Enabled,
|
||||
|
||||
Auth: dtos.FrontendSettingsAuthDTO{
|
||||
OAuthSkipOrgRoleUpdateSync: hs.Cfg.OAuthSkipOrgRoleUpdateSync,
|
||||
|
@ -11,7 +11,6 @@ import (
|
||||
"github.com/grafana/grafana/pkg/infra/metrics/metricutil"
|
||||
"github.com/grafana/grafana/pkg/infra/proxy"
|
||||
"github.com/grafana/grafana/pkg/infra/tracing"
|
||||
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
||||
"github.com/grafana/grafana/pkg/services/validations"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
)
|
||||
@ -55,8 +54,7 @@ func New(cfg *setting.Cfg, validator validations.PluginRequestValidator, tracer
|
||||
return
|
||||
}
|
||||
|
||||
if cfg.IsFeatureToggleEnabled(featuremgmt.FlagSecureSocksDatasourceProxy) &&
|
||||
cfg.SecureSocksDSProxy.Enabled && proxy.SecureSocksProxyEnabledOnDS(opts) {
|
||||
if cfg.SecureSocksDSProxy.Enabled && proxy.SecureSocksProxyEnabledOnDS(opts) {
|
||||
err = proxy.NewSecureSocksHTTPProxy(&cfg.SecureSocksDSProxy, transport)
|
||||
if err != nil {
|
||||
logger.Error("Failed to enable secure socks proxy", "error", err.Error(), "datasource", datasourceName)
|
||||
|
@ -310,12 +310,6 @@ var (
|
||||
Expression: "true", // enabled by default
|
||||
Owner: grafanaDashboardsSquad,
|
||||
},
|
||||
{
|
||||
Name: "secureSocksDatasourceProxy",
|
||||
Description: "Enable secure socks tunneling for supported core datasources",
|
||||
State: FeatureStateAlpha,
|
||||
Owner: hostedGrafanaTeam,
|
||||
},
|
||||
{
|
||||
Name: "authnService",
|
||||
Description: "Use new auth service to perform authentication",
|
||||
|
@ -45,7 +45,6 @@ accessTokenExpirationCheck,stable,@grafana/grafana-authnz-team,false,false,false
|
||||
showTraceId,alpha,@grafana/observability-logs,false,false,false,false
|
||||
datasourceOnboarding,alpha,@grafana/dashboards-squad,false,false,false,false
|
||||
emptyDashboardPage,stable,@grafana/dashboards-squad,false,false,false,true
|
||||
secureSocksDatasourceProxy,alpha,@grafana/hosted-grafana-team,false,false,false,false
|
||||
authnService,alpha,@grafana/grafana-authnz-team,false,false,false,false
|
||||
disablePrometheusExemplarSampling,stable,@grafana/observability-metrics,false,false,false,false
|
||||
alertingBacktesting,alpha,@grafana/alerting-squad,false,false,false,false
|
||||
|
|
@ -191,10 +191,6 @@ const (
|
||||
// Enable the redesigned user interface of a dashboard page that includes no panels
|
||||
FlagEmptyDashboardPage = "emptyDashboardPage"
|
||||
|
||||
// FlagSecureSocksDatasourceProxy
|
||||
// Enable secure socks tunneling for supported core datasources
|
||||
FlagSecureSocksDatasourceProxy = "secureSocksDatasourceProxy"
|
||||
|
||||
// FlagAuthnService
|
||||
// Use new auth service to perform authentication
|
||||
FlagAuthnService = "authnService"
|
||||
|
@ -274,7 +274,7 @@ func (e *cloudWatchExecutor) newSession(pluginCtx backend.PluginContext, region
|
||||
}
|
||||
|
||||
// work around until https://github.com/grafana/grafana/issues/39089 is implemented
|
||||
if e.cfg.SecureSocksDSProxy.Enabled && e.features.IsEnabled(featuremgmt.FlagSecureSocksDatasourceProxy) && instance.Settings.SecureSocksProxyEnabled {
|
||||
if e.cfg.SecureSocksDSProxy.Enabled && instance.Settings.SecureSocksProxyEnabled {
|
||||
// only update the transport to try to avoid the issue mentioned here https://github.com/grafana/grafana/issues/46365
|
||||
sess.Config.HTTPClient.Transport = instance.HTTPClient.Transport
|
||||
}
|
||||
|
@ -18,7 +18,6 @@ import (
|
||||
"github.com/grafana/grafana-plugin-sdk-go/data/sqlutil"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
"github.com/grafana/grafana/pkg/tsdb/sqleng"
|
||||
"github.com/grafana/grafana/pkg/util"
|
||||
@ -95,7 +94,7 @@ func newInstanceSettings(cfg *setting.Cfg) datasource.InstanceFactoryFunc {
|
||||
|
||||
driverName := "mssql"
|
||||
// register a new proxy driver if the secure socks proxy is enabled
|
||||
if cfg.IsFeatureToggleEnabled(featuremgmt.FlagSecureSocksDatasourceProxy) && cfg.SecureSocksDSProxy.Enabled && jsonData.SecureDSProxy {
|
||||
if cfg.SecureSocksDSProxy.Enabled && jsonData.SecureDSProxy {
|
||||
driverName, err = createMSSQLProxyDriver(&cfg.SecureSocksDSProxy, cnnstr)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -21,7 +21,6 @@ import (
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/httpclient"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
"github.com/grafana/grafana/pkg/tsdb/sqleng"
|
||||
)
|
||||
@ -85,7 +84,7 @@ func newInstanceSettings(cfg *setting.Cfg, httpClientProvider httpclient.Provide
|
||||
}
|
||||
|
||||
// register the secure socks proxy dialer context, if enabled
|
||||
if cfg.IsFeatureToggleEnabled(featuremgmt.FlagSecureSocksDatasourceProxy) && cfg.SecureSocksDSProxy.Enabled && jsonData.SecureDSProxy {
|
||||
if cfg.SecureSocksDSProxy.Enabled && jsonData.SecureDSProxy {
|
||||
// UID is only unique per org, the only way to ensure uniqueness is to do it by connection information
|
||||
uniqueIdentifier := dsInfo.User + dsInfo.DecryptedSecureJSONData["password"] + dsInfo.URL + dsInfo.Database
|
||||
protocol, err = registerProxyDialerContext(&cfg.SecureSocksDSProxy, protocol, uniqueIdentifier)
|
||||
|
@ -15,7 +15,6 @@ import (
|
||||
"github.com/grafana/grafana-plugin-sdk-go/data/sqlutil"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
"github.com/grafana/grafana/pkg/tsdb/sqleng"
|
||||
)
|
||||
@ -96,7 +95,7 @@ func (s *Service) newInstanceSettings(cfg *setting.Cfg) datasource.InstanceFacto
|
||||
|
||||
driverName := "postgres"
|
||||
// register a proxy driver if the secure socks proxy is enabled
|
||||
if cfg.IsFeatureToggleEnabled(featuremgmt.FlagSecureSocksDatasourceProxy) && cfg.SecureSocksDSProxy.Enabled && jsonData.SecureDSProxy {
|
||||
if cfg.SecureSocksDSProxy.Enabled && jsonData.SecureDSProxy {
|
||||
driverName, err = createPostgresProxyDriver(&cfg.SecureSocksDSProxy, cnnstr)
|
||||
if err != nil {
|
||||
return "", nil
|
||||
|
@ -4,4 +4,5 @@
|
||||
showAccessOptions="showAccessOption"
|
||||
defaultUrl="suggestUrl"
|
||||
showForwardOAuthIdentityOption="showForwardOAuthIdentityOption"
|
||||
secureSocksDSProxyEnabled="secureSocksDSProxyEnabled"
|
||||
/>
|
||||
|
@ -81,6 +81,7 @@ export const ConfigEditor = (props: Props) => {
|
||||
onChange={onOptionsChange}
|
||||
sigV4AuthToggleEnabled={config.sigV4AuthEnabled}
|
||||
renderSigV4Editor={<SIGV4ConnectionConfig {...props}></SIGV4ConnectionConfig>}
|
||||
secureSocksDSProxyEnabled={false} // the proxy is not implemented to work with the alertmanager
|
||||
/>
|
||||
</>
|
||||
);
|
||||
|
@ -97,7 +97,7 @@ export class ConfigEditor extends PureComponent<Props, State> {
|
||||
{error.details && <details style={{ whiteSpace: 'pre-wrap' }}>{error.details}</details>}
|
||||
</Alert>
|
||||
)}
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
{config.secureSocksDSProxyEnabled && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
</>
|
||||
|
@ -27,7 +27,7 @@ export class ConfigEditor extends PureComponent<Props> {
|
||||
return (
|
||||
<>
|
||||
<ConnectionConfig {...this.props} onOptionsChange={this.handleOnOptionsChange}></ConnectionConfig>
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
{config.secureSocksDSProxyEnabled && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
</>
|
||||
|
@ -67,7 +67,7 @@ export const ConfigEditor = (props: Props) => {
|
||||
</InlineField>
|
||||
</ConnectionConfig>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
{config.secureSocksDSProxyEnabled && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
|
@ -2,7 +2,7 @@ import React, { useEffect, useRef } from 'react';
|
||||
|
||||
import { SIGV4ConnectionConfig } from '@grafana/aws-sdk';
|
||||
import { DataSourcePluginOptionsEditorProps } from '@grafana/data';
|
||||
import { Alert, DataSourceHttpSettings, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { Alert, DataSourceHttpSettings } from '@grafana/ui';
|
||||
import { config } from 'app/core/config';
|
||||
|
||||
import { ElasticsearchOptions } from '../types';
|
||||
@ -47,12 +47,9 @@ export const ConfigEditor = (props: Props) => {
|
||||
onChange={onOptionsChange}
|
||||
sigV4AuthToggleEnabled={config.sigV4AuthEnabled}
|
||||
renderSigV4Editor={<SIGV4ConnectionConfig {...props}></SIGV4ConnectionConfig>}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
<ElasticDetails value={options} onChange={onOptionsChange} />
|
||||
|
||||
<LogsConfig
|
||||
|
@ -6,14 +6,7 @@ import {
|
||||
onUpdateDatasourceJsonDataOptionSelect,
|
||||
onUpdateDatasourceJsonDataOptionChecked,
|
||||
} from '@grafana/data';
|
||||
import {
|
||||
Alert,
|
||||
DataSourceHttpSettings,
|
||||
InlineFormLabel,
|
||||
LegacyForms,
|
||||
Select,
|
||||
SecureSocksProxySettings,
|
||||
} from '@grafana/ui';
|
||||
import { Alert, DataSourceHttpSettings, InlineFormLabel, LegacyForms, Select } from '@grafana/ui';
|
||||
import { config } from 'app/core/config';
|
||||
import store from 'app/core/store';
|
||||
|
||||
@ -82,10 +75,8 @@ export class ConfigEditor extends PureComponent<Props, State> {
|
||||
defaultUrl="http://localhost:8080"
|
||||
dataSourceConfig={options}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
<h3 className="page-heading">Graphite details</h3>
|
||||
<div className="gf-form-group">
|
||||
<div className="gf-form-inline">
|
||||
|
@ -11,16 +11,7 @@ import {
|
||||
updateDatasourcePluginJsonDataOption,
|
||||
updateDatasourcePluginResetOption,
|
||||
} from '@grafana/data';
|
||||
import {
|
||||
Alert,
|
||||
DataSourceHttpSettings,
|
||||
InfoBox,
|
||||
InlineField,
|
||||
InlineFormLabel,
|
||||
LegacyForms,
|
||||
SecureSocksProxySettings,
|
||||
Select,
|
||||
} from '@grafana/ui';
|
||||
import { Alert, DataSourceHttpSettings, InfoBox, InlineField, InlineFormLabel, LegacyForms, Select } from '@grafana/ui';
|
||||
import { config } from 'app/core/config';
|
||||
|
||||
import { BROWSER_MODE_DISABLED_MESSAGE } from '../constants';
|
||||
@ -334,12 +325,9 @@ export class ConfigEditor extends PureComponent<Props, State> {
|
||||
dataSourceConfig={options}
|
||||
defaultUrl="http://localhost:8086"
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
<div className="gf-form-group">
|
||||
<div>
|
||||
<h3 className="page-heading">InfluxDB Details</h3>
|
||||
|
@ -2,7 +2,7 @@ import React from 'react';
|
||||
|
||||
import { DataSourcePluginOptionsEditorProps } from '@grafana/data';
|
||||
import { config } from '@grafana/runtime';
|
||||
import { DataSourceHttpSettings, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { DataSourceHttpSettings } from '@grafana/ui';
|
||||
import { NodeGraphSettings } from 'app/core/components/NodeGraphSettings';
|
||||
import { TraceToLogsSettings } from 'app/core/components/TraceToLogs/TraceToLogsSettings';
|
||||
import { TraceToMetricsSettings } from 'app/core/components/TraceToMetrics/TraceToMetricsSettings';
|
||||
@ -18,12 +18,9 @@ export const ConfigEditor = ({ options, onOptionsChange }: Props) => {
|
||||
dataSourceConfig={options}
|
||||
showAccessOptions={false}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
<div className="gf-form-group">
|
||||
<TraceToLogsSettings options={options} onOptionsChange={onOptionsChange} />
|
||||
</div>
|
||||
|
@ -2,7 +2,7 @@ import React from 'react';
|
||||
|
||||
import { DataSourcePluginOptionsEditorProps, DataSourceSettings } from '@grafana/data';
|
||||
import { config } from '@grafana/runtime';
|
||||
import { AlertingSettings, DataSourceHttpSettings, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { AlertingSettings, DataSourceHttpSettings } from '@grafana/ui';
|
||||
|
||||
import { LokiOptions } from '../types';
|
||||
|
||||
@ -36,12 +36,9 @@ export const ConfigEditor = (props: Props) => {
|
||||
dataSourceConfig={options}
|
||||
showAccessOptions={false}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
<AlertingSettings<LokiOptions> options={options} onOptionsChange={onOptionsChange} />
|
||||
|
||||
<MaxLinesField
|
||||
|
@ -156,7 +156,7 @@ export const ConfigurationEditor = (props: DataSourcePluginOptionsEditorProps<Ms
|
||||
)}
|
||||
</FieldSet>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
{config.secureSocksDSProxyEnabled && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
|
@ -152,7 +152,7 @@ export const ConfigurationEditor = (props: DataSourcePluginOptionsEditorProps<My
|
||||
</InlineField>
|
||||
</FieldSet>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
{config.secureSocksDSProxyEnabled && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
{jsonData.tlsAuth || jsonData.tlsAuthWithCACert ? (
|
||||
|
@ -2,7 +2,7 @@ import React from 'react';
|
||||
|
||||
import { DataSourcePluginOptionsEditorProps } from '@grafana/data';
|
||||
import { config } from '@grafana/runtime';
|
||||
import { DataSourceHttpSettings, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { DataSourceHttpSettings } from '@grafana/ui';
|
||||
|
||||
import { OpenTsdbOptions } from '../types';
|
||||
|
||||
@ -17,10 +17,8 @@ export const ConfigEditor = (props: DataSourcePluginOptionsEditorProps<OpenTsdbO
|
||||
defaultUrl="http://localhost:4242"
|
||||
dataSourceConfig={options}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
<OpenTsdbDetails value={options} onChange={onOptionsChange} />
|
||||
</>
|
||||
);
|
||||
|
@ -1,7 +1,7 @@
|
||||
import React from 'react';
|
||||
|
||||
import { DataSourcePluginOptionsEditorProps } from '@grafana/data';
|
||||
import { DataSourceHttpSettings, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { DataSourceHttpSettings } from '@grafana/ui';
|
||||
import { config } from 'app/core/config';
|
||||
|
||||
import { ParcaDataSourceOptions } from './types';
|
||||
@ -18,10 +18,8 @@ export const ConfigEditor = (props: Props) => {
|
||||
dataSourceConfig={options}
|
||||
showAccessOptions={false}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
@ -1,13 +1,7 @@
|
||||
import React from 'react';
|
||||
|
||||
import { DataSourcePluginOptionsEditorProps } from '@grafana/data';
|
||||
import {
|
||||
DataSourceHttpSettings,
|
||||
EventsWithValidation,
|
||||
LegacyForms,
|
||||
regexValidation,
|
||||
SecureSocksProxySettings,
|
||||
} from '@grafana/ui';
|
||||
import { DataSourceHttpSettings, EventsWithValidation, LegacyForms, regexValidation } from '@grafana/ui';
|
||||
import { config } from 'app/core/config';
|
||||
|
||||
import { PhlareDataSourceOptions } from './types';
|
||||
@ -24,11 +18,9 @@ export const ConfigEditor = (props: Props) => {
|
||||
dataSourceConfig={options}
|
||||
showAccessOptions={false}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
<h3 className="page-heading">Querying</h3>
|
||||
<div className="gf-form-group">
|
||||
<div className="gf-form-inline">
|
||||
|
@ -167,7 +167,7 @@ export const PostgresConfigEditor = (props: DataSourcePluginOptionsEditorProps<P
|
||||
) : null}
|
||||
</FieldSet>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
{config.secureSocksDSProxyEnabled && (
|
||||
<FieldSet label="Secure Socks Proxy">
|
||||
<InlineField labelWidth={26} label="Enabled" tooltip="Connect to this datasource via the secure socks proxy.">
|
||||
<InlineSwitch
|
||||
|
@ -2,7 +2,7 @@ import React, { useRef } from 'react';
|
||||
|
||||
import { SIGV4ConnectionConfig } from '@grafana/aws-sdk';
|
||||
import { DataSourcePluginOptionsEditorProps, DataSourceSettings } from '@grafana/data';
|
||||
import { AlertingSettings, DataSourceHttpSettings, Alert, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { AlertingSettings, DataSourceHttpSettings, Alert } from '@grafana/ui';
|
||||
import { config } from 'app/core/config';
|
||||
|
||||
import { PromOptions } from '../types';
|
||||
@ -41,12 +41,9 @@ export const ConfigEditor = (props: Props) => {
|
||||
sigV4AuthToggleEnabled={config.sigV4AuthEnabled}
|
||||
azureAuthSettings={azureAuthSettings}
|
||||
renderSigV4Editor={<SIGV4ConnectionConfig {...props}></SIGV4ConnectionConfig>}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
<AlertingSettings<PromOptions> options={options} onOptionsChange={onOptionsChange} />
|
||||
|
||||
<PromSettings options={options} onOptionsChange={onOptionsChange} />
|
||||
|
@ -2,7 +2,7 @@ import React from 'react';
|
||||
|
||||
import { DataSourcePluginOptionsEditorProps } from '@grafana/data';
|
||||
import { config } from '@grafana/runtime';
|
||||
import { DataSourceHttpSettings, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { DataSourceHttpSettings } from '@grafana/ui';
|
||||
import { NodeGraphSettings } from 'app/core/components/NodeGraphSettings';
|
||||
import { TraceToLogsSettings } from 'app/core/components/TraceToLogs/TraceToLogsSettings';
|
||||
import { TraceToMetricsSettings } from 'app/core/components/TraceToMetrics/TraceToMetricsSettings';
|
||||
@ -24,12 +24,9 @@ export const ConfigEditor = ({ options, onOptionsChange }: Props) => {
|
||||
dataSourceConfig={options}
|
||||
showAccessOptions={false}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
<div className="gf-form-group">
|
||||
<TraceToLogsSettings options={options} onOptionsChange={onOptionsChange} />
|
||||
</div>
|
||||
|
@ -2,7 +2,7 @@ import React from 'react';
|
||||
|
||||
import { DataSourcePluginOptionsEditorProps } from '@grafana/data';
|
||||
import { config } from '@grafana/runtime';
|
||||
import { DataSourceHttpSettings, SecureSocksProxySettings } from '@grafana/ui';
|
||||
import { DataSourceHttpSettings } from '@grafana/ui';
|
||||
import { NodeGraphSettings } from 'app/core/components/NodeGraphSettings';
|
||||
import { TraceToLogsSettings } from 'app/core/components/TraceToLogs/TraceToLogsSettings';
|
||||
import { TraceToMetricsSettings } from 'app/core/components/TraceToMetrics/TraceToMetricsSettings';
|
||||
@ -18,12 +18,9 @@ export const ConfigEditor = ({ options, onOptionsChange }: Props) => {
|
||||
dataSourceConfig={options}
|
||||
showAccessOptions={false}
|
||||
onChange={onOptionsChange}
|
||||
secureSocksDSProxyEnabled={config.secureSocksDSProxyEnabled}
|
||||
/>
|
||||
|
||||
{config.featureToggles.secureSocksDatasourceProxy && (
|
||||
<SecureSocksProxySettings options={options} onOptionsChange={onOptionsChange} />
|
||||
)}
|
||||
|
||||
<div className="gf-form-group">
|
||||
<TraceToLogsSettings options={options} onOptionsChange={onOptionsChange} />
|
||||
</div>
|
||||
|
Reference in New Issue
Block a user