Skip to content

Commit efdd0c3

Browse files
authored
[plugin/apm-data]Fallback to ILM for non-dsl-only mode if DSL unavailable (#112759)
1 parent 2354e8f commit efdd0c3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+449
-8
lines changed

test/framework/src/main/java/org/elasticsearch/test/ClusterServiceUtils.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,20 @@ public static ClusterService createClusterService(ThreadPool threadPool, Cluster
121121
}
122122

123123
public static ClusterService createClusterService(ThreadPool threadPool, DiscoveryNode localNode, ClusterSettings clusterSettings) {
124-
Settings settings = Settings.builder().put("node.name", "test").put("cluster.name", "ClusterServiceTests").build();
124+
return createClusterService(threadPool, localNode, Settings.EMPTY, clusterSettings);
125+
}
126+
127+
public static ClusterService createClusterService(
128+
ThreadPool threadPool,
129+
DiscoveryNode localNode,
130+
Settings providedSettings,
131+
ClusterSettings clusterSettings
132+
) {
133+
Settings settings = Settings.builder()
134+
.put("node.name", "test")
135+
.put("cluster.name", "ClusterServiceTests")
136+
.put(providedSettings)
137+
.build();
125138
ClusterService clusterService = new ClusterService(
126139
settings,
127140
clusterSettings,

x-pack/plugin/apm-data/src/main/java/org/elasticsearch/xpack/apmdata/APMIndexTemplateRegistry.java

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@
1616
import org.elasticsearch.xpack.core.ClientHelper;
1717
import org.elasticsearch.xpack.core.template.YamlTemplateRegistry;
1818

19+
import java.util.function.Predicate;
20+
21+
import static org.elasticsearch.cluster.metadata.DataStreamLifecycle.isDataStreamsLifecycleOnlyMode;
1922
import static org.elasticsearch.xpack.apmdata.APMPlugin.APM_DATA_REGISTRY_ENABLED;
2023

2124
/**
@@ -33,7 +36,15 @@ public APMIndexTemplateRegistry(
3336
NamedXContentRegistry xContentRegistry,
3437
FeatureService featureService
3538
) {
36-
super(nodeSettings, clusterService, threadPool, client, xContentRegistry, featureService);
39+
super(
40+
nodeSettings,
41+
clusterService,
42+
threadPool,
43+
client,
44+
xContentRegistry,
45+
featureService,
46+
templateFilter(isDataStreamsLifecycleOnlyMode(clusterService.getSettings()))
47+
);
3748
}
3849

3950
@Override
@@ -58,4 +69,9 @@ protected String getVersionProperty() {
5869
protected String getOrigin() {
5970
return ClientHelper.APM_ORIGIN;
6071
}
72+
73+
private static Predicate<String> templateFilter(boolean dslOnlyMode) {
74+
// Load ILM files only when the server supports ILM i.e. dsl-only-mode is false
75+
return templateName -> dslOnlyMode == false || templateName.endsWith("@ilm") == false;
76+
}
6177
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for logs-apm.app if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: logs-apm.app_logs-default_policy
11+
prefer_ilm: false
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for logs-apm.error if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: logs-apm.error_logs-default_policy
11+
prefer_ilm: false
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for metrics-apm.app if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: metrics-apm.app_metrics-default_policy
11+
prefer_ilm: false
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for metrics-apm.internal if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: metrics-apm.internal_metrics-default_policy
11+
prefer_ilm: false
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for metrics-apm.service_destination.10m if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: metrics-apm.service_destination_10m_metrics-default_policy
11+
prefer_ilm: false
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for metrics-apm.service_destination.1m if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: metrics-apm.service_destination_1m_metrics-default_policy
11+
prefer_ilm: false
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for metrics-apm.service_destination.60m if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: metrics-apm.service_destination_60m_metrics-default_policy
11+
prefer_ilm: false
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
version: ${xpack.apmdata.template.version}
3+
_meta:
4+
description: Fallback to ILM policy for metrics-apm.service_summary.10m if data stream lifecycle not defined
5+
managed: true
6+
template:
7+
settings:
8+
index:
9+
lifecycle:
10+
name: metrics-apm.service_summary_10m_metrics-default_policy
11+
prefer_ilm: false

0 commit comments

Comments
 (0)