keel/metrics/readme.go
Kevin Franklin Kim 7fded0fa58
feat: fence output
2023-09-11 14:14:58 +02:00

33 lines
679 B
Go

package metrics
import (
"github.com/foomo/keel/markdown"
"github.com/prometheus/client_golang/prometheus"
)
func Readme() string {
md := markdown.Markdown{}
var rows [][]string
if gatherer, err := prometheus.DefaultGatherer.Gather(); err == nil {
for _, value := range gatherer {
rows = append(rows, []string{
markdown.Code(value.GetName()),
value.GetType().String(),
value.GetHelp(),
})
}
}
if len(rows) > 0 {
md.Println("### Metrics")
md.Println("")
md.Println("List of all registered metrics than are being exposed.")
md.Println("")
md.Table([]string{"Name", "Type", "Description"}, rows)
md.Println("")
}
return md.String()
}