Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: lablabs/cloudflare-exporter
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 0.0.10
Choose a base ref
...
head repository: lablabs/cloudflare-exporter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 0.0.11
Choose a head ref
  • 2 commits
  • 3 files changed
  • 2 contributors

Commits on Jul 24, 2022

  1. Configuration menu
    Copy the full SHA
    3034d18 View commit details
    Browse the repository at this point in the history
  2. Introduce requests per LB pool metric & fix LB pool health status met…

    …ric (#65)
    
    * fix: Report LB pool health properly
    
    The `cloudflare_zone_pool_health_status` metric introduced with goal
    to report the actual pools health status during the time, regardless
    if this pool is the selected one or not. The initial implementation
    uses the `loadBalancingRequestsAdaptiveGroups` type which returns
    aggregated Load Balancing origin requests with adaptive sampling and
    contains information only about the selectedPool (Name, Health,
    AvgRttMs, etc), rather than for all LB pools. This leads on reporthing
    back the status only of the selectedPool (which normally is always 1)
    and not the overall status of all LB's pools.
    According to Cloudflare's documentation about LoadBalancing GraphQL
    Analytics API[1], the `loadBalancingRequestsAdaptive` schema can be
    used to fetch analytics about the Raw Load Balancing origin requests
    with adaptive sampling. These analytics exposes infromation about the
    selected pool like:
    * Selected Pool - Name/Health/ID/Average RTT
    * Session Affinity - Type/Status
    But it also exposes information about LB's pools and origins regardless
    the selection decision, like:
    * Pools ID/Name/Health/Average RTT/Selected
    * Origins Name/FQDN/Ipv4/Ipv6/Selected
    The latter metrics can be used to report the health of all pools
    associated with account's LBs.
    For this reason, this commit adds the required `loadBalancingRequestsAdaptive`
    schema struct on the lbResp struct and configures it as the source for the
    `cloudflare_zone_pool_health_status` metric.
    
    1. https://developers.cloudflare.com/load-balancing/reference/load-balancing-analytics/#graphql-analytics
    
    * feat: Add poolRequestsTotal metric
    
    This commit introduces a prometheus counter metric about the total
    number of requests per pool.
    axilleastr authored Jul 24, 2022
    Configuration menu
    Copy the full SHA
    b6871aa View commit details
    Browse the repository at this point in the history
Loading