MCPcopy Index your code
hub / github.com/coder/coder / main

Function main

scripts/metricsdocgen/scanner/scanner.go:105–129  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

103}
104
105func main() {
106 metrics, err := scanAllDirs()
107 if err != nil {
108 log.Fatalf("Failed to scan directories: %v", err)
109 }
110
111 // Duplicates are not expected since Prometheus enforces unique metric names at registration.
112 uniqueMetrics := make(map[string]Metric)
113 for _, m := range metrics {
114 uniqueMetrics[m.Name] = m
115 }
116 metrics = make([]Metric, 0, len(uniqueMetrics))
117 for _, m := range uniqueMetrics {
118 metrics = append(metrics, m)
119 }
120
121 // Sort metrics by name for consistent output across runs.
122 sort.Slice(metrics, func(i, j int) bool {
123 return metrics[i].Name < metrics[j].Name
124 })
125
126 writeMetrics(metrics, os.Stdout)
127
128 logf("Successfully parsed %d metrics", len(metrics))
129}
130
131// scanAllDirs scans all configured directories for metric definitions.
132func scanAllDirs() ([]Metric, error) {

Callers

nothing calls this directly

Calls 4

scanAllDirsFunction · 0.85
writeMetricsFunction · 0.85
logfFunction · 0.85
FatalfMethod · 0.45

Tested by

no test coverage detected