nerdswords / yet-another-cloudwatch-exporter

Prometheus exporter for AWS CloudWatch - Discovers services through AWS tags, gets CloudWatch metrics data and provides them as Prometheus metrics with AWS tags as labels
Apache License 2.0
953 stars 328 forks source link

[BUG] WAFV2 - unable to define a regex mapping #1429

Closed ItsMisterP closed 3 months ago

ItsMisterP commented 3 months ago

Is there an existing issue for this?

YACE version

0.57.1

Config file

apiVersion: v1alpha1
# Note that at least one of the following blocks must be defined.
....
    #https://docs.aws.amazon.com/waf/latest/developerguide/waf-metrics.html
    - type: AWS/WAFV2
      regions:
        - us-east-1 # us-east-1 is used for global metrics
      period: 120
      length: 120
      delay: 60
      searchTags:
        - key: MonitoredBy
          value: envprd
      nilToZero: true
      dimensionNameRequirements:
        - WebACL
      addCloudwatchTimestamp: true
      metrics:
        - name: AllowedRequests
          statistics: [ Sum ]
        - name: BlockedRequests
          statistics: [ Sum ]
        - name: CountedRequests
          statistics: [ Sum ]

Current Behavior

as associator mapping i get the following output (i have to anonymize some critical parts): {dimensions=[WebACL], dimensions_mappings={10135205408878935748=arn:aws:wafv2:us-east-1:1234567890:global/webacl/webacl1/123456789,8941771112228765902=arn:aws:wafv2:us-east-1:1234567890:global/webacl/webacl2/1234567890,12077355523687586948=arn:aws:wafv2:us-east-1:1234567890:global/webacl/webacl3/1234567890,}}

it works a time ago. But as i added the webacl3 it stop working and i can see the following error in the logs: unable to define a regex mapping /webacl/(?P[^/]+)

And this results in No metrics data found

All webacls are tagged.

Expected Behavior

Metrics are available

Steps To Reproduce

Use the config and try it by your own

Anything else?

No response