Comments (15)
Data point: just got bitten by that again.
from snmp_exporter.
And again!
from snmp_exporter.
The generator handles this automatically.
from snmp_exporter.
from snmp_exporter.
It ensures all required OIDs are walked.
from snmp_exporter.
The generator doesn't prevent users from making their own invalid configs. I think we should fix this eventually, I just don't think it's a big priority.
from snmp_exporter.
I think if a user is hand generating a config they're on their own. There's many things we can't check for them, such as index types and data types.
from snmp_exporter.
Totally, that's why I marked this as enhancement, not bug. Config validation would be a nice to have. We can improve on it incrementally.
from snmp_exporter.
There's no need for config validation. Only the generator should be producing configs, and any issues handled as bugs there. For this particular issue this is already handled and unittested.
The exporter is a dumb tools that'll do exactly what you tell it to, even if that doesn't make sense. Manual generation of configs was only a temporary thing until we had the generator.
from snmp_exporter.
Reality is that configs are still baked by hand, both by old and new users. Basic error checking is not an anti-pattern, so re-opening.
from snmp_exporter.
I'm not willing to add complexity to support users using this tool in a non-recommended fashion. All MIB-related logic including this is designed to belong in the generator, and only the generator. Adding something like this would make potential features like #131 more difficult than they already are to implement, as that requires sophisticated selection of what to walk.
If users insist on hand creating configs, they are free to write their own validation tools.
from snmp_exporter.
This is not about selecting anything outside of what's in the (currently named) walk:
section, it's merely about not silently coming up empty when a data structure does not hold the expected information.
I would like to avoid open/close ping-pong, but either I am misunderstanding your concern about complexity or you are somewhat driven by "well, don't do that, then".
from snmp_exporter.
It's a mix. This doesn't fit architecturally and it'd get in the way of future features/optimisations. That the use case for this comes from something users aren't meant to be doing doesn't provide a strong case to override those concerns.
from snmp_exporter.
https://docs.google.com/document/d/1McJJIiJfHgoecVrVNXx4ABJmI5M21e-6O9IgMNbVnvw
from snmp_exporter.
On top of logging, we should also expose this as a counter.
from snmp_exporter.
Related Issues (20)
- how to update snmp.yaml and do not restart snmp_expoter
- Override help string
- collected metric was collected before with the same name and label values HOT 6
- No specific metrics are generated
- error collecting metric Desc{fqName: "snmp_error", help: "Error scraping target", constLabels: {module="okiprinter"}, variableLabels: {}}: error walking target ipv4: not in time window
- snmp_exporter does not parse InetAddressIPv4z correctly
- yaml/yq parser round-trip behavior: unmarshaling of integer keys in dicts HOT 2
- Go build error when trying to generate "generator" file HOT 6
- Handle connection failures on resolution failure HOT 2
- Sonicwall Firewall / snmp exporter / prometheus
- Generator - get without .0 + unwanted walk
- Make generator error 22 when downloading PICO-IPSEC-FLOW-MONITOR-MIB.txt HOT 1
- Can snmp_exporter read metrics from UPS Schneider ? HOT 3
- Extreme switch id not found
- SNMPv2 Expansion of Environment Variables
- Generator does not pick up eaton mibs
- Help needed creatinging custom generator.yml
- Specifying --config.file=~/snmp_exporter/generator/snmp.yml does not work
- Scans are slow every 5 minutes, with a single retry HOT 13
- MIB Table non-read-only indexes Get ?
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 snmp_exporter.