exec pint -l debug --no-color lint rules
! stdout .
cmp stderr stderr.txt

-- stderr.txt --
level=INFO msg="Loading configuration file" path=.pint.hcl
level=DEBUG msg="Adding pint config to the parser exclude list" path=.pint.hcl
level=INFO msg="Finding all rules to check" paths=["rules"]
level=DEBUG msg="File parsed" path=rules/0001.yml rules=1
level=DEBUG msg="Glob finder completed" count=1
level=INFO msg="Checking Prometheus rules" entries=1 workers=10 online=true
level=INFO msg="Finding Prometheus servers using file paths" dir=servers match=^(?P<name>\w+).ya?ml$
level=DEBUG msg="Path discovery match" match=^(?P<name>\w+).ya?ml$ path=prom1.yaml
level=DEBUG msg="Extracted regexp variables" regexp=^(?P<name>\w+).ya?ml$ vars={"name":"prom1"}
level=DEBUG msg="Rendered Prometheus server" name=prom1 uri=https://prom1.example.com headers=["X-Host"] timeout=5s concurrency=16 rateLimit=100 uptime=up tags=["name/prom1"] required=true
level=DEBUG msg="Path discovery match" match=^(?P<name>\w+).ya?ml$ path=prom1.yml
level=DEBUG msg="Extracted regexp variables" regexp=^(?P<name>\w+).ya?ml$ vars={"name":"prom1"}
level=DEBUG msg="Rendered Prometheus server" name=prom1 uri=https://prom1.example.com headers=["X-Host"] timeout=5s concurrency=16 rateLimit=100 uptime=up tags=["name/prom1"] required=true
level=DEBUG msg="Path discovery match" match=^(?P<name>\w+).ya?ml$ path=prom2.yaml
level=DEBUG msg="Extracted regexp variables" regexp=^(?P<name>\w+).ya?ml$ vars={"name":"prom2"}
level=DEBUG msg="Rendered Prometheus server" name=prom2 uri=https://prom2.example.com headers=["X-Host"] timeout=5s concurrency=16 rateLimit=100 uptime=up tags=["name/prom2"] required=true
level=DEBUG msg="Path discovery match" match=^(?P<name>\w+).ya?ml$ path=prom2.yml
level=DEBUG msg="Extracted regexp variables" regexp=^(?P<name>\w+).ya?ml$ vars={"name":"prom2"}
level=DEBUG msg="Rendered Prometheus server" name=prom2 uri=https://prom2.example.com headers=["X-Host"] timeout=5s concurrency=16 rateLimit=100 uptime=up tags=["name/prom2"] required=true
level=INFO msg="Configured new Prometheus server" name=prom1 uris=2 uptime=up tags=["name/prom1"] include=[] exclude=["^.*$"]
level=DEBUG msg="Starting query workers" name=prom1 uri=https://prom1.example.com workers=16
level=DEBUG msg="Starting query workers" name=prom1 uri=https://prom1-backup.example.com workers=16
level=INFO msg="Configured new Prometheus server" name=prom2 uris=2 uptime=up tags=["name/prom2"] include=[] exclude=["^.*$"]
level=DEBUG msg="Starting query workers" name=prom2 uri=https://prom2.example.com workers=16
level=DEBUG msg="Starting query workers" name=prom2 uri=https://prom2-backup.example.com workers=16
level=DEBUG msg="Generated all Prometheus servers" count=2
level=DEBUG msg="Found recording rule" path=rules/0001.yml record=sum:up lines=4-5 state=noop
level=DEBUG msg="Configured checks for rule" enabled=["promql/syntax","alerts/for","alerts/comparison","alerts/template","promql/fragile","promql/regexp","rule/dependency","promql/impossible","group/interval"] path=rules/0001.yml rule=sum:up
-- rules/0001.yml --
groups:
- name: foo
  rules:
  - record: sum:up
    expr: sum(up)
-- servers/prom1.yml --
-- servers/prom1.yaml --
-- servers/prom2.yml --
-- servers/prom2.yaml --
-- servers/prom3.yml --
-- servers/prom4.yaml --
-- .pint.hcl --
discovery {
  filepath {
    directory = "servers"
    match = "(?P<name>\\w+).ya?ml"
    ignore = [ "prom[3-9]+.*" ]
    template {
      name     = "{{ $name }}"
      uri      = "https://{{ $name }}.example.com"
      failover = [
        "https://{{ $name }}-backup.example.com"
      ]
      timeout  = "5s"
      headers = {
        "X-Host": "hostname={{ $name }}"
      }
      required = true
      tags     = [
        "name/{{ $name }}"
      ]
      exclude  = [".*"]
    }
  }
}
