Thanks Brain, for your help. 在2022年10月17日星期一 UTC+8 16:45:17<Brian Candler> 写道:
> > Hi, everyone. I want to drop some specific metrics by its value or its > label value. For example: > > 1. the temperature metrics which values are 65535 meaning it's invalid > > 2. the power metrics which "entPhysicalClass" label vale are not "6" and > "9" > > Metric relabeling > <https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs> > > can be used to drop specific timeseries in the scrape response by label > value, but not by metric value. > > The only way I can think of dropping by metric value (without changing the > exporter output) is to use a recording rule > <https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/> > to > make a modified version of the timeseries, e.g. > > expr: some_temperature != 65535 > > If you are happy to hack snmp.yml, you could try something like this > (untested): > > regex_extracts: > "": > - value: NaN > regex: ^65535$ > - value: $1 > regex: ^(.+)$ > > I don't know if it's allowed to use "NaN" as a value here: source code > <https://github.com/prometheus/snmp_exporter/blob/v0.20.0/collector.go#L426> > suggests it should work <https://go.dev/play/p/_2ndwtiqbx3>. However, a time > series consisting of NaNs > <https://www.robustperception.io/get-thee-to-a-nannary/> is not the same > as an empty/missing timeseries. So depending on your requirements, it may > be better to do > > regex_extracts: > "": > - value: INVALID > regex: ^65535$ > - value: $1 > regex: ^(.+)$ > > although this will cause snmp_exporter to generate noisy logs at debug > level. > > Aside: if you look through the examples you can see regex being used to > divide a value by 10 (or by 100), e.g.: > > regex_extracts: > "": > - value: $1.$2 > regex: ^(?:(.*)(.))$ > > > I write the snmp.yml without generator, didn't find a specification of > its syntax, does somebody know where it is? > > > https://github.com/prometheus/snmp_exporter/blob/v0.20.0/generator/FORMAT.md > > Having said that, you may just want to run the generator and look at its > output to see what it emits :-) > > On Monday, 17 October 2022 at 08:01:08 UTC+1 [email protected] wrote: > >> Hi, everyone. I want to drop some specific metrics by its value or its >> label value. For example: >> 1. the temperature metrics which values are 65535 meaning it's invalid >> 2. the power metrics which "entPhysicalClass" label vale are not "6" and >> "9" >> >> I write the snmp.yml without generator, didn't find a specification of >> its syntax, does somebody know where it is? >> >> Appreciate for any help :) >> > -- You received this message because you are subscribed to the Google Groups "Prometheus Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-users/fd33b3a5-65f3-48db-9ed1-8e002189a974n%40googlegroups.com.

