-
Notifications
You must be signed in to change notification settings - Fork 325
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Aws faas #3340
Aws faas #3340
Conversation
…n already be read by constructor injection. Add warning to use the global tracer from listeners, and make init method unavailable for regular plugins.
…e dependencies on core module.
# Conflicts: # apm-agent-plugins/apm-opentelemetry/apm-opentelemetry-metricsdk-plugin/src/main/java/co/elastic/apm/agent/otelmetricsdk/SdkMeterProviderBuilderInstrumentation.java
👋 @raphw Thanks a lot for your contribution! It may take some time before we review a PR, so even if you don’t see activity for some time, it does not mean that we have forgotten about it. Every once in a while we go through a process of prioritization, after which we are focussing on the tasks that were planned for the upcoming milestone. The prioritization status is typically reflected through the PR labels. It could be pending triage, a candidate for a future milestone, or have a target milestone set to it. |
apm-agent-core/src/main/java/co/elastic/apm/agent/context/InitializableLifecycleListener.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Another awesome refactor, thanks a lot @raphw !! I am approving this to get it running in CI.
apm-agent-core/src/main/java/co/elastic/apm/agent/context/InitializableLifecycleListener.java
Outdated
Show resolved
Hide resolved
apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/LifecycleListener.java
Outdated
Show resolved
Hide resolved
|
||
import javax.annotation.Nullable; | ||
|
||
public interface DirectSpan<T extends DirectSpan<T>> extends AbstractDirectSpan<T>, Span<T> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[question] I am not sure to understand what is the purpose and benefit of this direct
package and the classes within it, could you clarify a bit here ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I stacked these PRs as they touch quite some of the same code and I wanted to avoid lengthy merges, I should have documented that order, sorry. The direct
package can be considered as API for creating explicit spans and recording explicit data as with open tracing and open telementry. Maybe explicit
would be a better name for it.
.describedAs("sample rate header should return same instance on each call") | ||
.isSameAs(sampler.getTraceStateHeader()); | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[question] what makes this test not relevant anymore ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The test is still there, it is just moved to the tracer-api module. The header code is however moved out, so some of the code was removed.
public LifecycleListener getInitListener() { | ||
return new AbstractLifecycleListener() { | ||
public InitializableLifecycleListener getInitListener() { | ||
class InitListener extends AbstractLifecycleListener implements InitializableLifecycleListener { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[minor] why not use a simple anonymous class here ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An anonymous class cannot implement two classes/interfaces as the same time.
apm-agent-core/src/main/java/co/elastic/apm/agent/impl/transaction/TraceContext.java
Outdated
Show resolved
Hide resolved
...-plugin/src/main/java/co/elastic/apm/agent/micrometer/MicrometerMeterRegistrySerializer.java
Show resolved
Hide resolved
...y-metricsdk-plugin/src/main/java/co/elastic/apm/agent/otelmetricsdk/MetricSetSerializer.java
Show resolved
Hide resolved
Map<String, Object> tags, | ||
String operationName, long microseconds, | ||
@Nullable Iterable<Map.Entry<String, String>> baggage, ClassLoader applicationClassLoader) { | ||
AbstractSpan<?> result = null; | ||
ElasticApmTracer tracer = OpenTracingBridgeInstrumentation.tracer.require(ElasticApmTracer.class); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[question] does it means that we get rid of the OpenTracing bridge ? We are thinking about removing that for a while, but doing so would also require us to officially deprecate and document this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably, but I would separate this out into another PR.
apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/reporting/DataWriter.java
Show resolved
Hide resolved
…ializableLifecycleListener.java Co-authored-by: SylvainJuge <[email protected]>
…ecycleListener.java Co-authored-by: SylvainJuge <[email protected]>
# Conflicts: # apm-agent-core/src/main/java/co/elastic/apm/agent/impl/transaction/AbstractSpan.java # apm-agent-plugins/apm-awslambda-plugin/src/main/java/co/elastic/apm/agent/awslambda/helper/S3TransactionHelper.java
Hi! We just realized that we haven't looked into this issue in a while. We're sorry! We're labeling this issue as |
Hi! This issue has been stale for a while and we're going to close it as part of our cleanup procedure. We appreciate your contribution and would like to apologize if we have not been able to review it, due to the current heavy load of the team. Feel free to re-open this issue if you think it should stay open. Thank you for your contribution! |
Closing this in favor of #3516 |
Factor out AWS module to not depend on agent-core module, adding
Faas
andServiceOrigin
abstraction.Edit:
Fixes #3016