aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Ondřej Benkovský <ondrej.benkovsky@jamf.com> 2022-09-15 15:36:49 +0200
committerGravatar GitHub <noreply@github.com> 2022-09-15 09:36:49 -0400
commit51f021c079cfb21b355a6412917345c80eeaccad (patch)
tree976f2e2af5fd595626ab69abf52b36e13f232647
parent4116a4ebdb0caae743cc9ebe0b462a0055c12754 (diff)
downloadcoredns-51f021c079cfb21b355a6412917345c80eeaccad.tar.gz
coredns-51f021c079cfb21b355a6412917345c80eeaccad.tar.zst
coredns-51f021c079cfb21b355a6412917345c80eeaccad.zip
plugin/template : add view label into plugin metrics (#5620)
Signed-off-by: Ondřej Benkovský <ondrej.benkovsky@jamf.com>
-rw-r--r--plugin/template/README.md6
-rw-r--r--plugin/template/metrics.go6
-rw-r--r--plugin/template/template.go14
3 files changed, 13 insertions, 13 deletions
diff --git a/plugin/template/README.md b/plugin/template/README.md
index ec37c7d26..55889f7bc 100644
--- a/plugin/template/README.md
+++ b/plugin/template/README.md
@@ -64,9 +64,9 @@ The output of the template must be a [RFC 1035](https://tools.ietf.org/html/rfc1
If monitoring is enabled (via the *prometheus* plugin) then the following metrics are exported:
-* `coredns_template_matches_total{server, regex}` the total number of matched requests by regex.
-* `coredns_template_template_failures_total{server, regex,section,template}` the number of times the Go templating failed. Regex, section and template label values can be used to map the error back to the config file.
-* `coredns_template_rr_failures_total{server, regex,section,template}` the number of times the templated resource record was invalid and could not be parsed. Regex, section and template label values can be used to map the error back to the config file.
+* `coredns_template_matches_total{server, zone, view, class, type}` the total number of matched requests by regex.
+* `coredns_template_template_failures_total{server, zone, view, class, type, section, template}` the number of times the Go templating failed. Regex, section and template label values can be used to map the error back to the config file.
+* `coredns_template_rr_failures_total{server, zone, view, class, type, section, template}` the number of times the templated resource record was invalid and could not be parsed. Regex, section and template label values can be used to map the error back to the config file.
Both failure cases indicate a problem with the template configuration. The `server` label indicates
the server incrementing the metric, see the *metrics* plugin for details.
diff --git a/plugin/template/metrics.go b/plugin/template/metrics.go
index b18cded78..6a6912a4f 100644
--- a/plugin/template/metrics.go
+++ b/plugin/template/metrics.go
@@ -14,19 +14,19 @@ var (
Subsystem: "template",
Name: "matches_total",
Help: "Counter of template regex matches.",
- }, []string{"server", "zone", "class", "type"})
+ }, []string{"server", "zone", "view", "class", "type"})
// templateFailureCount is the counter of go template failures.
templateFailureCount = promauto.NewCounterVec(prometheus.CounterOpts{
Namespace: plugin.Namespace,
Subsystem: "template",
Name: "template_failures_total",
Help: "Counter of go template failures.",
- }, []string{"server", "zone", "class", "type", "section", "template"})
+ }, []string{"server", "zone", "view", "class", "type", "section", "template"})
// templateRRFailureCount is the counter of mis-templated RRs.
templateRRFailureCount = promauto.NewCounterVec(prometheus.CounterOpts{
Namespace: plugin.Namespace,
Subsystem: "template",
Name: "rr_failures_total",
Help: "Counter of mis-templated RRs.",
- }, []string{"server", "zone", "class", "type", "section", "template"})
+ }, []string{"server", "zone", "view", "class", "type", "section", "template"})
)
diff --git a/plugin/template/template.go b/plugin/template/template.go
index abeadf05d..7b6647109 100644
--- a/plugin/template/template.go
+++ b/plugin/template/template.go
@@ -86,7 +86,7 @@ func (h Handler) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.Msg)
continue
}
- templateMatchesCount.WithLabelValues(metrics.WithServer(ctx), data.Zone, data.Class, data.Type).Inc()
+ templateMatchesCount.WithLabelValues(metrics.WithServer(ctx), data.Zone, metrics.WithView(ctx), data.Class, data.Type).Inc()
if template.rcode == dns.RcodeServerFailure {
return template.rcode, nil
@@ -98,7 +98,7 @@ func (h Handler) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.Msg)
msg.Rcode = template.rcode
for _, answer := range template.answer {
- rr, err := executeRRTemplate(metrics.WithServer(ctx), "answer", answer, data)
+ rr, err := executeRRTemplate(metrics.WithServer(ctx), metrics.WithView(ctx), "answer", answer, data)
if err != nil {
return dns.RcodeServerFailure, err
}
@@ -111,14 +111,14 @@ func (h Handler) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.Msg)
}
}
for _, additional := range template.additional {
- rr, err := executeRRTemplate(metrics.WithServer(ctx), "additional", additional, data)
+ rr, err := executeRRTemplate(metrics.WithServer(ctx), metrics.WithView(ctx), "additional", additional, data)
if err != nil {
return dns.RcodeServerFailure, err
}
msg.Extra = append(msg.Extra, rr)
}
for _, authority := range template.authority {
- rr, err := executeRRTemplate(metrics.WithServer(ctx), "authority", authority, data)
+ rr, err := executeRRTemplate(metrics.WithServer(ctx), metrics.WithView(ctx), "authority", authority, data)
if err != nil {
return dns.RcodeServerFailure, err
}
@@ -135,16 +135,16 @@ func (h Handler) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.Msg)
// Name implements the plugin.Handler interface.
func (h Handler) Name() string { return "template" }
-func executeRRTemplate(server, section string, template *gotmpl.Template, data *templateData) (dns.RR, error) {
+func executeRRTemplate(server, view, section string, template *gotmpl.Template, data *templateData) (dns.RR, error) {
buffer := &bytes.Buffer{}
err := template.Execute(buffer, data)
if err != nil {
- templateFailureCount.WithLabelValues(server, data.Zone, data.Class, data.Type, section, template.Tree.Root.String()).Inc()
+ templateFailureCount.WithLabelValues(server, data.Zone, view, data.Class, data.Type, section, template.Tree.Root.String()).Inc()
return nil, err
}
rr, err := dns.NewRR(buffer.String())
if err != nil {
- templateRRFailureCount.WithLabelValues(server, data.Zone, data.Class, data.Type, section, template.Tree.Root.String()).Inc()
+ templateRRFailureCount.WithLabelValues(server, data.Zone, view, data.Class, data.Type, section, template.Tree.Root.String()).Inc()
return rr, err
}
return rr, nil
on value='test/new-ssr-demo'>test/new-ssr-demo Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/examples/astro-markdown/src (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2025-03-31fix: update `vite` to latest version (#13526)Gravatar Junseong Park 15-101/+118
* fix: update `vite` to latest version * apply suggestion Co-authored-by: ematipico <602478+ematipico@users.noreply.github.com>
2025-03-31[ci] formatGravatar Emanuele Stoppa 3-4/+2
2025-03-31fix(i18n): return value from `preferredLocale` (#13524)Gravatar Emanuele Stoppa 5-15/+51
* fix(i18n): return value from `preferredLocale` * revert change Co-authored-by: florian-lefebvre <69633530+florian-lefebvre@users.noreply.github.com>
2025-03-31chore(tailwind): delete integration (#13511)Gravatar Florian Lefebvre 16-1083/+1
2025-03-31fix(deps): update all non-major dependencies (#13521)Gravatar renovate[bot] 14-163/+163
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-31[ci] formatGravatar Matt Kane 3-4/+3
2025-03-31feat(cloudflare): add KV session storage support (#13514)Gravatar Matt Kane 19-487/+490
* feat(cloudflare): add KV session storage support * Change code block language to JSONC * Comments * Use user-defined binding name * Use createCodegenDir * Remove unused import
2025-03-31fix(deps): update astro client runtimes (#13522)Gravatar renovate[bot] 4-6/+7
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-27fix(deps): update astro dependencies (#13498)Gravatar renovate[bot] 47-412/+427
* fix(deps): update astro dependencies * fix types shenanigans --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2025-03-27[ci] formatGravatar Emanuele Stoppa 3-8/+7
2025-03-27refactor(actions): use `Omit` to avoid leaking types to shared context (#13429)Gravatar Emanuele Stoppa 5-11/+41
* wip * fix(actions): avoid mutation of action context * chore: revert changes * add changeset * Update .changeset/calm-beans-roll.md Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev> --------- Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
2025-03-26[ci] release (#13504)astro@5.5.5@astrojs/vue@5.0.8@astrojs/tailwind@6.0.2@astrojs/svelte@7.0.8@astrojs/studio@0.1.5@astrojs/solid-js@5.0.6@astrojs/react@4.2.2@astrojs/preact@4.0.7@astrojs/netlify@6.2.4@astrojs/mdx@4.2.2@astrojs/markdoc@0.13.2@astrojs/db@0.14.9@astrojs/cloudflare@12.3.1@astrojs/alpinejs@0.4.4Gravatar Houston (Bot) 56-132/+197
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-03-26[ci] formatGravatar Florian Lefebvre 2-2/+2
2025-03-26fix(astro): dynamically import actions (#13510)Gravatar Florian Lefebvre 12-51/+96
* feat: update test * feat: dynamic import * chore: changeset * Update .changeset/clever-tigers-dig.md
2025-03-26[ci] formatGravatar Matt Kane 2-2/+2
2025-03-26fix: cache raw cookie value and decode when getting (#13485)Gravatar Matt Kane 3-17/+37
* fix: cache raw cookie value and decode when getting * Add test * Add comment
2025-03-25fix: update vite (#13505)Gravatar Emanuele Stoppa 16-104/+123
* fix: update vite * use dedupe
2025-03-24[ci] formatGravatar Emanuele Stoppa 1-1/+1
2025-03-24fix(app): call renderer when routes don't match (#13483)Gravatar Emanuele Stoppa 4-1/+30
* fix(app): call renderer when routes don't match * chore: pick 404 exactly * chore: pick route differently Co-authored-by: ascorbic <213306+ascorbic@users.noreply.github.com>
2025-03-21[ci] release (#13460)astro@5.5.4@astrojs/vercel@8.1.3@astrojs/tailwind@6.0.1@astrojs/svelte@7.0.7@astrojs/preact@4.0.6@astrojs/cloudflare@12.3.0Gravatar Houston (Bot) 45-118/+119
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-03-21fix: better error handling on Stackblitz (#13484)Gravatar Matt Kane 2-0/+12
* fix: better error handling on Stackblitz * Remove unused imports
2025-03-21Repair server islands to work with client router (#13481)Gravatar Martin Trapp 2-6/+11
* rerun server island scripts when used with client router
2025-03-21fix: generate correct external redirects (#13480)Gravatar Matt Kane 3-4/+21
2025-03-21fix(deps): update all non-major dependencies (#13440)Gravatar renovate[bot] 24-435/+436
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-21[ci] formatGravatar Florian Lefebvre 2-2/+2
2025-03-21feat(cloudflare): global env (#13444)Gravatar Florian Lefebvre 6-47/+130
* feat(cloudflare): global env * fix: test
2025-03-21fix(deps): update astro client runtimes (#13474)Gravatar renovate[bot] 7-345/+348
* fix(deps): update astro client runtimes * fix: pin vite-plugin-vue --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
2025-03-20Small change to linking style (#13472)Gravatar Chris Swithinbank 1-1/+1
Co-authored-by: sarah11918 <5098874+sarah11918@users.noreply.github.com>
2025-03-20Add deprecation notice to Tailwind integration README (#13471)Gravatar Chris Swithinbank 2-6/+11
* Add deprecation notice to Tailwind integration README * Add changeset * Use `[docs]` link style again * update link to more direct content --------- Co-authored-by: Sarah Rainsberger <5098874+sarah11918@users.noreply.github.com> Co-authored-by: anaxite <89195061+anaxite@users.noreply.github.com> Co-authored-by: sarah11918 <5098874+sarah11918@users.noreply.github.com> Co-authored-by: Adammatthiesen <30383579+Adammatthiesen@users.noreply.github.com> Co-authored-by: HiDeoo <494699+HiDeoo@users.noreply.github.com>
2025-03-20[ci] formatGravatar Matt Kane 2-2/+1
2025-03-20fix(preact,svelte): empty target container before rendering `client:only` ↵Gravatar Matt Kane 5-5/+41
island (#13470) * fix(preact,svelte): empty target container before rendering `client:only` island * Remove log
2025-03-20chore(renovate): group updates (#13466)Gravatar Emanuele Stoppa 1-11/+58
2025-03-19[ci] formatGravatar Matt Kane 1-3/+2
2025-03-19fix: don't attempt to move files after build with base (#13463)Gravatar Matt Kane 8-13/+66
* fix: don't attempt to move files after build with base * Remove console * Reword changeset * Remove unused import
2025-03-19[ci] formatGravatar Emanuele Stoppa 2-6/+18
2025-03-19fix(routing): don't add site to static redirects (#13447)Gravatar Emanuele Stoppa 7-10/+49
* fix(routing): don't add site to static redirects * chore: fix canonical tag * chore: fix canonical tag Co-authored-by: ascorbic <213306+ascorbic@users.noreply.github.com>
2025-03-18[ci] formatGravatar Matt Kane 2-2/+1
2025-03-18fix: set correct statusText for custom error pages (#13457)Gravatar Matt Kane 4-2/+19
* fix: set correct statusText for custom error pages * Set conditionally
2025-03-18chore(deps): update github-actions (#13459)Gravatar renovate[bot] 9-13/+13
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-18chore(deps): update github-actions (#13458)Gravatar renovate[bot] 1-5/+5
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-18[ci] formatGravatar Emanuele Stoppa 1-1/+3
2025-03-18chore: remove deprecated package (#13455)Gravatar Emanuele Stoppa 3-23/+16
2025-03-18fix(deps): update dependency miniflare to v4 (#13441)Gravatar renovate[bot] 2-31/+31
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>