I can see from the graphs that the data appears to go up only once per minute, but that might be that the data from the device itself is only updated once per minute, not anything to do with scraping.
To see whether prometheus is actually scraping between those times, use a range vector query:
1. Select tab "Table" instead of "Graph"
2. Enter query: ifHCInOctets{...labels as before...}[5m]
This will show you timestamped data points between now and 5 minutes ago. Each one of those points is an actual scrape with exact timestamp it took place. If you see points 1m apart them the prometheus job is only scraping at 1m intervals. If you see points 10s apart with identical values, then this is what the exporter is actually returning for each scrape.
The other possibility I can think of is that maybe some of your scrapes are hitting the scrape timeout (5s) and failing. To check this, do another range vector query:
up{job="outside-device",instance="36.155.143.1"}[5m]
Does it flip between 1 and 0? Or is it 1 continuously? And what's the interval between timestamps?
Visually, you can draw a graph of
up{job="outside-device",instance="36.155.143.1"}
or
min_over_time(up{job="outside-device",instance="36.155.143.1"}[1m])
> Cause the network devices are on the produce enviroment , it's hard to change the authencation .
Will the device accept an authNoPriv query anyway? That is, can you try this?
snmpbulkwalk -l authNoPriv x.x.x.x ifHCInOctets
If that works, then you can get the tcpdump data you require. You'll still have to decode the ASN.1 packets by hand though (or find an ASN.1 decoder tool)
Just to clarify though: it seems you're seeing two different problems with this device?
1. when using multiple interfaces in your scrape job, ifHCInOctets appears to be incrementing only once every minute instead of once every 10 seconds, even though the scrape job is at 10 second intervals
2. the values returned by snmp_exporter appear to be significantly different to those from snmpbulkwalk
Is that correct? If so we should probably take these one at a time, but they could be related: e.g. snmp_exporter may be seeing a value that's 1 minute out of date.
Thinks: is the difference between the two values roughly what you'd expect to see over a 1 minute period? I can check this. From your first mail:
inquired by snmp-export
ifHCOutOctets{ifIndex="7",ifName="100GE1/0/3"} 4.081891198125584e+15
inquired by snmpbulkwalk
iso.3.6.1.2.1.31.1.1.1.10.7 = Counter64: 4081957477267043
=> difference is 66279141459 (~6.6e10)
From the graphs you just posted, showing samples 1 minute apart:
first data point: 1137591073238070
second data point: 1137663709396632
=> difference is 72636158562 (~7.2e10)
Those values are very close, so that looks very likely indeed.
Is there any chance there is some HTTP cache between your prometheus server and your snmp_exporter?? Otherwise, maybe the target itself is doing some rate limiting on SNMP queries from the same client - or it only updates its MIB once per minute.
You could try running snmpbulkwalk every 10 seconds and see how the value changes. At this point, I'm pretty sure it's not snmp_exporter which is at fault.
HTH,
Brian.