Expvar 标头

未匹配的标注

Expvar 中间件

Fiber 的 Expvar 中间件通过其 HTTP 服务器运行时提供 JSON 格式的变体。 通常只为注册其 HTTP 处理程序的副作用而导入该包。处理的路径是 /debug/vars

签名

func New() fiber.Handler

示例

在 Fiber 项目框架中导入 expvar 包

package main

import (
    "expvar"
    "fmt"

    "github.com/gofiber/fiber/v2"
    expvarmw "github.com/gofiber/fiber/v2/middleware/expvar"
)

var count = expvar.NewInt("count")

func main() {
    app := fiber.New()
    app.Use(expvarmw.New())
    app.Get("/", func(c *fiber.Ctx) error {
        count.Add(1)

        return c.SendString(fmt.Sprintf("hello expvar count %d", count.Value()))
    })

    fmt.Println(app.Listen(":3000"))
}

访问 /debug/vars 路径地址以查看所有变量并使用 r=key 查询过滤暴露的变量。

curl 127.0.0.1:3000
hello expvar count 1

curl 127.0.0.1:3000/debug/vars
{
    "cmdline": ["xxx"],
    "count": 1,
    "expvarHandlerCalls": 33,
    "expvarRegexpErrors": 0,
    "memstats": {...}
}

curl 127.0.0.1:3000/debug/vars?r=c
{
    "cmdline": ["xxx"],
    "count": 1
}

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/gofiber/2.x/exp...

译文地址:https://learnku.com/docs/gofiber/2.x/exp...

上一篇 下一篇
贡献者:1
讨论数量: 0
发起讨论 只看当前版本


暂无话题~