-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
[exporter/datadog] source provider loading takes too long and timeouts lambda initialization #16442
Comments
Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
Thanks for reporting @RangelReale! A workaround for this is to set the |
To expand on this: in the general case we don't know what your pipeline looks like and how your data is transformed before reaching the Datadog exporter. Since a missing source identifier (be it a hostname or a task id) results in incomplete data and a bad experience we want to have a fallback value so that if there is no resource processor or it is misconfigured, we can still add some id to your metrics/traces/logs. There is some work we can do here to improve speed, but we almost always need to run it at some point, no matter what your pipeline looks like. |
|
Probably there should be a configuration on what source providers you want to run, or a client-side resource detector that adds these fields, and the exporter checks to see if these fields are available. |
That is a reasonable suggestion, but we first need to figure out how to provide this flexibility in a way that does not have lots of papercuts. For now, setting the |
Does it makes sense to log those as debug level ? |
Also it may be interesting to be able to force a specific way to get the host metadata (I would like to force to take it via the kubernetes API for example), it doesn't looks like this is possible right now |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
Make Datadog exporter source providers run in parallel to reduce start times. With the new `Chain` implementation, we start checking all sources in parallel instead of waiting for the previous one to fail. This makes the Datadog exporter call all cloud provider endpoints in all cloud providers, so it may increase spurious logs such as those reported in #24072. **Link to tracking Issue:** Updates #16442 (at least it should substantially improve start time in some environments) --------- Co-authored-by: Yang Song <[email protected]> Co-authored-by: Alex Boten <[email protected]>
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
Thanks @mackjmr this PR should improve the situation indeed. We will still keep an eye to see if the start time is reasonable after the change in all environments. |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
We have had user reports stating that #24234 significantly improved start times. I will therefore go ahead and close this; if you run into this issue again feel free to comment so that we can reopen |
Component(s)
exporter/datadog
What happened?
Description
When using the Datadog exporter in a lambda environment, I get these messages on both the trace and metrics initialization:
Then the lambda initialization times out, and never starts successfully.
If I disable one of the exporter, for example, the traces one, leaving only the metrics one enabled, then it takes less time and ends up being able to initialize.
I already use a resource detector, why does this exporters needs to detect things by itself?
Collector version
v0.64.1
Environment information
Environment
OS: Debian Bullseye
Compiler: go 1.17
OpenTelemetry Collector configuration
No response
Log output
Additional context
No response
The text was updated successfully, but these errors were encountered: