-
Notifications
You must be signed in to change notification settings - Fork 21
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
SDK to provide canonical retriable given error #60
Comments
I'd like to close this issue out in the near future. Questions on my mind:
I guess it was just the one question 🤣 |
Quick observations:
Case 1: empty metric names✅ We know that @agriffin208's PR to telegraf is designed to exclude the first case Case 2: Buffer errorsWith the second case, we'll have to dig deeper. My intuition is that if the WF buffer is full, then telegraf starts filling up its buffer instead. I don't think the SDK expects a second layer of buffering to happen above it, but since Telegraf is doing this, that seems fine - we could pull @agriffin208's solution into our package and try to give it a reasonable name. We may not ever add additional error scenarios to Case 3: Flush errorsnote: http and auth errors happen in
3a: partially flushed batchesIt looks to me like in these cases, Telegraf might re-send in full a partially-sent batch:
3b: non-retryable auth errors treated as retryableSome of these are non-retryable auth errors. If Telegraf re-attempts these, that could lead to an infinite retry loop. 3c: potentially retriable, non-auth flush errors from
|
@astp-okta I saw that you made some changes in this area of the Telegraf Wavefront output plugin recently. No pressure, but if you have thoughts on the above, I'd love to hear your perspective. |
See influxdata/telegraf#8404
The wavefront output plugin for telegraf was continuously treating all errors as retryable.
Recently added in the PR mentioned above was functionality for the wavefront output to not retry for invalid (null) metric names.
However, seeking the wavefront-sdk-go to provide canonical set of which errors are retryable and which are not.
The text was updated successfully, but these errors were encountered: