cloudflare-exporter icon indicating copy to clipboard operation
cloudflare-exporter copied to clipboard

bring name custom rule (firewallcustom), any help with query?

Open shiondelibra opened this issue 1 year ago • 2 comments

when I use the query,(cloudflare_zone_firewall_events_count) brings all the information but when "source" = firewallcustom, it doesn't bring the name of the rule, how do I bring the name of each rule? I'm using grafana

image

HELP PLZ

shiondelibra avatar Dec 05 '24 18:12 shiondelibra

I've had a look and it seems that the cloudflare.go file is not getting all the custom rules, in fact it get's none

https://github.com/lablabs/cloudflare-exporter/blob/8bc93cb2629e9756c60114f061b636f5adaa75c8/cloudflare.go#L304

It seems the below may fix it, but I've not tried this yet

for _, rulesetDesc := range listOfRulesets {
		if rulesetDesc.Phase == "http_request_firewall_managed" {
			ruleset, err := api.GetRuleset(ctx, cloudflare.ZoneIdentifier(zoneID), rulesetDesc.ID)
			if err != nil {
				log.Fatal(err)
			}
			for _, rule := range ruleset.Rules {
				firewallRulesMap[rule.ID] = rule.Description
			}
		}

+		if rulesetDesc.Phase == "http_request_firewall_custom" {
+			ruleset, err := api.GetRuleset(ctx, cloudflare.ZoneIdentifier(zoneID), rulesetDesc.ID)
+			if err != nil {
+				log.Fatal(err)
+			}
+			for _, rule := range ruleset.Rules {
+				firewallRulesMap[rule.ID] = rule.Description
+			}
		}
	}

userbradley avatar Sep 29 '25 10:09 userbradley

This has been resolved by https://github.com/lablabs/cloudflare-exporter/pull/148

userbradley avatar Oct 06 '25 12:10 userbradley