Skip to content

Commit dbf59c5

Browse files
authored
Update/Cleanup references to old tracing.apm.* legacy settings in favor of the telemetry.* settings (#104917)
1 parent 4c44633 commit dbf59c5

File tree

10 files changed

+30
-31
lines changed

10 files changed

+30
-31
lines changed

TRACING.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,18 @@ You must supply configuration and credentials for the APM server (see below).
2323
In your `elasticsearch.yml` add the following configuration:
2424

2525
```
26-
tracing.apm.enabled: true
26+
telemetry.tracing.enabled: true
2727
telemetry.agent.server_url: https://<your-apm-server>:443
2828
```
2929

30-
When using a secret token to authenticate with the APM server, you must add it to the Elasticsearch keystore under `tracing.apm.secret_token`. For example, execute:
30+
When using a secret token to authenticate with the APM server, you must add it to the Elasticsearch keystore under `telemetry.secret_token`. For example, execute:
3131

32-
bin/elasticsearch-keystore add tracing.apm.secret_token
32+
bin/elasticsearch-keystore add telemetry.secret_token
3333

34-
then enter the token when prompted. If you are using API keys, change the keystore key name to `tracing.apm.api_key`.
34+
then enter the token when prompted. If you are using API keys, change the keystore key name to `telemetry.api_key`.
3535

36-
All APM settings live under `tracing.apm`. All settings related to the Java agent
37-
go under `telemetry.agent`. Anything you set under there will be propagated to
36+
All APM settings live under `telemetry`. Tracing related settings go under `telemetry.tracing` and settings
37+
related to the Java agent go under `telemetry.agent`. Anything you set under there will be propagated to
3838
the agent.
3939

4040
For agent settings that can be changed dynamically, you can use the cluster

build-tools/src/main/java/org/elasticsearch/gradle/testclusters/RunTask.java

+8-7
Original file line numberDiff line numberDiff line change
@@ -201,10 +201,10 @@ public void beforeStart() {
201201
try {
202202
mockServer.start();
203203
node.setting("telemetry.metrics.enabled", "true");
204-
node.setting("tracing.apm.enabled", "true");
205-
node.setting("tracing.apm.agent.transaction_sample_rate", "0.10");
206-
node.setting("tracing.apm.agent.metrics_interval", "10s");
207-
node.setting("tracing.apm.agent.server_url", "http://127.0.0.1:" + mockServer.getPort());
204+
node.setting("telemetry.tracing.enabled", "true");
205+
node.setting("telemetry.agent.transaction_sample_rate", "0.10");
206+
node.setting("telemetry.agent.metrics_interval", "10s");
207+
node.setting("telemetry.agent.server_url", "http://127.0.0.1:" + mockServer.getPort());
208208
} catch (IOException e) {
209209
logger.warn("Unable to start APM server", e);
210210
}
@@ -213,9 +213,10 @@ public void beforeStart() {
213213
// if metrics were not enabled explicitly for gradlew run we should disable them
214214
else if (node.getSettingKeys().contains("telemetry.metrics.enabled") == false) { // metrics
215215
node.setting("telemetry.metrics.enabled", "false");
216-
} else if (node.getSettingKeys().contains("tracing.apm.enabled") == false) { // tracing
217-
node.setting("tracing.apm.enable", "false");
218-
}
216+
} else if (node.getSettingKeys().contains("telemetry.tracing.enabled") == false
217+
&& node.getSettingKeys().contains("tracing.apm.enabled") == false) { // tracing
218+
node.setting("telemetry.tracing.enable", "false");
219+
}
219220

220221
}
221222
}

distribution/tools/server-cli/src/test/java/org/elasticsearch/server/cli/APMJvmOptionsTests.java

-2
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,6 @@ public void testExtractSecureSettings() {
108108

109109
public void testExtractSettings() throws UserException {
110110
Function<String, Settings.Builder> buildSettings = (prefix) -> Settings.builder()
111-
.put("tracing.apm.enabled", true)
112111
.put(prefix + "server_url", "https://myurl:443")
113112
.put(prefix + "service_node_name", "instance-0000000001");
114113

@@ -158,7 +157,6 @@ public void testExtractSettings() throws UserException {
158157
IllegalStateException.class,
159158
() -> APMJvmOptions.extractApmSettings(
160159
Settings.builder()
161-
.put("tracing.apm.enabled", true)
162160
.put("tracing.apm.agent.server_url", "https://myurl:443")
163161
.put("telemetry.agent.server_url", "https://myurl-2:443")
164162
.build()

modules/apm/METERING.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ rootProject {
106106
afterEvaluate {
107107
testClusters.matching { it.name == "runTask" }.configureEach {
108108
setting 'xpack.security.audit.enabled', 'true'
109-
keystore 'tracing.apm.secret_token', 'TODO-REPLACE'
109+
keystore 'telemetry.secret_token', 'TODO-REPLACE'
110110
setting 'telemetry.metrics.enabled', 'true'
111111
setting 'telemetry.agent.server_url', 'https://TODO-REPLACE-URL.apm.eastus2.staging.azure.foundit.no:443'
112112
}

modules/apm/src/main/java/org/elasticsearch/telemetry/apm/APM.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
* programmatically attach the agent, the Security Manager permissions required for this
3434
* make this approach difficult to the point of impossibility.
3535
* <p>
36-
* All settings are found under the <code>tracing.apm.</code> prefix. Any setting under
36+
* All settings are found under the <code>telemetry.</code> prefix. Any setting under
3737
* the <code>telemetry.agent.</code> prefix will be forwarded on to the APM Java agent
3838
* by setting appropriate system properties. Some settings can only be set once, and must be
3939
* set when the agent starts. We therefore also create and configure a config file in

modules/apm/src/main/java/org/elasticsearch/telemetry/apm/internal/APMAgentSettings.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ public void setAgentSetting(String key, String value) {
120120

121121
// Core:
122122
// forbid 'enabled', must remain enabled to dynamically enable tracing / metrics
123-
// forbid 'recording' / 'instrument', controlled by 'telemetry.metrics.enabled' / 'tracing.apm.enabled'
123+
// forbid 'recording' / 'instrument', controlled by 'telemetry.metrics.enabled' / 'telemetry.tracing.enabled'
124124
"service_name",
125125
"service_node_name",
126126
// forbid 'service_version', forced by APMJvmOptions
@@ -207,8 +207,8 @@ public void setAgentSetting(String key, String value) {
207207
"profiling_inferred_spans_lib_directory",
208208

209209
// Reporter:
210-
// forbid secret_token: use tracing.apm.secret_token instead
211-
// forbid api_key: use tracing.apm.api_key instead
210+
// forbid secret_token: use telemetry.secret_token instead
211+
// forbid api_key: use telemetry.api_key instead
212212
"server_url",
213213
"server_urls",
214214
"disable_send",

qa/apm/docker-compose.yml

+5-5
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,13 @@ services:
5656
- xpack.security.authc.token.enabled=true
5757
- xpack.security.enabled=true
5858
# APM specific settings. We don't configure `secret_key` because Kibana is configured with a blank key
59-
- tracing.apm.enabled=true
60-
- tracing.apm.agent.server_url=http://apmserver:8200
59+
- telemetry.tracing.enabled=true
60+
- telemetry.agent.server_url=http://apmserver:8200
6161
# Send traces to APM server aggressively
62-
- tracing.apm.agent.metrics_interval=1s
62+
- telemetry.agent.metrics_interval=1s
6363
# Record everything
64-
- tracing.apm.agent.transaction_sample_rate=1
65-
- tracing.apm.agent.log_level=debug
64+
- telemetry.agent.transaction_sample_rate=1
65+
- telemetry.agent.log_level=debug
6666
healthcheck:
6767
interval: 20s
6868
retries: 10

server/src/main/java/org/elasticsearch/node/NodeConstruction.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -974,7 +974,7 @@ record PluginServiceInstances(
974974
repositoryService
975975
);
976976

977-
final TimeValue metricsInterval = settings.getAsTime("tracing.apm.agent.metrics_interval", TimeValue.timeValueSeconds(10));
977+
final TimeValue metricsInterval = settings.getAsTime("telemetry.agent.metrics_interval", TimeValue.timeValueSeconds(10));
978978
final NodeMetrics nodeMetrics = new NodeMetrics(telemetryProvider.getMeterRegistry(), nodeService, metricsInterval);
979979

980980
final SearchService searchService = serviceProvider.newSearchService(

test/external-modules/apm-integration/src/javaRestTest/java/org/elasticsearch/test/apmintegration/MetricsApmIT.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@ public class MetricsApmIT extends ESRestTestCase {
4646
.module("test-apm-integration")
4747
.module("apm")
4848
.setting("telemetry.metrics.enabled", "true")
49-
.setting("tracing.apm.agent.metrics_interval", "1s")
50-
.setting("tracing.apm.agent.server_url", "http://127.0.0.1:" + mockApmServer.getPort())
49+
.setting("telemetry.agent.metrics_interval", "1s")
50+
.setting("telemetry.agent.server_url", "http://127.0.0.1:" + mockApmServer.getPort())
5151
.build();
5252

5353
@Override

test/external-modules/apm-integration/src/javaRestTest/java/org/elasticsearch/test/apmintegration/TracesApmIT.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ public class TracesApmIT extends ESRestTestCase {
5151
.module("test-apm-integration")
5252
.module("apm")
5353
.setting("telemetry.metrics.enabled", "false")
54-
.setting("tracing.apm.enabled", "true")
55-
.setting("tracing.apm.agent.metrics_interval", "1s")
56-
.setting("tracing.apm.agent.server_url", "http://127.0.0.1:" + mockApmServer.getPort())
54+
.setting("telemetry.tracing.enabled", "true")
55+
.setting("telemetry.agent.metrics_interval", "1s")
56+
.setting("telemetry.agent.server_url", "http://127.0.0.1:" + mockApmServer.getPort())
5757
.build();
5858

5959
@Override

0 commit comments

Comments
 (0)