# This configuration sets up DNS traffic monitoring through DNStap on port 6000, 
# and computes Prometheus metrics for analysis.
#
# As prerequisites, we assume you have 
# - a DNS server which supports DNSTap (unbound, bind, powerdns, etc) for more informations about dnstap, 
#   read the following page: https://dmachard.github.io/posts/0001-dnstap-testing/
# - a Prometheus instance ready to scrap on tcp/8080
# - Basic or advanced dashboards are deployed on Grafana: doc/dashboards.md

# If turned on, debug messages are printed in the standard output
global:
  trace:
    verbose: true

pipelines:
  # Listen on tcp/6000 for incoming DNSTap protobuf messages from dns servers
  - name: tap
    dnstap:
      listen-ip: 0.0.0.0
      listen-port: 6000
    # Routes DNS messages from the tap collector to the prometheus logger
    routing-policy:
      forward: [ prom ]

  # Exposes prometheus metrics
  - name: prom
    prometheus:
      listen-ip: 0.0.0.0
      listen-port: 8080