Skip to content

PPROF

Enable pprof UI。

Install#

go get github.com/rookie-ninja/rk-boot/v2
go get github.com/rookie-ninja/rk-gin/v2

Options#

options description type default
gin.pprof.enabled Enable pprof web UI boolean false
gin.pprof.path Path of pprof web UI string pprof

Quick start#

1.Create boot.yaml#

---
gin:
  - name: greeter
    port: 8080
    enabled: true
    pprof:
      enabled: true
#      path: ""

2.Create main.go#

package main

import (
    "context"
    "fmt"
    "github.com/gin-gonic/gin"
    "github.com/rookie-ninja/rk-boot/v2"
    "github.com/rookie-ninja/rk-gin/v2/boot"
    "net/http"
)

func main() {
    // Create a new boot instance.
    boot := rkboot.NewBoot()

    // Register handler
    entry := rkgin.GetGinEntry("greeter")
    entry.Router.GET("/v1/greeter", Greeter)

    // Bootstrap
    boot.Bootstrap(context.TODO())

    boot.WaitForShutdownSig(context.TODO())
}

func Greeter(ctx *gin.Context) {
    ctx.JSON(http.StatusOK, &GreeterResponse{
        Message: fmt.Sprintf("Hello %s!", ctx.Query("name")),
    })
}

type GreeterResponse struct {
    Message string
}

3.Validate#

PPROF: http://localhost:8080/pprof

Cheers#