Fibernewrelic
Fiber용 NewRelic 지원.
참고: Go 1.18 이상 버전 필요
Installation
go get -u github.com/gofiber/fiber/v2
go get -u github.com/gofiber/contrib/fibernewrelic
Signatures
fibernewrelic.New(config fibernewrelic.Config) fiber.Handler
Config
Property
Type
Description
Default
License
string
필수 - New Relic 라이센스 키
""
AppName
string
New Relic 애플리케이션 이름
fiber-api
Enabled
bool
New Relic 활성화/비활성화
false
TransportType
string
HTTP 또는 HTTPS 가능 (Deprecated)
"HTTP"
Application
Application
기존 New Relic 앱
nil
ErrorStatusCodeHandler
func(c *fiber.Ctx, err error) int
newrelic 상태 코드를 변경하고자 하는 경우 사용 가능
DefaultErrorStatusCodeHandler
Examples
package main
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/contrib/fibernewrelic"
)
func main() {
app := fiber.New()
app.Get("/", func(ctx *fiber.Ctx) error {
return ctx.SendStatus(200)
})
cfg := fibernewrelic.Config{
License: "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
AppName: "MyCustomApi",
Enabled: true,
}
app.Use(fibernewrelic.New(cfg))
app.Listen(":8080")
}
기존 New Relic 애플리케이션과 함께 사용
package main
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/contrib/fibernewrelic"
"github.com/newrelic/go-agent/v3/newrelic"
)
func main() {
newrelicApp, err := newrelic.NewApplication(
newrelic.ConfigAppName("MyCustomApi"),
newrelic.ConfigLicense("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"),
newrelic.ConfigEnabled(true),
)
app := fiber.New()
app.Get("/", func(ctx *fiber.Ctx) error {
return ctx.SendStatus(200)
})
app.Get("/foo", func(ctx *fiber.Ctx) error {
txn := newrelic.FromContext(ctx)
segment := txn.StartSegment("foo segment")
defer segment.End()
// foo 수행
return nil
})
cfg := fibernewrelic.Config{
Application: newrelicApp,
}
app.Use(fibernewrelic.New(cfg))
app.Listen(":8080")
}
Last updated