|
@@ -10,16 +10,17 @@ import (
|
|
|
"sync"
|
|
"sync"
|
|
|
"time"
|
|
"time"
|
|
|
|
|
|
|
|
|
|
+ "github.com/gofiber/contrib/v3/monitor"
|
|
|
"github.com/gofiber/fiber/v3"
|
|
"github.com/gofiber/fiber/v3"
|
|
|
"github.com/gofiber/fiber/v3/middleware/compress"
|
|
"github.com/gofiber/fiber/v3/middleware/compress"
|
|
|
- "github.com/gofiber/fiber/v3/middleware/filesystem"
|
|
|
|
|
- "github.com/gofiber/fiber/v3/middleware/monitor"
|
|
|
|
|
|
|
+ "github.com/gofiber/fiber/v3/middleware/static"
|
|
|
|
|
|
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/stream_name"
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs/stream_name"
|
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev0/etypes/ebool"
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev0/etypes/ebool"
|
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev0/helpers"
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev0/helpers"
|
|
|
mKs "gitp78su.ipnodns.ru/svi/kern/v4/lev0/kspec"
|
|
mKs "gitp78su.ipnodns.ru/svi/kern/v4/lev0/kspec"
|
|
|
mL1 "gitp78su.ipnodns.ru/svi/kern/v4/lev1"
|
|
mL1 "gitp78su.ipnodns.ru/svi/kern/v4/lev1"
|
|
|
|
|
+ "gitp78su.ipnodns.ru/svi/kern/v4/lev1/log_buf"
|
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev2/kctx"
|
|
"gitp78su.ipnodns.ru/svi/kern/v4/lev2/kctx"
|
|
|
)
|
|
)
|
|
|
|
|
|
|
@@ -49,7 +50,11 @@ var (
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
func getParams() (string, mKs.ILogBuf, mKs.IKernelCtx) {
|
|
func getParams() (string, mKs.ILogBuf, mKs.IKernelCtx) {
|
|
|
- log := mL1.NewLogBuf(mL1.OptIsTerm(true), mL1.OptPrefix("kServHttp"))
|
|
|
|
|
|
|
+ param := &log_buf.LogBufParam{
|
|
|
|
|
+ IsTerm_: mL1.NewSafeBool(true),
|
|
|
|
|
+ Prefix_: "kServHttp",
|
|
|
|
|
+ }
|
|
|
|
|
+ log := mL1.NewLogBuf(param)
|
|
|
log.Debug("GetKernelServHttp(): first run")
|
|
log.Debug("GetKernelServHttp(): first run")
|
|
|
strLocalUrl := os.Getenv("LOCAL_HTTP_URL")
|
|
strLocalUrl := os.Getenv("LOCAL_HTTP_URL")
|
|
|
hassert(strLocalUrl != "", "getParams(): env LOCAL_HTTP_URL not set")
|
|
hassert(strLocalUrl != "", "getParams(): env LOCAL_HTTP_URL not set")
|
|
@@ -83,19 +88,24 @@ func GetKernelServHttp() mKs.IKernelServerHttp {
|
|
|
lCtx: mL1.NewLocalCtx(kCtx.Ctx()),
|
|
lCtx: mL1.NewLocalCtx(kCtx.Ctx()),
|
|
|
strUrl: strLocalUrl,
|
|
strUrl: strLocalUrl,
|
|
|
fiberApp: fiber.New(confFiber),
|
|
fiberApp: fiber.New(confFiber),
|
|
|
- isWork: mL1.NewSafeBool(),
|
|
|
|
|
- isEnd: mL1.NewSafeBool(),
|
|
|
|
|
|
|
+ isWork: mL1.NewSafeBool(false),
|
|
|
|
|
+ isEnd: mL1.NewSafeBool(false),
|
|
|
}
|
|
}
|
|
|
sf.fiberApp.Use(compress.New(compress.Config{
|
|
sf.fiberApp.Use(compress.New(compress.Config{
|
|
|
Level: compress.LevelBestCompression, // 2
|
|
Level: compress.LevelBestCompression, // 2
|
|
|
}))
|
|
}))
|
|
|
- sf.fiberApp.Use("/static", filesystem.New(filesystem.Config{
|
|
|
|
|
|
|
+ sf.fiberApp.Get("/static", static.New(static.Config{
|
|
|
Root: http.FS(embedDirStatic),
|
|
Root: http.FS(embedDirStatic),
|
|
|
PathPrefix: "static",
|
|
PathPrefix: "static",
|
|
|
Browse: true,
|
|
Browse: true,
|
|
|
MaxAge: 3600 * 24,
|
|
MaxAge: 3600 * 24,
|
|
|
}))
|
|
}))
|
|
|
- sf.fiberApp.Get("/monitor", monitor.New(monitor.Config{Title: strMonolit}))
|
|
|
|
|
|
|
+ // Или расширьте конфигурацию для индивидуальной настройки
|
|
|
|
|
+ // Назначьте промежуточное программное обеспечение для /metrics
|
|
|
|
|
+ // и измените заголовок на `Страница метрик MyService`
|
|
|
|
|
+ sf.fiberApp.Get("/metrics", monitor.New(monitor.Config{
|
|
|
|
|
+ Title: fmt.Sprintf("Страница метрик %q", strMonolit),
|
|
|
|
|
+ }))
|
|
|
sf.kCtx.Wg().Add(streamName)
|
|
sf.kCtx.Wg().Add(streamName)
|
|
|
kCtx.Set("fiberApp", sf.fiberApp, "GetKernelServHttp() internal fiber app")
|
|
kCtx.Set("fiberApp", sf.fiberApp, "GetKernelServHttp() internal fiber app")
|
|
|
kernServHttp = sf
|
|
kernServHttp = sf
|