-
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
prometheusremotewrite: Untyped values are dropped silently #15782
Comments
@hagen1778 this is a limitation of prometheus and documented in the README of the serializer:
We could log those once if that's sufficient for your use-case!? |
Yes, I think something like that would be sufficient. The problem I faced was a user complaining that remote destination (VictoriaMetrics) was dropping data ingested from telegraf client. The further investigation revealed that remote destination was receiving empty POST requests from telegraf. Logging each skipped line could be too verbose. Maybe logging a single message like |
Please feel free to put up a PR. If you cannot do the message shown above, simply log the metric-name and field and then mark it in a map as "already logged" and skip logging next time. I think a warning would probably be appropriate. |
With this change, prometheusremotewrite will log the last recorded conversion error in `Serialize` call, if any errors at all. The error might be helpful for user to understand why some of the series were dropped during processing. In the same time, logging only the last error should prevent logs from pollution if too many conversion errors are taking place. See influxdata#15782
Relevant telegraf.conf
Logs from Telegraf
System info
telegraf-1.31.3
Docker
No response
Steps to reproduce
metrics.influx
with following content:throughput="0"
is quotedExpected behavior
throughput="0"
can't be parsed. This can be done via logs or metrics. If logs are too verbose, telegraf should at least check for errors once per batch.Actual behavior
Nothing happens. Metrics are collected from the file and silently dropped here
telegraf/plugins/serializers/prometheusremotewrite/prometheusremotewrite.go
Lines 52 to 56 in e94f0c5
No logs are printed, no hints about what's happening.
The remote database receives POST requests with empty body and can't provide a hint to a user what's wrong.
Additional info
No response
The text was updated successfully, but these errors were encountered: