Monitor

原文: https://docs.gofiber.io/api/middleware/monitor

Monitor 监视器

Monitor middleware for Fiber that reports server metrics, inspired by express-status-monitor

​ 受 express-status-monitor 启发的 Fiber 服务器指标报告监视中间件

CAUTION 注意

Monitor is still in beta, API might change in the future!

​ Monitor 仍处于测试阶段,API 可能会在未来发生变化!

img

Signatures 签名

1
func New() fiber.Handler

Examples 示例

Import the middleware package that is part of the Fiber web framework

​ 导入 Fiber Web 框架的一部分中间件包

1 2 3 4
import ( "github.com/gofiber/fiber/v2" "github.com/gofiber/fiber/v2/middleware/monitor" )

After you initiate your Fiber app, you can use the following possibilities:

​ 在启动 Fiber 应用后,您可以使用以下可能性:

1 2 3 4 5 6 7
// Initialize default config (Assign the middleware to /metrics) app.Get("/metrics", monitor.New()) // Or extend your config for customization // Assign the middleware to /metrics // and change the Title to `MyService Metrics Page` app.Get("/metrics", monitor.New(monitor.Config{Title: "MyService Metrics Page"}))

You can also access the API endpoint with curl -X GET -H "Accept: application/json" http://localhost:3000/metrics which returns:

​ 您还可以使用 curl -X GET -H "Accept: application/json" http://localhost:3000/metrics 访问 API 端点,它返回:

1 2 3
{"pid":{ "cpu":0.4568381746582226, "ram":20516864, "conns":3 }, "os": { "cpu":8.759124087593099, "ram":3997155328, "conns":44, "total_ram":8245489664, "load_avg":0.51 }}

Config 配置

Property 属性Type 输入Description 说明Default 默认
Title 标题stringMetrics page title 指标页面标题“Fiber Monitor” “Fiber Monitor”
Refresh 刷新time.DurationRefresh period 刷新周期3 seconds 3 秒
APIOnlyboolWhether the service should expose only the monitoring API 服务是否应该仅公开监控 APIfalse
Next 下一步func(*fiber.Ctx) boolNext defines a function to skip this middleware when returned true. 接下来定义一个函数,在返回 true 时跳过此中间件。nil
CustomHead 自定义头部stringCustom HTML Code to Head Section(Before End) 自定义 HTML 代码到头部部分(结束前)empty 空
FontURL 字体 URLstringFontURL for specify font resource path or URL 字体 URL 用于指定字体资源路径或 URLhttps://fonts.googleapis.com/css2?family=Roboto:wght@400;900&display=swap" “https://fonts.googleapis.com/css2?family=Roboto:wght@400;900&display=swap”
ChartJsURLstringChartJsURL for specify ChartJS library path or URL ChartJsURL 用于指定 ChartJS 库路径或 URLhttps://cdn.jsdelivr.net/npm/chart.js@2.9/dist/Chart.bundle.min.js"

Default Config 默认配置

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
var ConfigDefault = Config{ Title: defaultTitle, Refresh: defaultRefresh, FontURL: defaultFontURL, ChartJsURL: defaultChartJSURL, CustomHead: defaultCustomHead, APIOnly: false, Next: nil, index: newIndex(viewBag{ defaultTitle, defaultRefresh, defaultFontURL, defaultChartJSURL, defaultCustomHead, }), }
最后修改 October 10, 2024: 更新 (a4b8f85)