-
Notifications
You must be signed in to change notification settings - Fork 102
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
Support traffic metrics #64
Comments
I'm just going to add this from the bind9 source /*%
* Traffic size statistics, according to RSSAC002 section 2.4
* https://www.icann.org/en/system/files/files/rssac-002-measurements-root-20nov14-en.pdf
*
* The RSSAC002 linear bucketing does not directly match the log-linear
* bucketing of an `isc_histo_t`, so we need to adjust some parameters
* to fit.
*
* To map a message size to an `isc_histo_t`, first divide by
* DNS_SIZEHISTO_QUANTUM so that `isc_histo_inc()` is presented with
* one value per RSSAC002 bucket.
*
* Configure the `isc_histo_t` with large enough `sigbits` that its
* one-value-per-bucket range (its `UNITBUCKETS`) covers the range
* required by RSSAC002.
*/
#define DNS_SIZEHISTO_QUANTUM 16
#define DNS_SIZEHISTO_MAXIN (288 / DNS_SIZEHISTO_QUANTUM)
#define DNS_SIZEHISTO_MAXOUT (4096 / DNS_SIZEHISTO_QUANTUM)
#define DNS_SIZEHISTO_SIGBITSIN 4
#define DNS_SIZEHISTO_SIGBITSOUT 7
#define DNS_SIZEHISTO_BUCKETIN(size) \
ISC_MIN(size / DNS_SIZEHISTO_QUANTUM, DNS_SIZEHISTO_MAXIN)
#define DNS_SIZEHISTO_BUCKETOUT(size) \
ISC_MIN(size / DNS_SIZEHISTO_QUANTUM, DNS_SIZEHISTO_MAXOUT)
STATIC_ASSERT(DNS_SIZEHISTO_MAXIN <=
ISC_HISTO_UNITBUCKETS(DNS_SIZEHISTO_SIGBITSIN),
"must be enough histogram buckets for RSSAC002");
STATIC_ASSERT(DNS_SIZEHISTO_MAXOUT <=
ISC_HISTO_UNITBUCKETS(DNS_SIZEHISTO_SIGBITSOUT),
"must be enough histogram buckets for RSSAC002"); I'm not sure if we would want to use buckets as granular as 16 bytes, especially when you consider that |
dswarbrick
added a commit
to dswarbrick/bind_exporter
that referenced
this issue
Feb 16, 2024
This implements parsing of the DNS request / response traffic size histograms, for the JSON statistics channel. Refs: prometheus-community#64 Signed-off-by: Daniel Swarbrick <[email protected]>
dswarbrick
added a commit
to dswarbrick/bind_exporter
that referenced
this issue
Feb 16, 2024
This implements parsing of the DNS request / response traffic size histograms, for the JSON statistics channel. Refs: prometheus-community#64 Signed-off-by: Daniel Swarbrick <[email protected]>
dswarbrick
added a commit
to dswarbrick/bind_exporter
that referenced
this issue
Feb 17, 2024
This implements parsing of the DNS request / response traffic size histograms, for the JSON statistics channel. Refs: prometheus-community#64 Signed-off-by: Daniel Swarbrick <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
There are some interesting metrics on the
traffic
statistics endpoint. They appear to be sparse histogram buckets. It will take some digging, but we might be able to translate these into Prometheus buckets.The text was updated successfully, but these errors were encountered: