Comments (8)
It crashes in this line:
https://github.com/prometheus/statsd_bridge/blob/master/bridge.go#L217
That probably means that NSQ sends counter increments with negative values (which Prometheus forbids). Can you confirm? Does NSQ internally "reset" its counters by decrementing them by their current value?
I agree the statsd-bridge shouldn't crash in that case, but probably should just ignore negative counter increments.
from statsd_exporter.
I guess you could say they decrement by their current value, but really they just all reset to 0 upon a restart.
from statsd_exporter.
The key thing is, they seem to send negative counter increments via the StatsD protocol. I'm not sure how much sense that makes. Usually you don't want a counter reset to be reflected as a negative rate (which I think will happen statsd-wise in this case). You'd just want to ignore it in the rate calculation. In any case, I'm all for simply ignoring negative counter increments in the bridge (while logging a warning about it). Would you be up for sending a PR?
from statsd_exporter.
This is still a problem
from statsd_exporter.
@juliusv if nsq restarts its stats reset, it isn't sending negative values, but it does send values that could be less than what it had originally.
from statsd_exporter.
This one bit me today as well (we've got a proof of concept prometheus server up, and I just repointed one of our application servers to the statsd_exporter). I don't know golang, but my colleague does, so we'll see if he can patch and issue a PR.
from statsd_exporter.
That would be awesome.
from statsd_exporter.
Should this be closed given that #33 has been merged ?
from statsd_exporter.
Related Issues (20)
- Renaming metrics with match_type Regex? HOT 1
- Support prefixed glob matches HOT 3
- af_agg_ti_start and af_agg_ti_finish are missing HOT 3
- Single tag in metric reporting NaN HOT 3
- Can script be run add or transform a field. HOT 1
- New release needed to address CVE-2023-24538 HOT 1
- Inconsistent debug logging of line payloads from TCP listener HOT 1
- Feature Request: "scale" field in mapping config to convert units
- Unable to expose both native and original histograms HOT 3
- Unable to disable the udp port listening HOT 2
- Gauge metric decreases with negative values HOT 4
- Support for exemplars HOT 2
- Update go to address CVEs
- Momentary spikes in events received HOT 3
- Support exclusions (negative matches) HOT 5
- Use new "created timestamp" for counters and histograms HOT 1
- New release needed with security updates that went in HOT 4
- stackstorm mapping - match_metric_type not working right? HOT 3
- Reject configuration with unknown fields
- Malformed name tag - Log level should be higher HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from statsd_exporter.