Pemantauan
Dengan menggunakan middleware pemantauan dari Fiber, Anda dapat melaporkan metrik server, terinspirasi oleh express-status-monitor, yang dapat memonitor CPU, memori, waktu respon permintaan, jumlah koneksi simultan, dan lainnya secara real-time.
Catatan: Monitor masih dalam fase pengujian, dan API dapat berubah di masa mendatang!
Tanda Tangan
func New() fiber.Handler
Contoh
Impor paket middleware dari kerangka kerja web Fiber
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/monitor"
)
Setelah menginisialisasi aplikasi Fiber Anda, Anda dapat menggunakan opsi berikut:
// Inisialisasi dengan konfigurasi default (memasang middleware ke /metrics)
app.Get("/metrics", monitor.New())
// Atau perluas dengan konfigurasi kustom
// Menetapkan middleware ke /metrics
// dan mengubah judul menjadi "Halaman Metrik Layanan Saya"
app.Get("/metrics", monitor.New(monitor.Config{Title: "Halaman Metrik Layanan Saya"}))
Anda juga dapat mengakses titik akhir API menggunakan curl -X GET -H "Accept: application/json" http://localhost:3000/metrics
, yang akan mengembalikan:
{"pid":{ "cpu":0.4568381746582226, "ram":20516864, "conns":3 },
"os": { "cpu":8.759124087593099, "ram":3997155328, "conns":44,
"total_ram":8245489664, "load_avg":0.51 }}
Konfigurasi
Properti | Tipe | Deskripsi | Default |
---|---|---|---|
Title | string |
Judul halaman metrik | "Pemantauan Fiber" |
Refresh | time.Duration |
Periode penyegaran | 3 detik |
APIOnly | bool |
Apakah layanan hanya mengekspos API pemantauan | false |
Next | func(*fiber.Ctx) bool |
Next mendefinisikan fungsi yang melewati middleware ini ketika bernilai true | nil |
CustomHead | string |
Kode HTML kustom untuk ditambahkan ke header (berakhir sebelum) | Kosong |
FontURL | string |
Path sumber font atau URL yang ditentukan oleh FontURL | https://fonts.googleapis.com/css2?family=Roboto:wght@400;900&display=swap |
ChartJsURL | string |
Path pustaka ChartJS atau URL yang ditentukan oleh ChartJsURL | https://cdn.jsdelivr.net/npm/[email protected]/dist/Chart.bundle.min.js |
Konfigurasi Default
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,
}),
}