-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
fix(inputs.vsphere): Resolve occasional serverFault #14463
fix(inputs.vsphere): Resolve occasional serverFault #14463
Conversation
resolves influxdata#12500 the serverFaultCode "A specified parameter was not correct: querySpec.startTime, querySpec.endTime" results from requests for metrics from the future. Those requests get planned (check: hiwater mark, hwMark) for a plugin-run (-> plugin "interval") in the future in relation to the estimated time the vcenter will have collected the next metrics. This estimated time/interval gets mangled up on a connection error (e.g. connection reset), because the est. interval gets reset to 1. Solution: If we realize (ourselves) that the metric we are about to request is from the future, then... don't request it. Skip it.
Download PR build artifacts for linux_amd64.tar.gz, darwin_arm64.tar.gz, and windows_amd64.zip. 📦 Click here to get additional PR build artifactsArtifact URLs |
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.
Thanks
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.
Nice finding and thanks for the patch @knollet!
(cherry picked from commit 19347bf)
the serverFaultCode "A specified parameter was not correct: querySpec.startTime, querySpec.endTime" results from requests for metrics from the future.
Those requests get planned (check: hiwater mark, hwMark) for a plugin-run (-> plugin "interval") in the future in relation to the estimated time the vcenter will have collected the next metrics.
This estimated time/interval gets mangled up on a connection error (e.g. connection reset), because the est. interval gets reset to 1.
Solution: If we realize (ourselves) that the metric we are about to request is from the future, then... don't request it. Skip it.
resolves #12500