Go Agent v0.1.14
2022년 12월 14일
-
Fixed
UDP 서버가 중지된 상태에서 CPU 사용량이 증가하는 현상 수정UDP 서버가 중지된 상태(whatap-agent 서비스가 중지)에서 Go 모니터링을 적용한 애플리케이션의 CPU 부하가 증가합니다. UDP 서버 접속 및 종료 처리가 반복되면서 UDP 연결이 여러 개 유지되어 CPU 사용량이 증가하였습니다.
-
New
k8s.io/client-go/kubernetes 라이브러리 지원golangimport (
"k8s.io/client-go/rest"
)
func main() {
// Init whatap trace
config := make(map[string]string)
trace.Init(config)
defer trace.Shutdown()
...
config, err := clientcmd.BuildConfigFromFlags("", *kubeconfig)
if err != nil {
return nil, err
}
// whatap roundTripper 함수를 설정합니다.
config.WrapTransport = wRT.WrapRoundTripper()
clientset, err := kubernetes.NewForConfig(config)
if err != nil {
return nil, err
}
deploymentsClient := clientset.AppsV1().Deployments(conf.Server.Namespace)
...
} -
New
github.com/gofiber/fiber/v2 라이브러리 지원golangimport (
"github.com/whatap/go-api/instrumentation/github.com/gofiber/fiber/v2/whatapfiber"
)
func main() {
// Init whatap trace
config := make(map[string]string)
trace.Init(config)
defer trace.Shutdown()
...
r := fiber.New(fiber.Config{
StrictRouting: true,
Views: engine,
})
r.Use(recover.New())
// whatapfiber의 middleware를 등록합니다.
r.Use(whatapfiber.Middleware())
...
} -
New
github.com/valyala/fasthttp 라이브러리 지원golangimport (
"github.com/whatap/go-api/instrumentation/github.com/valyala/fasthttp/whatapfasthttp"
)
func main() {
// Init whatap trace
config := make(map[string]string)
trace.Init(config)
defer trace.Shutdown()
...
r := fiber.New(fiber.Config{
StrictRouting: true,
Views: engine,
})
r.Use(recover.New())
// 래퍼 (Wrapper) 함수 whatapfasthttp.Func을 사용합니다.
r.GET("/", whatapfasthttp.Func(func(ctx *fasthttp.RequestCtx) {
...
}))
r.GET("/hello/{name}", whatapfasthttp.Func(func(ctx *fasthttp.RequestCtx) {
fmt.Fprintf(ctx, "Hello, %s!\n", ctx.UserValue("name"))
ctx.SetContentType("text/html;charset=utf8")
}))
}