Skip to content

Commit c4a0d58

Browse files
juliaElastickibanamachineclaude
authored
[9.4] [Fleet] merge advanced yaml config to otel config and add toggle to disable beatsauth (elastic#263741)
## Summary Backport of elastic#263050 to 9.4. Resolves conflict in `output.ts` by extracting the inline `ssl` object schema into a named `OutputSslSchema` constant (matching the approach in `main`), then adding the new `otel_disable_beatsauth` field alongside it. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent e74ba20 commit c4a0d58

22 files changed

Lines changed: 842 additions & 32 deletions

File tree

oas_docs/output/kibana.serverless.yaml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78325,6 +78325,9 @@ components:
7832578325
type: boolean
7832678326
name:
7832778327
type: string
78328+
otel_disable_beatsauth:
78329+
nullable: true
78330+
type: boolean
7832878331
otel_exporter_config_yaml:
7832978332
nullable: true
7833078333
type: string
@@ -78545,6 +78548,9 @@ components:
7854578548
type: string
7854678549
name:
7854778550
type: string
78551+
otel_disable_beatsauth:
78552+
nullable: true
78553+
type: boolean
7854878554
otel_exporter_config_yaml:
7854978555
nullable: true
7855078556
type: string
@@ -78779,6 +78785,9 @@ components:
7877978785
type: boolean
7878078786
name:
7878178787
type: string
78788+
otel_disable_beatsauth:
78789+
nullable: true
78790+
type: boolean
7878278791
otel_exporter_config_yaml:
7878378792
nullable: true
7878478793
type: string
@@ -78926,6 +78935,9 @@ components:
7892678935
type: string
7892778936
name:
7892878937
type: string
78938+
otel_disable_beatsauth:
78939+
nullable: true
78940+
type: boolean
7892978941
otel_exporter_config_yaml:
7893078942
nullable: true
7893178943
type: string
@@ -79790,6 +79802,9 @@ components:
7979079802
type: boolean
7979179803
name:
7979279804
type: string
79805+
otel_disable_beatsauth:
79806+
nullable: true
79807+
type: boolean
7979379808
otel_exporter_config_yaml:
7979479809
nullable: true
7979579810
type: string
@@ -80010,6 +80025,9 @@ components:
8001080025
type: string
8001180026
name:
8001280027
type: string
80028+
otel_disable_beatsauth:
80029+
nullable: true
80030+
type: boolean
8001380031
otel_exporter_config_yaml:
8001480032
nullable: true
8001580033
type: string
@@ -80244,6 +80262,9 @@ components:
8024480262
type: boolean
8024580263
name:
8024680264
type: string
80265+
otel_disable_beatsauth:
80266+
nullable: true
80267+
type: boolean
8024780268
otel_exporter_config_yaml:
8024880269
nullable: true
8024980270
type: string
@@ -80391,6 +80412,9 @@ components:
8039180412
type: string
8039280413
name:
8039380414
type: string
80415+
otel_disable_beatsauth:
80416+
nullable: true
80417+
type: boolean
8039480418
otel_exporter_config_yaml:
8039580419
nullable: true
8039680420
type: string
@@ -82248,6 +82272,9 @@ components:
8224882272
type: boolean
8224982273
name:
8225082274
type: string
82275+
otel_disable_beatsauth:
82276+
nullable: true
82277+
type: boolean
8225182278
otel_exporter_config_yaml:
8225282279
nullable: true
8225382280
type: string
@@ -82464,6 +82491,9 @@ components:
8246482491
type: string
8246582492
name:
8246682493
type: string
82494+
otel_disable_beatsauth:
82495+
nullable: true
82496+
type: boolean
8246782497
otel_exporter_config_yaml:
8246882498
nullable: true
8246982499
type: string
@@ -82693,6 +82723,9 @@ components:
8269382723
type: boolean
8269482724
name:
8269582725
type: string
82726+
otel_disable_beatsauth:
82727+
nullable: true
82728+
type: boolean
8269682729
otel_exporter_config_yaml:
8269782730
nullable: true
8269882731
type: string
@@ -82834,6 +82867,9 @@ components:
8283482867
type: string
8283582868
name:
8283682869
type: string
82870+
otel_disable_beatsauth:
82871+
nullable: true
82872+
type: boolean
8283782873
otel_exporter_config_yaml:
8283882874
nullable: true
8283982875
type: string

oas_docs/output/kibana.yaml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89356,6 +89356,9 @@ components:
8935689356
type: boolean
8935789357
name:
8935889358
type: string
89359+
otel_disable_beatsauth:
89360+
nullable: true
89361+
type: boolean
8935989362
otel_exporter_config_yaml:
8936089363
nullable: true
8936189364
type: string
@@ -89576,6 +89579,9 @@ components:
8957689579
type: string
8957789580
name:
8957889581
type: string
89582+
otel_disable_beatsauth:
89583+
nullable: true
89584+
type: boolean
8957989585
otel_exporter_config_yaml:
8958089586
nullable: true
8958189587
type: string
@@ -89810,6 +89816,9 @@ components:
8981089816
type: boolean
8981189817
name:
8981289818
type: string
89819+
otel_disable_beatsauth:
89820+
nullable: true
89821+
type: boolean
8981389822
otel_exporter_config_yaml:
8981489823
nullable: true
8981589824
type: string
@@ -89957,6 +89966,9 @@ components:
8995789966
type: string
8995889967
name:
8995989968
type: string
89969+
otel_disable_beatsauth:
89970+
nullable: true
89971+
type: boolean
8996089972
otel_exporter_config_yaml:
8996189973
nullable: true
8996289974
type: string
@@ -90821,6 +90833,9 @@ components:
9082190833
type: boolean
9082290834
name:
9082390835
type: string
90836+
otel_disable_beatsauth:
90837+
nullable: true
90838+
type: boolean
9082490839
otel_exporter_config_yaml:
9082590840
nullable: true
9082690841
type: string
@@ -91041,6 +91056,9 @@ components:
9104191056
type: string
9104291057
name:
9104391058
type: string
91059+
otel_disable_beatsauth:
91060+
nullable: true
91061+
type: boolean
9104491062
otel_exporter_config_yaml:
9104591063
nullable: true
9104691064
type: string
@@ -91275,6 +91293,9 @@ components:
9127591293
type: boolean
9127691294
name:
9127791295
type: string
91296+
otel_disable_beatsauth:
91297+
nullable: true
91298+
type: boolean
9127891299
otel_exporter_config_yaml:
9127991300
nullable: true
9128091301
type: string
@@ -91422,6 +91443,9 @@ components:
9142291443
type: string
9142391444
name:
9142491445
type: string
91446+
otel_disable_beatsauth:
91447+
nullable: true
91448+
type: boolean
9142591449
otel_exporter_config_yaml:
9142691450
nullable: true
9142791451
type: string
@@ -93279,6 +93303,9 @@ components:
9327993303
type: boolean
9328093304
name:
9328193305
type: string
93306+
otel_disable_beatsauth:
93307+
nullable: true
93308+
type: boolean
9328293309
otel_exporter_config_yaml:
9328393310
nullable: true
9328493311
type: string
@@ -93495,6 +93522,9 @@ components:
9349593522
type: string
9349693523
name:
9349793524
type: string
93525+
otel_disable_beatsauth:
93526+
nullable: true
93527+
type: boolean
9349893528
otel_exporter_config_yaml:
9349993529
nullable: true
9350093530
type: string
@@ -93724,6 +93754,9 @@ components:
9372493754
type: boolean
9372593755
name:
9372693756
type: string
93757+
otel_disable_beatsauth:
93758+
nullable: true
93759+
type: boolean
9372793760
otel_exporter_config_yaml:
9372893761
nullable: true
9372993762
type: string
@@ -93865,6 +93898,9 @@ components:
9386593898
type: string
9386693899
name:
9386793900
type: string
93901+
otel_disable_beatsauth:
93902+
nullable: true
93903+
type: boolean
9386893904
otel_exporter_config_yaml:
9386993905
nullable: true
9387093906
type: string

packages/kbn-check-saved-objects-cli/current_fields.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -857,6 +857,7 @@
857857
"is_preconfigured",
858858
"key",
859859
"name",
860+
"otel_disable_beatsauth",
860861
"otel_exporter_config_yaml",
861862
"output_id",
862863
"partition",

packages/kbn-check-saved-objects-cli/current_mappings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2843,6 +2843,9 @@
28432843
"name": {
28442844
"type": "keyword"
28452845
},
2846+
"otel_disable_beatsauth": {
2847+
"type": "boolean"
2848+
},
28462849
"otel_exporter_config_yaml": {
28472850
"type": "text"
28482851
},
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"10.9.0": [
3+
{
4+
"name": "default",
5+
"type": "elasticsearch",
6+
"is_default": true,
7+
"is_default_monitoring": true,
8+
"hosts": ["https://localhost:9200"],
9+
"preset": "balanced"
10+
}
11+
],
12+
"10.10.0": [
13+
{
14+
"name": "default",
15+
"type": "elasticsearch",
16+
"is_default": true,
17+
"is_default_monitoring": true,
18+
"hosts": ["https://localhost:9200"],
19+
"preset": "balanced"
20+
}
21+
]
22+
}

src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ describe('checking migration metadata changes on all registered SO types', () =>
134134
"infrastructure-ui-source": "498c2ba7abd4329a0d8b40efd98b4b16991107512d38141707f9f2e10521b367",
135135
"ingest-agent-policies": "ce61ba4808deecd27dce770799be59f212ebe1c0d76bcc4298aafa4cfce7aa15",
136136
"ingest-download-sources": "c87e062ef293585e85fccec0c865d7cef48e0ff9a919d7781d5f7627d275484b",
137-
"ingest-outputs": "b5c8354ebfb71f5d50322c19787bbee2c5bb8fff5bfff46dc5683d19e94797a3",
137+
"ingest-outputs": "8ea9ade69e9ced03cf5700086f454adf3fc46918317b6150e127fdd5829a56a6",
138138
"ingest-package-policies": "7817460ef093393f7fce067f91186003e41246a69f32344b1cd68fe19f43a24e",
139139
"ingest_manager_settings": "6cd91fe6c52c516676d99021f51a4b3a162686880198ba3c556983f5fffbb5a3",
140140
"integration-config": "5f95ba3784d5d50d04d8ad3489fc4c0a50db34da049a69e754a48c80172ee948",
@@ -853,8 +853,9 @@ describe('checking migration metadata changes on all registered SO types', () =>
853853
"ingest-download-sources|10.1.0: 7fce3be244f92bb99b17c8757c39a49aec078ff90cae70971e42e202a574348c",
854854
"================================================================================================",
855855
"ingest-outputs|global: 3e72116f17fda6ec9c5269cb42eb42e3f686b313",
856-
"ingest-outputs|mappings: bdde67dc29cfd86a1195ed34a4417073728691c4",
856+
"ingest-outputs|mappings: a48fa4cb62d321c8ed0ffe84c80db2cbf7f7258b",
857857
"ingest-outputs|schemas: da39a3ee5e6b4b0d3255bfef95601890afd80709",
858+
"ingest-outputs|10.10.0: 25066fec2f6c80607e652ddd82d32976ec25492c26e18fec0b22b1c01c0eae65",
858859
"ingest-outputs|10.9.0: 50a325af05e7b9b3f7383f1e525388c9cecf00a14b9924409a262f6c3058840b",
859860
"ingest-outputs|10.8.0: 7fce3be244f92bb99b17c8757c39a49aec078ff90cae70971e42e202a574348c",
860861
"ingest-outputs|10.7.0: 2f5dfca42d489deaa60da45c020e92fdae21e5e3d0e5e60153c0d18039715bd7",
@@ -1494,7 +1495,7 @@ describe('checking migration metadata changes on all registered SO types', () =>
14941495
"infrastructure-ui-source": "10.0.0",
14951496
"ingest-agent-policies": "10.10.0",
14961497
"ingest-download-sources": "10.1.0",
1497-
"ingest-outputs": "10.9.0",
1498+
"ingest-outputs": "10.10.0",
14981499
"ingest-package-policies": "10.22.0",
14991500
"ingest_manager_settings": "10.8.0",
15001501
"integration-config": "10.3.0",
@@ -1660,7 +1661,7 @@ describe('checking migration metadata changes on all registered SO types', () =>
16601661
"infrastructure-ui-source": "7.16.2",
16611662
"ingest-agent-policies": "10.10.0",
16621663
"ingest-download-sources": "10.1.0",
1663-
"ingest-outputs": "10.9.0",
1664+
"ingest-outputs": "10.10.0",
16641665
"ingest-package-policies": "10.22.0",
16651666
"ingest_manager_settings": "10.8.0",
16661667
"integration-config": "10.3.0",

x-pack/platform/plugins/shared/encrypted_saved_objects/integration_tests/ci_checks/check_registered_types.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,7 @@ describe('checking changes on all registered encrypted SO types', () => {
148148
"ingest-outputs|4",
149149
"ingest-outputs|3",
150150
"ingest-outputs|2",
151+
"ingest-outputs|10",
151152
"ingest-outputs|1",
152153
"oauth_state|1",
153154
"synthetics-monitor|2",

x-pack/platform/plugins/shared/fleet/common/types/models/output.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ interface NewBaseOutput {
5555
export interface NewElasticsearchOutput extends NewBaseOutput {
5656
type: OutputType['Elasticsearch'];
5757
otel_exporter_config_yaml?: string | null;
58+
otel_disable_beatsauth?: boolean | null;
5859
}
5960

6061
export interface NewRemoteElasticsearchOutput extends NewBaseOutput {

x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/settings/components/edit_output_flyout/index.tsx

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import {
3333
EuiCode,
3434
useGeneratedHtmlId,
3535
EuiPanel,
36+
EuiIconTip,
3637
} from '@elastic/eui';
3738
import { i18n } from '@kbn/i18n';
3839

@@ -594,6 +595,31 @@ export const EditOutputFlyout: React.FunctionComponent<EditOutputFlyoutProps> =
594595
paddingSize="none"
595596
>
596597
<EuiPanel color="subdued" borderRadius="none" hasShadow={false} paddingSize="m">
598+
<EuiFormRow fullWidth>
599+
<EuiSwitch
600+
label={
601+
<>
602+
<FormattedMessage
603+
id="xpack.fleet.settings.editOutputFlyout.otelDisableBeatsauthLabel"
604+
defaultMessage="Use exporter configuration without translating with beatsauth extension"
605+
/>{' '}
606+
<EuiIconTip
607+
type="question"
608+
color="subdued"
609+
content={
610+
<FormattedMessage
611+
id="xpack.fleet.settings.editOutputFlyout.otelDisableBeatsauthTooltip"
612+
defaultMessage="When enabled, the exporter will only include the host and any advanced exporter parameters specified below, giving you complete control over the exporter configuration."
613+
/>
614+
}
615+
/>
616+
</>
617+
}
618+
{...inputs.otelDisableBeatsauthInput.props}
619+
data-test-subj="settingsOutputsFlyout.otelDisableBeatsauthToggle"
620+
/>
621+
</EuiFormRow>
622+
<EuiSpacer size="m" />
597623
<EuiFormRow
598624
fullWidth
599625
label={

0 commit comments

Comments
 (0)