-
Notifications
You must be signed in to change notification settings - Fork 10
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
The data dog agent encountered this error, traces_dropped(payload_too_large:466059) #141
Comments
Hi @nqf Could you provide more details, such as the runtime environment, the connection with dd-trace-cpp, and how frequently this issue occurs? Additionally, to ensure we're on the same page, could you explain what the Datadog proxy is? |
My guess is the Datadog proxy is the Datadog Agent, and "payload too large" refers to this behavior in the Agent. Looks like the default limit is 25 MB, which is an awful lot of traces. |
yes Datadog proxy mean Datadog Agent,We have a service that can process approximately 19000 requests per second,Now I am using a global tracer,I understand that it only creates an HTTP client to send span to the agent, right? |
Now when our load reaches 10000/sec, this error will occur |
Damien still needs to know which integration you're using, i.e. NGINX, Envoy, Istio, etc. As a workaround, you can tell the tracing library to send payloads to the Agent more often, but that option does not have a corresponding environment variable. So, that would apply only if you're using dd-trace-cpp manually in C++ code. |
Our application is implemented based on this example,The only difference is that our HTTP framework is not httplib |
Somebody actually used the example! That's good to hear. If the large payloads are due to many different traces being included in a flush interval, then reducing On the other hand, if the large payloads are due to individual traces that have many spans, then there is nothing you can configure to remedy this. dd-trace-cpp would have to be modified to break up its payloads, which is possible but not implemented. |
Would it help to use multiple dd::tracer, I think multiple tracers would spread the pressure |
What value for
I doubt it. It depends on the statistical distributions your application has for "traces per second" and for "spans per trace." If the issue is "traces per second," then decreasing Multiple The tracing library keeps track of certain telemetry metrics, but I'm not sure they can be used to infer the "distributions" |
What methods do we have to control the size of sending packets?
The text was updated successfully, but these errors were encountered: