mirror of
				https://github.com/coredns/coredns.git
				synced 2025-10-31 10:13:14 -04:00 
			
		
		
		
	prometheus: add docs and fix varz a little
This commit is contained in:
		
							
								
								
									
										30
									
								
								middleware/prometheus/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								middleware/prometheus/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # prometheus | ||||
|  | ||||
| This module enables prometheus metrics for CoreDNS. | ||||
|  | ||||
| The following metrics are exported: | ||||
|  | ||||
| * coredns_dns_request_count_total | ||||
| * coredns_dns_request_duration_seconds | ||||
| * coredns_dns_response_size_bytes | ||||
| * coredns_dns_response_rcode_count_total | ||||
|  | ||||
| Each counter has a label `zone` which is the zonename used for the request/response. | ||||
| The `request_count` metrics has an extra label `qtype` which holds the qtype. And | ||||
| `rcode_count` has an extra label which has the rcode. | ||||
|  | ||||
| Restarting CoreDNS will stop the monitoring. This is a bug. Also [this upstream | ||||
| Caddy bug](https://github.com/mholt/caddy/issues/675). | ||||
|  | ||||
| ## Syntax | ||||
|  | ||||
| ~~~ | ||||
| prometheus | ||||
| ~~~ | ||||
|  | ||||
| For each zone that you want to see metrics for. | ||||
|  | ||||
| It optionally takes an address where the metrics are exported, the default | ||||
| is `localhost:9153`. The metrics path is fixed to `/metrics`. | ||||
|  | ||||
| ## Examples | ||||
| @@ -9,7 +9,7 @@ import ( | ||||
| 	"github.com/prometheus/client_golang/prometheus" | ||||
| ) | ||||
|  | ||||
| const namespace = "daddy" | ||||
| const namespace = "coredns" | ||||
|  | ||||
| var ( | ||||
| 	requestCount    *prometheus.CounterVec | ||||
| @@ -74,7 +74,7 @@ func define(subsystem string) { | ||||
| 	responseRcode = prometheus.NewCounterVec(prometheus.CounterOpts{ | ||||
| 		Namespace: namespace, | ||||
| 		Subsystem: subsystem, | ||||
| 		Name:      "rcode_code_count_total", | ||||
| 		Name:      "response_rcode_count_total", | ||||
| 		Help:      "Counter of response status codes.", | ||||
| 	}, []string{"zone", "rcode"}) | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user