Skip to content

Commit 3d284af

Browse files
authored
Promote some features to GA (#2653)
* document attach API as GA * make cli attach GA * make dubbo plugin GA * promote use_path_as_transaction_name to GA * promote JDK http server to GA * GA in supp. tech. for dubbo + circuit breaker * make OTel bridge as GA * update changelog * improve changelog
1 parent 483c2ef commit 3d284af

File tree

12 files changed

+19
-32
lines changed

12 files changed

+19
-32
lines changed

CHANGELOG.asciidoc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,13 @@ the agent will now include the database name in the dependency, thus `mysql/my-d
3030
3131
[float]
3232
===== Features
33+
* Promote mature agent features as Generaly Available (GA) - {pull}2632[#2632]
34+
** <<opentelemetry-bridge,OpenTelemetry bridge>> is now enabled by default
35+
** <<config-circuit-breaker,Circuit breaker>> marked as GA (still disabled by default)
36+
** <<setup-attach-api,API Attach>> and <<setup-attach-cli,CLI Attach>> marked as GA
37+
** <<config-use-path-as-transaction-name,`use_path_as_transaction_name`>> configuration option marked as GA
38+
** Dubbo instrumentation is now enabled by default
39+
** `com.sun.net.httpserver.HttpServer` instrumentation marked as GA
3340
* Struts action invocations via an action chain result start a new span - {pull}2513[#2513]
3441
* Added official support for Elasticsearch Java API client - {pull}2211[#2211]
3542
* Added the ability to make spans non-discardable through the public API and the OpenTelemetry bridge - {pull}2632[#2632]

apm-agent-core/src/main/java/co/elastic/apm/agent/impl/circuitbreaker/CircuitBreakerConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public class CircuitBreakerConfiguration extends ConfigurationOptionProvider {
3131

3232
private final ConfigurationOption<Boolean> circuitBreakerEnabled = ConfigurationOption.booleanOption()
3333
.key("circuit_breaker_enabled")
34-
.tags("added[1.14.0]", "performance", "experimental")
34+
.tags("added[1.14.0]", "performance")
3535
.configurationCategory(CIRCUIT_BREAKER_CATEGORY)
3636
.description("A boolean specifying whether the circuit breaker should be enabled or not. \n" +
3737
"When enabled, the agent periodically polls stress monitors to detect system/process/JVM stress state. \n" +

apm-agent-core/src/main/java/co/elastic/apm/agent/impl/context/web/WebConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ public class WebConfiguration extends ConfigurationOptionProvider {
9696
private final ConfigurationOption<Boolean> usePathAsName = ConfigurationOption.booleanOption()
9797
.key("use_path_as_transaction_name")
9898
.configurationCategory(HTTP_CATEGORY)
99-
.tags("experimental", "added[1.0.0,Changing this value at runtime is possible since version 1.22.0]")
99+
.tags("added[1.0.0,Changing this value at runtime is possible since version 1.22.0]")
100100
.description("If set to `true`,\n" +
101101
"transaction names of unsupported or partially-supported frameworks will be in the form of `$method $path` instead of just `$method unknown route`.\n" +
102102
"\n" +

apm-agent-plugins/apm-dubbo-plugin/src/main/java/co/elastic/apm/agent/dubbo/AbstractDubboInstrumentation.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,13 @@
2222

2323
import java.util.Arrays;
2424
import java.util.Collection;
25+
import java.util.Collections;
2526

2627
public abstract class AbstractDubboInstrumentation extends TracerAwareInstrumentation {
2728

2829
@Override
2930
public Collection<String> getInstrumentationGroupNames() {
30-
return Arrays.asList("dubbo", "experimental");
31+
return Collections.singleton("dubbo");
3132
}
3233

3334
}

apm-agent-plugins/apm-jdk-httpserver-plugin/src/main/java/co/elastic/apm/agent/httpserver/JdkHttpServerInstrumentation.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@
2020

2121
import co.elastic.apm.agent.bci.TracerAwareInstrumentation;
2222

23-
import java.util.Arrays;
2423
import java.util.Collection;
24+
import java.util.Collections;
2525

2626
public abstract class JdkHttpServerInstrumentation extends TracerAwareInstrumentation {
2727

2828
@Override
2929
public Collection<String> getInstrumentationGroupNames() {
30-
return Arrays.asList("jdk-httpserver");
30+
return Collections.singleton("jdk-httpserver");
3131
}
3232
}

apm-agent-plugins/apm-opentelemetry/apm-opentelemetry-plugin/src/main/java/co/elastic/apm/agent/opentelemetry/AbstractOpenTelemetryInstrumentation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,6 @@ public final boolean includeWhenInstrumentationIsDisabled() {
4040

4141
@Override
4242
public final Collection<String> getInstrumentationGroupNames() {
43-
return Arrays.asList("opentelemetry", "experimental");
43+
return Arrays.asList("opentelemetry");
4444
}
4545
}

docs/api-opentelemetry.asciidoc

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@ endif::[]
66
[[opentelemetry-bridge]]
77
=== OpenTelemetry bridge
88

9-
NOTE: Added as experimental in 1.30.0.
10-
To enable it, set <<config-enable-experimental-instrumentations, `enable_experimental_instrumentations`>> to `true`.
11-
129
The Elastic APM OpenTelemetry bridge allows creating Elastic APM `Transactions` and `Spans`,
1310
using the OpenTelemetry API.
1411
In other words,

docs/configuration.asciidoc

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -195,9 +195,7 @@ Click on a key to get more information.
195195
// This file is auto generated. Please make your changes in *Configuration.java (for example CoreConfiguration.java) and execute ConfigurationExporter
196196
[float]
197197
[[config-circuit-breaker-enabled]]
198-
==== `circuit_breaker_enabled` (added[1.14.0] performance experimental)
199-
200-
NOTE: This feature is currently experimental, which means it is disabled by default and it is not guaranteed to be backwards compatible in future releases.
198+
==== `circuit_breaker_enabled` (added[1.14.0] performance)
201199

202200
A boolean specifying whether the circuit breaker should be enabled or not.
203201
When enabled, the agent periodically polls stress monitors to detect system/process/JVM stress state.
@@ -1471,9 +1469,7 @@ Prepending an element with `(?-i)` makes the matching case sensitive.
14711469
// This file is auto generated. Please make your changes in *Configuration.java (for example CoreConfiguration.java) and execute ConfigurationExporter
14721470
[float]
14731471
[[config-use-path-as-transaction-name]]
1474-
==== `use_path_as_transaction_name` (experimental added[1.0.0,Changing this value at runtime is possible since version 1.22.0])
1475-
1476-
NOTE: This feature is currently experimental, which means it is disabled by default and it is not guaranteed to be backwards compatible in future releases.
1472+
==== `use_path_as_transaction_name` (added[1.0.0,Changing this value at runtime is possible since version 1.22.0])
14771473

14781474
If set to `true`,
14791475
transaction names of unsupported or partially-supported frameworks will be in the form of `$method $path` instead of just `$method unknown route`.

docs/setup-attach-api.asciidoc

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
[[setup-attach-api]]
22
=== Programmatic API setup to self-attach
33

4-
NOTE: This installation method is in beta.
5-
64
[float]
75
[[setup-attach-api-supported-environments]]
86
==== Supported environments
@@ -14,9 +12,6 @@ Unix and Solaris operating systems on HotSpot-based JVMs (like OpenJDK and Oracl
1412
[[setup-attach-api-caveats]]
1513
==== Caveats
1614

17-
The approach to mitigate `NoClassDefFoundError` s when used in OSGi containers (which includes most application servers) is experimental.
18-
Versions prior to 1.18.0 don't support OSGi containers.
19-
2015
There can only be one agent instance with one configuration per JVM.
2116
So if you deploy multiple web applications to the same application server and call `ElasticApmAttacher.attach()` in each application,
2217
the first `attach()` wins and the second one will be ignored.

docs/setup-attach-cli.asciidoc

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
[[setup-attach-cli]]
22
=== Automatic setup with `apm-agent-attach-cli.jar`
33

4-
NOTE: This installation method is in beta.
5-
64
The `apm-agent-attach-cli.jar` is an executable Java command line program which attaches the Elastic APM Java agent to a specific JVM or to all JVMs of the same host it runs on.
75

86
This installation method does not require you to alter the configuration of your application server and can be used to conveniently instrument all JVMs on a particular host.
@@ -22,13 +20,6 @@ That means it is possible to run the attacher with Java 7 and attach the agent t
2220
However, the type of the VM has to be the same:
2321
It's not possible to attach to a J9 VM from a HotSpot-based VM and vice-versa.
2422

25-
[float]
26-
[[setup-attach-cli-caveats]]
27-
==== Caveats
28-
29-
The approach to mitigate `NoClassDefFoundError` s when used in OSGi containers (which includes most application servers) is experimental.
30-
Versions prior to 1.18.0 don't support OSGi containers.
31-
3223
[float]
3324
[[setup-attach-cli-download]]
3425
==== Download

0 commit comments

Comments
 (0)