Create install route and template, auto redirect if config file is not
present Enhanced logging: Redirected stdout to custom zerolog logger, removed redundant EnableLogger function, and captured all fmt messages.
- commit
- d5beb42b67d2a8046cda43916524db84a7564971
- author
- bnema · · 2023-09-04 21:12 UTC
- committer
- bnema · · 2023-09-04 17:31 UTC
- parent
- 1a9a8e9
- signature
- unsigned
14 files · +1183 -46
M .gitignore +2 -1
| @@ -1,4 +1,5 @@ | |||
| 1 | 1 | .env | |
| 2 | 2 | node_modules/ | |
| 3 | 3 | tmp/* | |
| 4 | - | logs/*⏎̸ | |
| 4 | + | logs/* | |
| 5 | + | gordon.yml⏎̸ | |
| @@ -1,4 +1,5 @@ | |||||
| 1 | .env | 1 | .env | ||
| 2 | node_modules/ | 2 | node_modules/ | ||
| 3 | tmp/* | 3 | tmp/* | ||
| 4 | - | logs/*⏎̸ | 4 | + | logs/* |
| 5 | + | gordon.yml⏎̸ | |||
M cmd/main.go +1 -0
| @@ -23,6 +23,7 @@ func main() { | |||
| 23 | 23 | gordon.APPLogger.Error().Err(err).Msg("Failed to initialize app") | |
| 24 | 24 | return | |
| 25 | 25 | } | |
| 26 | + | utils.CaptureSTDOUT(gordon.APPLogger) | |
| 26 | 27 | ||
| 27 | 28 | e := echo.New() | |
| 28 | 29 | e.HideBanner = true | |
| @@ -23,6 +23,7 @@ func main() { | |||||
| 23 | gordon.APPLogger.Error().Err(err).Msg("Failed to initialize app") | 23 | gordon.APPLogger.Error().Err(err).Msg("Failed to initialize app") | ||
| 24 | return | 24 | return | ||
| 25 | } | 25 | } | ||
| 26 | + | utils.CaptureSTDOUT(gordon.APPLogger) | |||
| 26 | 27 | ||||
| 27 | e := echo.New() | 28 | e := echo.New() | ||
| 28 | e.HideBanner = true | 29 | e.HideBanner = true | ||
D internal/http/handlers/default.go +0 -30
| @@ -1,30 +0,0 @@ | |||
| 1 | - | package handlers | |
| 2 | - | ||
| 3 | - | import ( | |
| 4 | - | "fmt" | |
| 5 | - | "net/http" | |
| 6 | - | ||
| 7 | - | "github.com/labstack/echo/v4" | |
| 8 | - | "gogs.bnema.dev/gordon-echo/internal/ui" | |
| 9 | - | "gogs.bnema.dev/gordon-echo/pkg/utils" | |
| 10 | - | ) | |
| 11 | - | ||
| 12 | - | func DefaultHTTPErrorHandler(err error, c echo.Context) { | |
| 13 | - | renderer, err := utils.GetRenderer("500.gohtml", ui.PublicFS, utils.NewLogger()) | |
| 14 | - | if err != nil { | |
| 15 | - | c.String(http.StatusInternalServerError, fmt.Sprintf("%v", err)) | |
| 16 | - | } | |
| 17 | - | ||
| 18 | - | data := map[string]interface{}{ | |
| 19 | - | "website": map[string]interface{}{ | |
| 20 | - | "title": "Internal Server Error", | |
| 21 | - | }, | |
| 22 | - | } | |
| 23 | - | ||
| 24 | - | html, err := renderer.Render(data) | |
| 25 | - | if err != nil { | |
| 26 | - | c.String(http.StatusInternalServerError, fmt.Sprintf("%v", err)) | |
| 27 | - | } | |
| 28 | - | ||
| 29 | - | c.HTML(http.StatusInternalServerError, html) | |
| 30 | - | } | |
| @@ -1,30 +0,0 @@ | |||||
| 1 | - | package handlers | |||
| 2 | - | ||||
| 3 | - | import ( | |||
| 4 | - | "fmt" | |||
| 5 | - | "net/http" | |||
| 6 | - | ||||
| 7 | - | "github.com/labstack/echo/v4" | |||
| 8 | - | "gogs.bnema.dev/gordon-echo/internal/ui" | |||
| 9 | - | "gogs.bnema.dev/gordon-echo/pkg/utils" | |||
| 10 | - | ) | |||
| 11 | - | ||||
| 12 | - | func DefaultHTTPErrorHandler(err error, c echo.Context) { | |||
| 13 | - | renderer, err := utils.GetRenderer("500.gohtml", ui.PublicFS, utils.NewLogger()) | |||
| 14 | - | if err != nil { | |||
| 15 | - | c.String(http.StatusInternalServerError, fmt.Sprintf("%v", err)) | |||
| 16 | - | } | |||
| 17 | - | ||||
| 18 | - | data := map[string]interface{}{ | |||
| 19 | - | "website": map[string]interface{}{ | |||
| 20 | - | "title": "Internal Server Error", | |||
| 21 | - | }, | |||
| 22 | - | } | |||
| 23 | - | ||||
| 24 | - | html, err := renderer.Render(data) | |||
| 25 | - | if err != nil { | |||
| 26 | - | c.String(http.StatusInternalServerError, fmt.Sprintf("%v", err)) | |||
| 27 | - | } | |||
| 28 | - | ||||
| 29 | - | c.HTML(http.StatusInternalServerError, html) | |||
| 30 | - | } | |||
M internal/http/middlewares/detect-color-scheme.go +0 -3
| @@ -1,8 +1,6 @@ | |||
| 1 | 1 | package middlewares | |
| 2 | 2 | ||
| 3 | 3 | import ( | |
| 4 | - | "fmt" | |
| 5 | - | ||
| 6 | 4 | "github.com/labstack/echo-contrib/session" | |
| 7 | 5 | "github.com/labstack/echo/v4" | |
| 8 | 6 | ) | |
| @@ -14,7 +12,6 @@ const ColorSchemeKey = "CurrentColorScheme" | |||
| 14 | 12 | func ColorSchemeDetection(next echo.HandlerFunc) echo.HandlerFunc { | |
| 15 | 13 | return func(c echo.Context) error { | |
| 16 | 14 | colorScheme := detectCurrentColorScheme(c) | |
| 17 | - | fmt.Println("Color scheme detected:", colorScheme) | |
| 18 | 15 | c.Set(ColorSchemeKey, colorScheme) | |
| 19 | 16 | return next(c) | |
| 20 | 17 | } | |
| @@ -1,8 +1,6 @@ | |||||
| 1 | package middlewares | 1 | package middlewares | ||
| 2 | 2 | ||||
| 3 | import ( | 3 | import ( | ||
| 4 | - | "fmt" | |||
| 5 | - | ||||
| 6 | "github.com/labstack/echo-contrib/session" | 4 | "github.com/labstack/echo-contrib/session" | ||
| 7 | "github.com/labstack/echo/v4" | 5 | "github.com/labstack/echo/v4" | ||
| 8 | ) | 6 | ) | ||
| @@ -14,7 +12,6 @@ const ColorSchemeKey = "CurrentColorScheme" | |||||
| 14 | func ColorSchemeDetection(next echo.HandlerFunc) echo.HandlerFunc { | 12 | func ColorSchemeDetection(next echo.HandlerFunc) echo.HandlerFunc { | ||
| 15 | return func(c echo.Context) error { | 13 | return func(c echo.Context) error { | ||
| 16 | colorScheme := detectCurrentColorScheme(c) | 14 | colorScheme := detectCurrentColorScheme(c) | ||
| 17 | - | fmt.Println("Color scheme detected:", colorScheme) | |||
| 18 | c.Set(ColorSchemeKey, colorScheme) | 15 | c.Set(ColorSchemeKey, colorScheme) | ||
| 19 | return next(c) | 16 | return next(c) | ||
| 20 | } | 17 | } | ||
M internal/http/routes/admin-routes.go +36 -1
| @@ -11,9 +11,14 @@ import ( | |||
| 11 | 11 | ) | |
| 12 | 12 | ||
| 13 | 13 | func AdminRoute(c echo.Context) error { | |
| 14 | + | // Check if it's the first launch of the app | |
| 15 | + | if utils.IsConfigFilePresent() { | |
| 16 | + | fmt.Println("Fresh installation detected, redirecting to /admin/install") | |
| 17 | + | return c.Redirect(http.StatusFound, "/admin/install") | |
| 18 | + | } | |
| 19 | + | ||
| 14 | 20 | // Retrieve the current language from the context | |
| 15 | 21 | lang := c.Get(middlewares.LangKey).(string) | |
| 16 | - | fmt.Println(lang) | |
| 17 | 22 | ||
| 18 | 23 | staticData, err := utils.PopulateDataFromYAML(lang) | |
| 19 | 24 | if err != nil { | |
| @@ -34,3 +39,33 @@ func AdminRoute(c echo.Context) error { | |||
| 34 | 39 | ||
| 35 | 40 | return c.HTML(http.StatusOK, html) | |
| 36 | 41 | } | |
| 42 | + | ||
| 43 | + | func InstallRoute(c echo.Context) error { | |
| 44 | + | // Check if it's the first launch of the app | |
| 45 | + | if !utils.IsConfigFilePresent() { | |
| 46 | + | fmt.Println("Config file already present, redirecting to /admin") | |
| 47 | + | return c.Redirect(http.StatusFound, "/admin") | |
| 48 | + | } | |
| 49 | + | ||
| 50 | + | // Retrieve the current language from the context | |
| 51 | + | lang := c.Get(middlewares.LangKey).(string) | |
| 52 | + | ||
| 53 | + | staticData, err := utils.PopulateDataFromYAML(lang) | |
| 54 | + | if err != nil { | |
| 55 | + | return err | |
| 56 | + | } | |
| 57 | + | ||
| 58 | + | renderer, err := utils.GetRenderer("install.gohtml", ui.PublicFS, utils.NewLogger()) | |
| 59 | + | if err != nil { | |
| 60 | + | return err | |
| 61 | + | } | |
| 62 | + | ||
| 63 | + | html, err := renderer.Render(staticData.CurrentLang) | |
| 64 | + | if err != nil { | |
| 65 | + | // Return the error into NewLogger() to log it | |
| 66 | + | utils.NewLogger().Error() | |
| 67 | + | return err | |
| 68 | + | } | |
| 69 | + | ||
| 70 | + | return c.HTML(http.StatusOK, html) | |
| 71 | + | } | |
| @@ -11,9 +11,14 @@ import ( | |||||
| 11 | ) | 11 | ) | ||
| 12 | 12 | ||||
| 13 | func AdminRoute(c echo.Context) error { | 13 | func AdminRoute(c echo.Context) error { | ||
| 14 | + | // Check if it's the first launch of the app | |||
| 15 | + | if utils.IsConfigFilePresent() { | |||
| 16 | + | fmt.Println("Fresh installation detected, redirecting to /admin/install") | |||
| 17 | + | return c.Redirect(http.StatusFound, "/admin/install") | |||
| 18 | + | } | |||
| 19 | + | ||||
| 14 | // Retrieve the current language from the context | 20 | // Retrieve the current language from the context | ||
| 15 | lang := c.Get(middlewares.LangKey).(string) | 21 | lang := c.Get(middlewares.LangKey).(string) | ||
| 16 | - | fmt.Println(lang) | |||
| 17 | 22 | ||||
| 18 | staticData, err := utils.PopulateDataFromYAML(lang) | 23 | staticData, err := utils.PopulateDataFromYAML(lang) | ||
| 19 | if err != nil { | 24 | if err != nil { | ||
| @@ -34,3 +39,33 @@ func AdminRoute(c echo.Context) error { | |||||
| 34 | 39 | ||||
| 35 | return c.HTML(http.StatusOK, html) | 40 | return c.HTML(http.StatusOK, html) | ||
| 36 | } | 41 | } | ||
| 42 | + | ||||
| 43 | + | func InstallRoute(c echo.Context) error { | |||
| 44 | + | // Check if it's the first launch of the app | |||
| 45 | + | if !utils.IsConfigFilePresent() { | |||
| 46 | + | fmt.Println("Config file already present, redirecting to /admin") | |||
| 47 | + | return c.Redirect(http.StatusFound, "/admin") | |||
| 48 | + | } | |||
| 49 | + | ||||
| 50 | + | // Retrieve the current language from the context | |||
| 51 | + | lang := c.Get(middlewares.LangKey).(string) | |||
| 52 | + | ||||
| 53 | + | staticData, err := utils.PopulateDataFromYAML(lang) | |||
| 54 | + | if err != nil { | |||
| 55 | + | return err | |||
| 56 | + | } | |||
| 57 | + | ||||
| 58 | + | renderer, err := utils.GetRenderer("install.gohtml", ui.PublicFS, utils.NewLogger()) | |||
| 59 | + | if err != nil { | |||
| 60 | + | return err | |||
| 61 | + | } | |||
| 62 | + | ||||
| 63 | + | html, err := renderer.Render(staticData.CurrentLang) | |||
| 64 | + | if err != nil { | |||
| 65 | + | // Return the error into NewLogger() to log it | |||
| 66 | + | utils.NewLogger().Error() | |||
| 67 | + | return err | |||
| 68 | + | } | |||
| 69 | + | ||||
| 70 | + | return c.HTML(http.StatusOK, html) | |||
| 71 | + | } | |||
M internal/http/routes/router.go +1 -0
| @@ -22,6 +22,7 @@ func ConfigureRouter(e *echo.Echo, app *app.App) *echo.Echo { | |||
| 22 | 22 | } | |
| 23 | 23 | func bindStaticAdminUI(e *echo.Echo) *echo.Echo { | |
| 24 | 24 | e.GET("/admin", AdminRoute) | |
| 25 | + | e.GET("/admin/install", InstallRoute) | |
| 25 | 26 | e.GET("/htmx", handlers.HTMXHandler) | |
| 26 | 27 | e.GET("/*", StaticRoute) | |
| 27 | 28 | e.HTTPErrorHandler = handlers.ErrorNumberHandler | |
| @@ -22,6 +22,7 @@ func ConfigureRouter(e *echo.Echo, app *app.App) *echo.Echo { | |||||
| 22 | } | 22 | } | ||
| 23 | func bindStaticAdminUI(e *echo.Echo) *echo.Echo { | 23 | func bindStaticAdminUI(e *echo.Echo) *echo.Echo { | ||
| 24 | e.GET("/admin", AdminRoute) | 24 | e.GET("/admin", AdminRoute) | ||
| 25 | + | e.GET("/admin/install", InstallRoute) | |||
| 25 | e.GET("/htmx", handlers.HTMXHandler) | 26 | e.GET("/htmx", handlers.HTMXHandler) | ||
| 26 | e.GET("/*", StaticRoute) | 27 | e.GET("/*", StaticRoute) | ||
| 27 | e.HTTPErrorHandler = handlers.ErrorNumberHandler | 28 | e.HTTPErrorHandler = handlers.ErrorNumberHandler | ||
M internal/ui/public/assets/css/tailwind.css +8 -0
| @@ -545,6 +545,10 @@ video { | |||
| 545 | 545 | margin-bottom: 1rem; | |
| 546 | 546 | } | |
| 547 | 547 | ||
| 548 | + | .ml-2 { | |
| 549 | + | margin-left: 0.5rem; | |
| 550 | + | } | |
| 551 | + | ||
| 548 | 552 | .ml-4 { | |
| 549 | 553 | margin-left: 1rem; | |
| 550 | 554 | } | |
| @@ -553,6 +557,10 @@ video { | |||
| 553 | 557 | margin-right: 0.5rem; | |
| 554 | 558 | } | |
| 555 | 559 | ||
| 560 | + | .mt-4 { | |
| 561 | + | margin-top: 1rem; | |
| 562 | + | } | |
| 563 | + | ||
| 556 | 564 | .flex { | |
| 557 | 565 | display: flex; | |
| 558 | 566 | } | |
| @@ -545,6 +545,10 @@ video { | |||||
| 545 | margin-bottom: 1rem; | 545 | margin-bottom: 1rem; | ||
| 546 | } | 546 | } | ||
| 547 | 547 | ||||
| 548 | + | .ml-2 { | |||
| 549 | + | margin-left: 0.5rem; | |||
| 550 | + | } | |||
| 551 | + | ||||
| 548 | .ml-4 { | 552 | .ml-4 { | ||
| 549 | margin-left: 1rem; | 553 | margin-left: 1rem; | ||
| 550 | } | 554 | } | ||
| @@ -553,6 +557,10 @@ video { | |||||
| 553 | margin-right: 0.5rem; | 557 | margin-right: 0.5rem; | ||
| 554 | } | 558 | } | ||
| 555 | 559 | ||||
| 560 | + | .mt-4 { | |||
| 561 | + | margin-top: 1rem; | |||
| 562 | + | } | |||
| 563 | + | ||||
| 556 | .flex { | 564 | .flex { | ||
| 557 | display: flex; | 565 | display: flex; | ||
| 558 | } | 566 | } | ||
M internal/ui/public/index.gohtml +8 -6
| @@ -9,13 +9,15 @@ | |||
| 9 | 9 | <meta name="description" content="{{ .Header.Meta.Description }}" /> | |
| 10 | 10 | <meta name="keywords" content="{{ .Header.Meta.Keywords }}" /> | |
| 11 | 11 | <!-- Custom CSS + Tailwind --> | |
| 12 | - | <link rel="stylesheet" href="assets/css/tailwind.css" /> | |
| 12 | + | <link rel="stylesheet" href="/assets/css/tailwind.css" /> | |
| 13 | 13 | <!-- Iconoir --> | |
| 14 | - | <link rel="stylesheet" href="libs/iconoir.css" /> | |
| 14 | + | <link rel="stylesheet" href="/libs/iconoir.css" /> | |
| 15 | 15 | <!-- Alpine --> | |
| 16 | - | <script src="libs/alpine.min.js"></script> | |
| 16 | + | <script src="/libs/alpine.min.js"></script> | |
| 17 | 17 | <!-- HTMX min js --> | |
| 18 | - | <script src="libs/htmx.min.js"></script> | |
| 18 | + | <script src="/libs/htmx.min.js"></script> | |
| 19 | + | <!-- HTMX SSE --> | |
| 20 | + | <script src="/libs/htmx-sse.js"></script> | |
| 19 | 21 | <!-- Custom JS from assets/js --> | |
| 20 | 22 | <script src="assets/js/custom.js"></script> | |
| 21 | 23 | </head> | |
| @@ -26,7 +28,7 @@ | |||
| 26 | 28 | <div id="logo-mascot-leftnav" class="flex justify-center p-4"> | |
| 27 | 29 | <div class="circle-shadow flex justify-center w-100"> | |
| 28 | 30 | <img | |
| 29 | - | src="assets/imgs/gordon-mascot-hq-trsp.png" | |
| 31 | + | src="/assets/imgs/gordon-mascot-hq-trsp.png" | |
| 30 | 32 | alt="logo" | |
| 31 | 33 | class="sm:h-24 h-32 xl:h-48" | |
| 32 | 34 | /> | |
| @@ -75,7 +77,7 @@ | |||
| 75 | 77 | </div> | |
| 76 | 78 | </div> | |
| 77 | 79 | ||
| 78 | - | <!-- Main Content --> | |
| 80 | + | <!-- Main Content including the navbar --> | |
| 79 | 81 | <div class="flex-1 flex flex-col md:pt-10 space-y-4 ml-4"> | |
| 80 | 82 | <!-- Search Nav within the main content --> | |
| 81 | 83 | <div class="mb-4 flex justify-end"> | |
| @@ -9,13 +9,15 @@ | |||||
| 9 | <meta name="description" content="{{ .Header.Meta.Description }}" /> | 9 | <meta name="description" content="{{ .Header.Meta.Description }}" /> | ||
| 10 | <meta name="keywords" content="{{ .Header.Meta.Keywords }}" /> | 10 | <meta name="keywords" content="{{ .Header.Meta.Keywords }}" /> | ||
| 11 | <!-- Custom CSS + Tailwind --> | 11 | <!-- Custom CSS + Tailwind --> | ||
| 12 | - | <link rel="stylesheet" href="assets/css/tailwind.css" /> | 12 | + | <link rel="stylesheet" href="/assets/css/tailwind.css" /> |
| 13 | <!-- Iconoir --> | 13 | <!-- Iconoir --> | ||
| 14 | - | <link rel="stylesheet" href="libs/iconoir.css" /> | 14 | + | <link rel="stylesheet" href="/libs/iconoir.css" /> |
| 15 | <!-- Alpine --> | 15 | <!-- Alpine --> | ||
| 16 | - | <script src="libs/alpine.min.js"></script> | 16 | + | <script src="/libs/alpine.min.js"></script> |
| 17 | <!-- HTMX min js --> | 17 | <!-- HTMX min js --> | ||
| 18 | - | <script src="libs/htmx.min.js"></script> | 18 | + | <script src="/libs/htmx.min.js"></script> |
| 19 | + | <!-- HTMX SSE --> | |||
| 20 | + | <script src="/libs/htmx-sse.js"></script> | |||
| 19 | <!-- Custom JS from assets/js --> | 21 | <!-- Custom JS from assets/js --> | ||
| 20 | <script src="assets/js/custom.js"></script> | 22 | <script src="assets/js/custom.js"></script> | ||
| 21 | </head> | 23 | </head> | ||
| @@ -26,7 +28,7 @@ | |||||
| 26 | <div id="logo-mascot-leftnav" class="flex justify-center p-4"> | 28 | <div id="logo-mascot-leftnav" class="flex justify-center p-4"> | ||
| 27 | <div class="circle-shadow flex justify-center w-100"> | 29 | <div class="circle-shadow flex justify-center w-100"> | ||
| 28 | <img | 30 | <img | ||
| 29 | - | src="assets/imgs/gordon-mascot-hq-trsp.png" | 31 | + | src="/assets/imgs/gordon-mascot-hq-trsp.png" |
| 30 | alt="logo" | 32 | alt="logo" | ||
| 31 | class="sm:h-24 h-32 xl:h-48" | 33 | class="sm:h-24 h-32 xl:h-48" | ||
| 32 | /> | 34 | /> | ||
| @@ -75,7 +77,7 @@ | |||||
| 75 | </div> | 77 | </div> | ||
| 76 | </div> | 78 | </div> | ||
| 77 | 79 | ||||
| 78 | - | <!-- Main Content --> | 80 | + | <!-- Main Content including the navbar --> |
| 79 | <div class="flex-1 flex flex-col md:pt-10 space-y-4 ml-4"> | 81 | <div class="flex-1 flex flex-col md:pt-10 space-y-4 ml-4"> | ||
| 80 | <!-- Search Nav within the main content --> | 82 | <!-- Search Nav within the main content --> | ||
| 81 | <div class="mb-4 flex justify-end"> | 83 | <div class="mb-4 flex justify-end"> | ||
A internal/ui/public/install.gohtml +54 -0
| @@ -0,0 +1,54 @@ | |||
| 1 | + | <!DOCTYPE html> | |
| 2 | + | <html lang="en"> | |
| 3 | + | <head> | |
| 4 | + | <meta charset="UTF-8" /> | |
| 5 | + | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |
| 6 | + | <title>{{ .header.meta.title }}</title> | |
| 7 | + | <meta name="description" content="{{ .Header.Meta.Description }}" /> | |
| 8 | + | <meta name="keywords" content="{{ .Header.Meta.Keywords }}" /> | |
| 9 | + | <!-- Custom CSS + Tailwind --> | |
| 10 | + | <link rel="stylesheet" href="/assets/css/tailwind.css" /> | |
| 11 | + | <!-- Iconoir --> | |
| 12 | + | <link rel="stylesheet" href="/libs/iconoir.css" /> | |
| 13 | + | <!-- Alpine --> | |
| 14 | + | <script src="/libs/alpine.min.js"></script> | |
| 15 | + | <!-- HTMX min js --> | |
| 16 | + | <script src="/libs/htmx.min.js"></script> | |
| 17 | + | <!-- HTMX SSE --> | |
| 18 | + | <script src="/libs/htmx-sse.js"></script> | |
| 19 | + | <!-- Custom JS from assets/js --> | |
| 20 | + | <script src="/assets/js/custom.js"></script> | |
| 21 | + | </head> | |
| 22 | + | ||
| 23 | + | <body class="IBMPlexSans bg-zinc-200 md:p-8 flex flex-col items-center"> | |
| 24 | + | <!-- Logo and Title --> | |
| 25 | + | <div | |
| 26 | + | id="logo-mascot" | |
| 27 | + | class="flex flex-col justify-center items-center p-4 mb-4" | |
| 28 | + | > | |
| 29 | + | <div class="circle-shadow flex justify-center w-100"> | |
| 30 | + | <img | |
| 31 | + | src="/assets/imgs/gordon-mascot-hq-trsp.png" | |
| 32 | + | alt="logo" | |
| 33 | + | class="sm:h-24 h-32 xl:h-48" | |
| 34 | + | /> | |
| 35 | + | </div> | |
| 36 | + | <div class="flex justify-center mt-4"> | |
| 37 | + | <h1 | |
| 38 | + | class="gordon-title text-2xl lg:text-4xl xl:text-5xl text-gordonmascot-hblue tracking-tighter" | |
| 39 | + | > | |
| 40 | + | Gordon | |
| 41 | + | </h1> | |
| 42 | + | <span class="gordon-v-subtitle text-gordonmascot-mblue text-sm ml-2" | |
| 43 | + | >v0.0.1</span | |
| 44 | + | > | |
| 45 | + | </div> | |
| 46 | + | </div> | |
| 47 | + | ||
| 48 | + | <!-- Main Content --> | |
| 49 | + | <div class="w-full bg-white p-4 rounded-md shadow mb-4"> | |
| 50 | + | <div class="w-full rounded-sm bg-gray-300"></div> | |
| 51 | + | <!-- Mock main card --> | |
| 52 | + | </div> | |
| 53 | + | </body> | |
| 54 | + | </html> | |
| @@ -0,0 +1,54 @@ | |||||
| 1 | + | <!DOCTYPE html> | |||
| 2 | + | <html lang="en"> | |||
| 3 | + | <head> | |||
| 4 | + | <meta charset="UTF-8" /> | |||
| 5 | + | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |||
| 6 | + | <title>{{ .header.meta.title }}</title> | |||
| 7 | + | <meta name="description" content="{{ .Header.Meta.Description }}" /> | |||
| 8 | + | <meta name="keywords" content="{{ .Header.Meta.Keywords }}" /> | |||
| 9 | + | <!-- Custom CSS + Tailwind --> | |||
| 10 | + | <link rel="stylesheet" href="/assets/css/tailwind.css" /> | |||
| 11 | + | <!-- Iconoir --> | |||
| 12 | + | <link rel="stylesheet" href="/libs/iconoir.css" /> | |||
| 13 | + | <!-- Alpine --> | |||
| 14 | + | <script src="/libs/alpine.min.js"></script> | |||
| 15 | + | <!-- HTMX min js --> | |||
| 16 | + | <script src="/libs/htmx.min.js"></script> | |||
| 17 | + | <!-- HTMX SSE --> | |||
| 18 | + | <script src="/libs/htmx-sse.js"></script> | |||
| 19 | + | <!-- Custom JS from assets/js --> | |||
| 20 | + | <script src="/assets/js/custom.js"></script> | |||
| 21 | + | </head> | |||
| 22 | + | ||||
| 23 | + | <body class="IBMPlexSans bg-zinc-200 md:p-8 flex flex-col items-center"> | |||
| 24 | + | <!-- Logo and Title --> | |||
| 25 | + | <div | |||
| 26 | + | id="logo-mascot" | |||
| 27 | + | class="flex flex-col justify-center items-center p-4 mb-4" | |||
| 28 | + | > | |||
| 29 | + | <div class="circle-shadow flex justify-center w-100"> | |||
| 30 | + | <img | |||
| 31 | + | src="/assets/imgs/gordon-mascot-hq-trsp.png" | |||
| 32 | + | alt="logo" | |||
| 33 | + | class="sm:h-24 h-32 xl:h-48" | |||
| 34 | + | /> | |||
| 35 | + | </div> | |||
| 36 | + | <div class="flex justify-center mt-4"> | |||
| 37 | + | <h1 | |||
| 38 | + | class="gordon-title text-2xl lg:text-4xl xl:text-5xl text-gordonmascot-hblue tracking-tighter" | |||
| 39 | + | > | |||
| 40 | + | Gordon | |||
| 41 | + | </h1> | |||
| 42 | + | <span class="gordon-v-subtitle text-gordonmascot-mblue text-sm ml-2" | |||
| 43 | + | >v0.0.1</span | |||
| 44 | + | > | |||
| 45 | + | </div> | |||
| 46 | + | </div> | |||
| 47 | + | ||||
| 48 | + | <!-- Main Content --> | |||
| 49 | + | <div class="w-full bg-white p-4 rounded-md shadow mb-4"> | |||
| 50 | + | <div class="w-full rounded-sm bg-gray-300"></div> | |||
| 51 | + | <!-- Mock main card --> | |||
| 52 | + | </div> | |||
| 53 | + | </body> | |||
| 54 | + | </html> | |||
A internal/ui/public/libs/htmx-sse.js +322 -0
| @@ -0,0 +1,322 @@ | |||
| 1 | + | /* | |
| 2 | + | Server Sent Events Extension | |
| 3 | + | ============================ | |
| 4 | + | This extension adds support for Server Sent Events to htmx. See /www/extensions/sse.md for usage instructions. | |
| 5 | + | ||
| 6 | + | */ | |
| 7 | + | ||
| 8 | + | (function(){ | |
| 9 | + | ||
| 10 | + | /** @type {import("../htmx").HtmxInternalApi} */ | |
| 11 | + | var api; | |
| 12 | + | ||
| 13 | + | htmx.defineExtension("sse", { | |
| 14 | + | ||
| 15 | + | /** | |
| 16 | + | * Init saves the provided reference to the internal HTMX API. | |
| 17 | + | * | |
| 18 | + | * @param {import("../htmx").HtmxInternalApi} api | |
| 19 | + | * @returns void | |
| 20 | + | */ | |
| 21 | + | init: function(apiRef) { | |
| 22 | + | // store a reference to the internal API. | |
| 23 | + | api = apiRef; | |
| 24 | + | ||
| 25 | + | // set a function in the public API for creating new EventSource objects | |
| 26 | + | if (htmx.createEventSource == undefined) { | |
| 27 | + | htmx.createEventSource = createEventSource; | |
| 28 | + | } | |
| 29 | + | }, | |
| 30 | + | ||
| 31 | + | /** | |
| 32 | + | * onEvent handles all events passed to this extension. | |
| 33 | + | * | |
| 34 | + | * @param {string} name | |
| 35 | + | * @param {Event} evt | |
| 36 | + | * @returns void | |
| 37 | + | */ | |
| 38 | + | onEvent: function(name, evt) { | |
| 39 | + | ||
| 40 | + | switch (name) { | |
| 41 | + | ||
| 42 | + | // Try to remove remove an EventSource when elements are removed | |
| 43 | + | case "htmx:beforeCleanupElement": | |
| 44 | + | var internalData = api.getInternalData(evt.target) | |
| 45 | + | if (internalData.sseEventSource) { | |
| 46 | + | internalData.sseEventSource.close(); | |
| 47 | + | } | |
| 48 | + | return; | |
| 49 | + | ||
| 50 | + | // Try to create EventSources when elements are processed | |
| 51 | + | case "htmx:afterProcessNode": | |
| 52 | + | createEventSourceOnElement(evt.target); | |
| 53 | + | } | |
| 54 | + | } | |
| 55 | + | }); | |
| 56 | + | ||
| 57 | + | /////////////////////////////////////////////// | |
| 58 | + | // HELPER FUNCTIONS | |
| 59 | + | /////////////////////////////////////////////// | |
| 60 | + | ||
| 61 | + | ||
| 62 | + | /** | |
| 63 | + | * createEventSource is the default method for creating new EventSource objects. | |
| 64 | + | * it is hoisted into htmx.config.createEventSource to be overridden by the user, if needed. | |
| 65 | + | * | |
| 66 | + | * @param {string} url | |
| 67 | + | * @returns EventSource | |
| 68 | + | */ | |
| 69 | + | function createEventSource(url) { | |
| 70 | + | return new EventSource(url, {withCredentials:true}); | |
| 71 | + | } | |
| 72 | + | ||
| 73 | + | function splitOnWhitespace(trigger) { | |
| 74 | + | return trigger.trim().split(/\s+/); | |
| 75 | + | } | |
| 76 | + | ||
| 77 | + | function getLegacySSEURL(elt) { | |
| 78 | + | var legacySSEValue = api.getAttributeValue(elt, "hx-sse"); | |
| 79 | + | if (legacySSEValue) { | |
| 80 | + | var values = splitOnWhitespace(legacySSEValue); | |
| 81 | + | for (var i = 0; i < values.length; i++) { | |
| 82 | + | var value = values[i].split(/:(.+)/); | |
| 83 | + | if (value[0] === "connect") { | |
| 84 | + | return value[1]; | |
| 85 | + | } | |
| 86 | + | } | |
| 87 | + | } | |
| 88 | + | } | |
| 89 | + | ||
| 90 | + | function getLegacySSESwaps(elt) { | |
| 91 | + | var legacySSEValue = api.getAttributeValue(elt, "hx-sse"); | |
| 92 | + | var returnArr = []; | |
| 93 | + | if (legacySSEValue) { | |
| 94 | + | var values = splitOnWhitespace(legacySSEValue); | |
| 95 | + | for (var i = 0; i < values.length; i++) { | |
| 96 | + | var value = values[i].split(/:(.+)/); | |
| 97 | + | if (value[0] === "swap") { | |
| 98 | + | returnArr.push(value[1]); | |
| 99 | + | } | |
| 100 | + | } | |
| 101 | + | } | |
| 102 | + | return returnArr; | |
| 103 | + | } | |
| 104 | + | ||
| 105 | + | /** | |
| 106 | + | * createEventSourceOnElement creates a new EventSource connection on the provided element. | |
| 107 | + | * If a usable EventSource already exists, then it is returned. If not, then a new EventSource | |
| 108 | + | * is created and stored in the element's internalData. | |
| 109 | + | * @param {HTMLElement} elt | |
| 110 | + | * @param {number} retryCount | |
| 111 | + | * @returns {EventSource | null} | |
| 112 | + | */ | |
| 113 | + | function createEventSourceOnElement(elt, retryCount) { | |
| 114 | + | ||
| 115 | + | if (elt == null) { | |
| 116 | + | return null; | |
| 117 | + | } | |
| 118 | + | ||
| 119 | + | var internalData = api.getInternalData(elt); | |
| 120 | + | ||
| 121 | + | // get URL from element's attribute | |
| 122 | + | var sseURL = api.getAttributeValue(elt, "sse-connect"); | |
| 123 | + | ||
| 124 | + | ||
| 125 | + | if (sseURL == undefined) { | |
| 126 | + | var legacyURL = getLegacySSEURL(elt) | |
| 127 | + | if (legacyURL) { | |
| 128 | + | sseURL = legacyURL; | |
| 129 | + | } else { | |
| 130 | + | return null; | |
| 131 | + | } | |
| 132 | + | } | |
| 133 | + | ||
| 134 | + | // Connect to the EventSource | |
| 135 | + | var source = htmx.createEventSource(sseURL); | |
| 136 | + | internalData.sseEventSource = source; | |
| 137 | + | ||
| 138 | + | // Create event handlers | |
| 139 | + | source.onerror = function (err) { | |
| 140 | + | ||
| 141 | + | // Log an error event | |
| 142 | + | api.triggerErrorEvent(elt, "htmx:sseError", {error:err, source:source}); | |
| 143 | + | ||
| 144 | + | // If parent no longer exists in the document, then clean up this EventSource | |
| 145 | + | if (maybeCloseSSESource(elt)) { | |
| 146 | + | return; | |
| 147 | + | } | |
| 148 | + | ||
| 149 | + | // Otherwise, try to reconnect the EventSource | |
| 150 | + | if (source.readyState === EventSource.CLOSED) { | |
| 151 | + | retryCount = retryCount || 0; | |
| 152 | + | var timeout = Math.random() * (2 ^ retryCount) * 500; | |
| 153 | + | window.setTimeout(function() { | |
| 154 | + | createEventSourceOnElement(elt, Math.min(7, retryCount+1)); | |
| 155 | + | }, timeout); | |
| 156 | + | } | |
| 157 | + | }; | |
| 158 | + | ||
| 159 | + | source.onopen = function (evt) { | |
| 160 | + | api.triggerEvent(elt, "htmx:sseOpen", {source: source}); | |
| 161 | + | } | |
| 162 | + | ||
| 163 | + | // Add message handlers for every `sse-swap` attribute | |
| 164 | + | queryAttributeOnThisOrChildren(elt, "sse-swap").forEach(function(child) { | |
| 165 | + | ||
| 166 | + | var sseSwapAttr = api.getAttributeValue(child, "sse-swap"); | |
| 167 | + | if (sseSwapAttr) { | |
| 168 | + | var sseEventNames = sseSwapAttr.split(","); | |
| 169 | + | } else { | |
| 170 | + | var sseEventNames = getLegacySSESwaps(child); | |
| 171 | + | } | |
| 172 | + | ||
| 173 | + | for (var i = 0 ; i < sseEventNames.length ; i++) { | |
| 174 | + | var sseEventName = sseEventNames[i].trim(); | |
| 175 | + | var listener = function(event) { | |
| 176 | + | ||
| 177 | + | // If the parent is missing then close SSE and remove listener | |
| 178 | + | if (maybeCloseSSESource(elt)) { | |
| 179 | + | source.removeEventListener(sseEventName, listener); | |
| 180 | + | return; | |
| 181 | + | } | |
| 182 | + | ||
| 183 | + | // swap the response into the DOM and trigger a notification | |
| 184 | + | swap(child, event.data); | |
| 185 | + | api.triggerEvent(elt, "htmx:sseMessage", event); | |
| 186 | + | }; | |
| 187 | + | ||
| 188 | + | // Register the new listener | |
| 189 | + | api.getInternalData(elt).sseEventListener = listener; | |
| 190 | + | source.addEventListener(sseEventName, listener); | |
| 191 | + | } | |
| 192 | + | }); | |
| 193 | + | ||
| 194 | + | // Add message handlers for every `hx-trigger="sse:*"` attribute | |
| 195 | + | queryAttributeOnThisOrChildren(elt, "hx-trigger").forEach(function(child) { | |
| 196 | + | ||
| 197 | + | var sseEventName = api.getAttributeValue(child, "hx-trigger"); | |
| 198 | + | if (sseEventName == null) { | |
| 199 | + | return; | |
| 200 | + | } | |
| 201 | + | ||
| 202 | + | // Only process hx-triggers for events with the "sse:" prefix | |
| 203 | + | if (sseEventName.slice(0, 4) != "sse:") { | |
| 204 | + | return; | |
| 205 | + | } | |
| 206 | + | ||
| 207 | + | var listener = function(event) { | |
| 208 | + | ||
| 209 | + | // If parent is missing, then close SSE and remove listener | |
| 210 | + | if (maybeCloseSSESource(elt)) { | |
| 211 | + | source.removeEventListener(sseEventName, listener); | |
| 212 | + | return; | |
| 213 | + | } | |
| 214 | + | ||
| 215 | + | // Trigger events to be handled by the rest of htmx | |
| 216 | + | htmx.trigger(child, sseEventName, event); | |
| 217 | + | htmx.trigger(child, "htmx:sseMessage", event); | |
| 218 | + | } | |
| 219 | + | ||
| 220 | + | // Register the new listener | |
| 221 | + | api.getInternalData(elt).sseEventListener = listener; | |
| 222 | + | source.addEventListener(sseEventName.slice(4), listener); | |
| 223 | + | }); | |
| 224 | + | } | |
| 225 | + | ||
| 226 | + | /** | |
| 227 | + | * maybeCloseSSESource confirms that the parent element still exists. | |
| 228 | + | * If not, then any associated SSE source is closed and the function returns true. | |
| 229 | + | * | |
| 230 | + | * @param {HTMLElement} elt | |
| 231 | + | * @returns boolean | |
| 232 | + | */ | |
| 233 | + | function maybeCloseSSESource(elt) { | |
| 234 | + | if (!api.bodyContains(elt)) { | |
| 235 | + | var source = api.getInternalData(elt).sseEventSource; | |
| 236 | + | if (source != undefined) { | |
| 237 | + | source.close(); | |
| 238 | + | // source = null | |
| 239 | + | return true; | |
| 240 | + | } | |
| 241 | + | } | |
| 242 | + | return false; | |
| 243 | + | } | |
| 244 | + | ||
| 245 | + | /** | |
| 246 | + | * queryAttributeOnThisOrChildren returns all nodes that contain the requested attributeName, INCLUDING THE PROVIDED ROOT ELEMENT. | |
| 247 | + | * | |
| 248 | + | * @param {HTMLElement} elt | |
| 249 | + | * @param {string} attributeName | |
| 250 | + | */ | |
| 251 | + | function queryAttributeOnThisOrChildren(elt, attributeName) { | |
| 252 | + | ||
| 253 | + | var result = []; | |
| 254 | + | ||
| 255 | + | // If the parent element also contains the requested attribute, then add it to the results too. | |
| 256 | + | if (api.hasAttribute(elt, attributeName) || api.hasAttribute(elt, "hx-sse")) { | |
| 257 | + | result.push(elt); | |
| 258 | + | } | |
| 259 | + | ||
| 260 | + | // Search all child nodes that match the requested attribute | |
| 261 | + | elt.querySelectorAll("[" + attributeName + "], [data-" + attributeName + "], [hx-sse], [data-hx-sse]").forEach(function(node) { | |
| 262 | + | result.push(node); | |
| 263 | + | }); | |
| 264 | + | ||
| 265 | + | return result; | |
| 266 | + | } | |
| 267 | + | ||
| 268 | + | /** | |
| 269 | + | * @param {HTMLElement} elt | |
| 270 | + | * @param {string} content | |
| 271 | + | */ | |
| 272 | + | function swap(elt, content) { | |
| 273 | + | ||
| 274 | + | api.withExtensions(elt, function(extension) { | |
| 275 | + | content = extension.transformResponse(content, null, elt); | |
| 276 | + | }); | |
| 277 | + | ||
| 278 | + | var swapSpec = api.getSwapSpecification(elt); | |
| 279 | + | var target = api.getTarget(elt); | |
| 280 | + | var settleInfo = api.makeSettleInfo(elt); | |
| 281 | + | ||
| 282 | + | api.selectAndSwap(swapSpec.swapStyle, target, elt, content, settleInfo); | |
| 283 | + | ||
| 284 | + | settleInfo.elts.forEach(function (elt) { | |
| 285 | + | if (elt.classList) { | |
| 286 | + | elt.classList.add(htmx.config.settlingClass); | |
| 287 | + | } | |
| 288 | + | api.triggerEvent(elt, 'htmx:beforeSettle'); | |
| 289 | + | }); | |
| 290 | + | ||
| 291 | + | // Handle settle tasks (with delay if requested) | |
| 292 | + | if (swapSpec.settleDelay > 0) { | |
| 293 | + | setTimeout(doSettle(settleInfo), swapSpec.settleDelay); | |
| 294 | + | } else { | |
| 295 | + | doSettle(settleInfo)(); | |
| 296 | + | } | |
| 297 | + | } | |
| 298 | + | ||
| 299 | + | /** | |
| 300 | + | * doSettle mirrors much of the functionality in htmx that | |
| 301 | + | * settles elements after their content has been swapped. | |
| 302 | + | * TODO: this should be published by htmx, and not duplicated here | |
| 303 | + | * @param {import("../htmx").HtmxSettleInfo} settleInfo | |
| 304 | + | * @returns () => void | |
| 305 | + | */ | |
| 306 | + | function doSettle(settleInfo) { | |
| 307 | + | ||
| 308 | + | return function() { | |
| 309 | + | settleInfo.tasks.forEach(function (task) { | |
| 310 | + | task.call(); | |
| 311 | + | }); | |
| 312 | + | ||
| 313 | + | settleInfo.elts.forEach(function (elt) { | |
| 314 | + | if (elt.classList) { | |
| 315 | + | elt.classList.remove(htmx.config.settlingClass); | |
| 316 | + | } | |
| 317 | + | api.triggerEvent(elt, 'htmx:afterSettle'); | |
| 318 | + | }); | |
| 319 | + | } | |
| 320 | + | } | |
| 321 | + | ||
| 322 | + | })();⏎̸ | |
| @@ -0,0 +1,322 @@ | |||||
| 1 | + | /* | |||
| 2 | + | Server Sent Events Extension | |||
| 3 | + | ============================ | |||
| 4 | + | This extension adds support for Server Sent Events to htmx. See /www/extensions/sse.md for usage instructions. | |||
| 5 | + | ||||
| 6 | + | */ | |||
| 7 | + | ||||
| 8 | + | (function(){ | |||
| 9 | + | ||||
| 10 | + | /** @type {import("../htmx").HtmxInternalApi} */ | |||
| 11 | + | var api; | |||
| 12 | + | ||||
| 13 | + | htmx.defineExtension("sse", { | |||
| 14 | + | ||||
| 15 | + | /** | |||
| 16 | + | * Init saves the provided reference to the internal HTMX API. | |||
| 17 | + | * | |||
| 18 | + | * @param {import("../htmx").HtmxInternalApi} api | |||
| 19 | + | * @returns void | |||
| 20 | + | */ | |||
| 21 | + | init: function(apiRef) { | |||
| 22 | + | // store a reference to the internal API. | |||
| 23 | + | api = apiRef; | |||
| 24 | + | ||||
| 25 | + | // set a function in the public API for creating new EventSource objects | |||
| 26 | + | if (htmx.createEventSource == undefined) { | |||
| 27 | + | htmx.createEventSource = createEventSource; | |||
| 28 | + | } | |||
| 29 | + | }, | |||
| 30 | + | ||||
| 31 | + | /** | |||
| 32 | + | * onEvent handles all events passed to this extension. | |||
| 33 | + | * | |||
| 34 | + | * @param {string} name | |||
| 35 | + | * @param {Event} evt | |||
| 36 | + | * @returns void | |||
| 37 | + | */ | |||
| 38 | + | onEvent: function(name, evt) { | |||
| 39 | + | ||||
| 40 | + | switch (name) { | |||
| 41 | + | ||||
| 42 | + | // Try to remove remove an EventSource when elements are removed | |||
| 43 | + | case "htmx:beforeCleanupElement": | |||
| 44 | + | var internalData = api.getInternalData(evt.target) | |||
| 45 | + | if (internalData.sseEventSource) { | |||
| 46 | + | internalData.sseEventSource.close(); | |||
| 47 | + | } | |||
| 48 | + | return; | |||
| 49 | + | ||||
| 50 | + | // Try to create EventSources when elements are processed | |||
| 51 | + | case "htmx:afterProcessNode": | |||
| 52 | + | createEventSourceOnElement(evt.target); | |||
| 53 | + | } | |||
| 54 | + | } | |||
| 55 | + | }); | |||
| 56 | + | ||||
| 57 | + | /////////////////////////////////////////////// | |||
| 58 | + | // HELPER FUNCTIONS | |||
| 59 | + | /////////////////////////////////////////////// | |||
| 60 | + | ||||
| 61 | + | ||||
| 62 | + | /** | |||
| 63 | + | * createEventSource is the default method for creating new EventSource objects. | |||
| 64 | + | * it is hoisted into htmx.config.createEventSource to be overridden by the user, if needed. | |||
| 65 | + | * | |||
| 66 | + | * @param {string} url | |||
| 67 | + | * @returns EventSource | |||
| 68 | + | */ | |||
| 69 | + | function createEventSource(url) { | |||
| 70 | + | return new EventSource(url, {withCredentials:true}); | |||
| 71 | + | } | |||
| 72 | + | ||||
| 73 | + | function splitOnWhitespace(trigger) { | |||
| 74 | + | return trigger.trim().split(/\s+/); | |||
| 75 | + | } | |||
| 76 | + | ||||
| 77 | + | function getLegacySSEURL(elt) { | |||
| 78 | + | var legacySSEValue = api.getAttributeValue(elt, "hx-sse"); | |||
| 79 | + | if (legacySSEValue) { | |||
| 80 | + | var values = splitOnWhitespace(legacySSEValue); | |||
| 81 | + | for (var i = 0; i < values.length; i++) { | |||
| 82 | + | var value = values[i].split(/:(.+)/); | |||
| 83 | + | if (value[0] === "connect") { | |||
| 84 | + | return value[1]; | |||
| 85 | + | } | |||
| 86 | + | } | |||
| 87 | + | } | |||
| 88 | + | } | |||
| 89 | + | ||||
| 90 | + | function getLegacySSESwaps(elt) { | |||
| 91 | + | var legacySSEValue = api.getAttributeValue(elt, "hx-sse"); | |||
| 92 | + | var returnArr = []; | |||
| 93 | + | if (legacySSEValue) { | |||
| 94 | + | var values = splitOnWhitespace(legacySSEValue); | |||
| 95 | + | for (var i = 0; i < values.length; i++) { | |||
| 96 | + | var value = values[i].split(/:(.+)/); | |||
| 97 | + | if (value[0] === "swap") { | |||
| 98 | + | returnArr.push(value[1]); | |||
| 99 | + | } | |||
| 100 | + | } | |||
| 101 | + | } | |||
| 102 | + | return returnArr; | |||
| 103 | + | } | |||
| 104 | + | ||||
| 105 | + | /** | |||
| 106 | + | * createEventSourceOnElement creates a new EventSource connection on the provided element. | |||
| 107 | + | * If a usable EventSource already exists, then it is returned. If not, then a new EventSource | |||
| 108 | + | * is created and stored in the element's internalData. | |||
| 109 | + | * @param {HTMLElement} elt | |||
| 110 | + | * @param {number} retryCount | |||
| 111 | + | * @returns {EventSource | null} | |||
| 112 | + | */ | |||
| 113 | + | function createEventSourceOnElement(elt, retryCount) { | |||
| 114 | + | ||||
| 115 | + | if (elt == null) { | |||
| 116 | + | return null; | |||
| 117 | + | } | |||
| 118 | + | ||||
| 119 | + | var internalData = api.getInternalData(elt); | |||
| 120 | + | ||||
| 121 | + | // get URL from element's attribute | |||
| 122 | + | var sseURL = api.getAttributeValue(elt, "sse-connect"); | |||
| 123 | + | ||||
| 124 | + | ||||
| 125 | + | if (sseURL == undefined) { | |||
| 126 | + | var legacyURL = getLegacySSEURL(elt) | |||
| 127 | + | if (legacyURL) { | |||
| 128 | + | sseURL = legacyURL; | |||
| 129 | + | } else { | |||
| 130 | + | return null; | |||
| 131 | + | } | |||
| 132 | + | } | |||
| 133 | + | ||||
| 134 | + | // Connect to the EventSource | |||
| 135 | + | var source = htmx.createEventSource(sseURL); | |||
| 136 | + | internalData.sseEventSource = source; | |||
| 137 | + | ||||
| 138 | + | // Create event handlers | |||
| 139 | + | source.onerror = function (err) { | |||
| 140 | + | ||||
| 141 | + | // Log an error event | |||
| 142 | + | api.triggerErrorEvent(elt, "htmx:sseError", {error:err, source:source}); | |||
| 143 | + | ||||
| 144 | + | // If parent no longer exists in the document, then clean up this EventSource | |||
| 145 | + | if (maybeCloseSSESource(elt)) { | |||
| 146 | + | return; | |||
| 147 | + | } | |||
| 148 | + | ||||
| 149 | + | // Otherwise, try to reconnect the EventSource | |||
| 150 | + | if (source.readyState === EventSource.CLOSED) { | |||
| 151 | + | retryCount = retryCount || 0; | |||
| 152 | + | var timeout = Math.random() * (2 ^ retryCount) * 500; | |||
| 153 | + | window.setTimeout(function() { | |||
| 154 | + | createEventSourceOnElement(elt, Math.min(7, retryCount+1)); | |||
| 155 | + | }, timeout); | |||
| 156 | + | } | |||
| 157 | + | }; | |||
| 158 | + | ||||
| 159 | + | source.onopen = function (evt) { | |||
| 160 | + | api.triggerEvent(elt, "htmx:sseOpen", {source: source}); | |||
| 161 | + | } | |||
| 162 | + | ||||
| 163 | + | // Add message handlers for every `sse-swap` attribute | |||
| 164 | + | queryAttributeOnThisOrChildren(elt, "sse-swap").forEach(function(child) { | |||
| 165 | + | ||||
| 166 | + | var sseSwapAttr = api.getAttributeValue(child, "sse-swap"); | |||
| 167 | + | if (sseSwapAttr) { | |||
| 168 | + | var sseEventNames = sseSwapAttr.split(","); | |||
| 169 | + | } else { | |||
| 170 | + | var sseEventNames = getLegacySSESwaps(child); | |||
| 171 | + | } | |||
| 172 | + | ||||
| 173 | + | for (var i = 0 ; i < sseEventNames.length ; i++) { | |||
| 174 | + | var sseEventName = sseEventNames[i].trim(); | |||
| 175 | + | var listener = function(event) { | |||
| 176 | + | ||||
| 177 | + | // If the parent is missing then close SSE and remove listener | |||
| 178 | + | if (maybeCloseSSESource(elt)) { | |||
| 179 | + | source.removeEventListener(sseEventName, listener); | |||
| 180 | + | return; | |||
| 181 | + | } | |||
| 182 | + | ||||
| 183 | + | // swap the response into the DOM and trigger a notification | |||
| 184 | + | swap(child, event.data); | |||
| 185 | + | api.triggerEvent(elt, "htmx:sseMessage", event); | |||
| 186 | + | }; | |||
| 187 | + | ||||
| 188 | + | // Register the new listener | |||
| 189 | + | api.getInternalData(elt).sseEventListener = listener; | |||
| 190 | + | source.addEventListener(sseEventName, listener); | |||
| 191 | + | } | |||
| 192 | + | }); | |||
| 193 | + | ||||
| 194 | + | // Add message handlers for every `hx-trigger="sse:*"` attribute | |||
| 195 | + | queryAttributeOnThisOrChildren(elt, "hx-trigger").forEach(function(child) { | |||
| 196 | + | ||||
| 197 | + | var sseEventName = api.getAttributeValue(child, "hx-trigger"); | |||
| 198 | + | if (sseEventName == null) { | |||
| 199 | + | return; | |||
| 200 | + | } | |||
| 201 | + | ||||
| 202 | + | // Only process hx-triggers for events with the "sse:" prefix | |||
| 203 | + | if (sseEventName.slice(0, 4) != "sse:") { | |||
| 204 | + | return; | |||
| 205 | + | } | |||
| 206 | + | ||||
| 207 | + | var listener = function(event) { | |||
| 208 | + | ||||
| 209 | + | // If parent is missing, then close SSE and remove listener | |||
| 210 | + | if (maybeCloseSSESource(elt)) { | |||
| 211 | + | source.removeEventListener(sseEventName, listener); | |||
| 212 | + | return; | |||
| 213 | + | } | |||
| 214 | + | ||||
| 215 | + | // Trigger events to be handled by the rest of htmx | |||
| 216 | + | htmx.trigger(child, sseEventName, event); | |||
| 217 | + | htmx.trigger(child, "htmx:sseMessage", event); | |||
| 218 | + | } | |||
| 219 | + | ||||
| 220 | + | // Register the new listener | |||
| 221 | + | api.getInternalData(elt).sseEventListener = listener; | |||
| 222 | + | source.addEventListener(sseEventName.slice(4), listener); | |||
| 223 | + | }); | |||
| 224 | + | } | |||
| 225 | + | ||||
| 226 | + | /** | |||
| 227 | + | * maybeCloseSSESource confirms that the parent element still exists. | |||
| 228 | + | * If not, then any associated SSE source is closed and the function returns true. | |||
| 229 | + | * | |||
| 230 | + | * @param {HTMLElement} elt | |||
| 231 | + | * @returns boolean | |||
| 232 | + | */ | |||
| 233 | + | function maybeCloseSSESource(elt) { | |||
| 234 | + | if (!api.bodyContains(elt)) { | |||
| 235 | + | var source = api.getInternalData(elt).sseEventSource; | |||
| 236 | + | if (source != undefined) { | |||
| 237 | + | source.close(); | |||
| 238 | + | // source = null | |||
| 239 | + | return true; | |||
| 240 | + | } | |||
| 241 | + | } | |||
| 242 | + | return false; | |||
| 243 | + | } | |||
| 244 | + | ||||
| 245 | + | /** | |||
| 246 | + | * queryAttributeOnThisOrChildren returns all nodes that contain the requested attributeName, INCLUDING THE PROVIDED ROOT ELEMENT. | |||
| 247 | + | * | |||
| 248 | + | * @param {HTMLElement} elt | |||
| 249 | + | * @param {string} attributeName | |||
| 250 | + | */ | |||
| 251 | + | function queryAttributeOnThisOrChildren(elt, attributeName) { | |||
| 252 | + | ||||
| 253 | + | var result = []; | |||
| 254 | + | ||||
| 255 | + | // If the parent element also contains the requested attribute, then add it to the results too. | |||
| 256 | + | if (api.hasAttribute(elt, attributeName) || api.hasAttribute(elt, "hx-sse")) { | |||
| 257 | + | result.push(elt); | |||
| 258 | + | } | |||
| 259 | + | ||||
| 260 | + | // Search all child nodes that match the requested attribute | |||
| 261 | + | elt.querySelectorAll("[" + attributeName + "], [data-" + attributeName + "], [hx-sse], [data-hx-sse]").forEach(function(node) { | |||
| 262 | + | result.push(node); | |||
| 263 | + | }); | |||
| 264 | + | ||||
| 265 | + | return result; | |||
| 266 | + | } | |||
| 267 | + | ||||
| 268 | + | /** | |||
| 269 | + | * @param {HTMLElement} elt | |||
| 270 | + | * @param {string} content | |||
| 271 | + | */ | |||
| 272 | + | function swap(elt, content) { | |||
| 273 | + | ||||
| 274 | + | api.withExtensions(elt, function(extension) { | |||
| 275 | + | content = extension.transformResponse(content, null, elt); | |||
| 276 | + | }); | |||
| 277 | + | ||||
| 278 | + | var swapSpec = api.getSwapSpecification(elt); | |||
| 279 | + | var target = api.getTarget(elt); | |||
| 280 | + | var settleInfo = api.makeSettleInfo(elt); | |||
| 281 | + | ||||
| 282 | + | api.selectAndSwap(swapSpec.swapStyle, target, elt, content, settleInfo); | |||
| 283 | + | ||||
| 284 | + | settleInfo.elts.forEach(function (elt) { | |||
| 285 | + | if (elt.classList) { | |||
| 286 | + | elt.classList.add(htmx.config.settlingClass); | |||
| 287 | + | } | |||
| 288 | + | api.triggerEvent(elt, 'htmx:beforeSettle'); | |||
| 289 | + | }); | |||
| 290 | + | ||||
| 291 | + | // Handle settle tasks (with delay if requested) | |||
| 292 | + | if (swapSpec.settleDelay > 0) { | |||
| 293 | + | setTimeout(doSettle(settleInfo), swapSpec.settleDelay); | |||
| 294 | + | } else { | |||
| 295 | + | doSettle(settleInfo)(); | |||
| 296 | + | } | |||
| 297 | + | } | |||
| 298 | + | ||||
| 299 | + | /** | |||
| 300 | + | * doSettle mirrors much of the functionality in htmx that | |||
| 301 | + | * settles elements after their content has been swapped. | |||
| 302 | + | * TODO: this should be published by htmx, and not duplicated here | |||
| 303 | + | * @param {import("../htmx").HtmxSettleInfo} settleInfo | |||
| 304 | + | * @returns () => void | |||
| 305 | + | */ | |||
| 306 | + | function doSettle(settleInfo) { | |||
| 307 | + | ||||
| 308 | + | return function() { | |||
| 309 | + | settleInfo.tasks.forEach(function (task) { | |||
| 310 | + | task.call(); | |||
| 311 | + | }); | |||
| 312 | + | ||||
| 313 | + | settleInfo.elts.forEach(function (elt) { | |||
| 314 | + | if (elt.classList) { | |||
| 315 | + | elt.classList.remove(htmx.config.settlingClass); | |||
| 316 | + | } | |||
| 317 | + | api.triggerEvent(elt, 'htmx:afterSettle'); | |||
| 318 | + | }); | |||
| 319 | + | } | |||
| 320 | + | } | |||
| 321 | + | ||||
| 322 | + | })();⏎̸ | |||
M logs/app.log +385 -0
| @@ -58,3 +58,388 @@ | |||
| 58 | 58 | {"level":"info","time":"2023-09-05T03:56:40+02:00","message":"Server is listening on port 1323"} | |
| 59 | 59 | {"level":"info","time":"2023-09-05T06:50:58+02:00","message":"Server is listening on port 1323"} | |
| 60 | 60 | {"level":"info","time":"2023-09-05T06:52:00+02:00","message":"Server is listening on port 1323"} | |
| 61 | + | {"level":"info","time":"2023-09-05T08:05:59+02:00","message":"Server is listening on port 1323"} | |
| 62 | + | {"level":"info","time":"2023-09-05T08:07:22+02:00","message":"Server is listening on port 1323"} | |
| 63 | + | {"level":"info","time":"2023-09-05T08:07:22+02:00","message":"Server is listening on port 1323"} | |
| 64 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:07:22+02:00","message":"Failed to start the server"} | |
| 65 | + | {"level":"info","time":"2023-09-05T08:07:54+02:00","message":"Server is listening on port 1323"} | |
| 66 | + | {"level":"info","time":"2023-09-05T08:07:54+02:00","message":"Server is listening on port 1323"} | |
| 67 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:07:54+02:00","message":"Failed to start the server"} | |
| 68 | + | {"level":"info","time":"2023-09-05T08:08:06+02:00","message":"Server is listening on port 1323"} | |
| 69 | + | {"level":"info","time":"2023-09-05T08:08:06+02:00","message":"Server is listening on port 1323"} | |
| 70 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:08:06+02:00","message":"Failed to start the server"} | |
| 71 | + | {"level":"info","time":"2023-09-05T08:08:19+02:00","message":"Server is listening on port 1323"} | |
| 72 | + | {"level":"info","time":"2023-09-05T08:08:19+02:00","message":"Server is listening on port 1323"} | |
| 73 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:08:19+02:00","message":"Failed to start the server"} | |
| 74 | + | {"level":"info","time":"2023-09-05T08:11:37+02:00","message":"Server is listening on port 1323"} | |
| 75 | + | {"level":"info","time":"2023-09-05T08:11:37+02:00","message":"Server is listening on port 1323"} | |
| 76 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:11:37+02:00","message":"Failed to start the server"} | |
| 77 | + | {"level":"info","time":"2023-09-05T08:12:11+02:00","message":"Server is listening on port 1323"} | |
| 78 | + | {"level":"info","time":"2023-09-05T08:12:45+02:00","message":"Server is listening on port 1323"} | |
| 79 | + | {"level":"info","time":"2023-09-05T08:15:30+02:00","message":"Server is listening on port 1323"} | |
| 80 | + | {"level":"info","time":"2023-09-05T08:17:57+02:00","message":"Server is listening on port 1323"} | |
| 81 | + | {"level":"info","time":"2023-09-05T08:18:34+02:00","message":"Server is listening on port 1323"} | |
| 82 | + | {"level":"info","time":"2023-09-05T08:18:34+02:00","message":"Server is listening on port 1323"} | |
| 83 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:18:34+02:00","message":"Failed to start the server"} | |
| 84 | + | {"level":"info","time":"2023-09-05T08:19:19+02:00","message":"Server is listening on port 1323"} | |
| 85 | + | {"level":"info","time":"2023-09-05T08:19:19+02:00","message":"Server is listening on port 1323"} | |
| 86 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:19:19+02:00","message":"Failed to start the server"} | |
| 87 | + | {"level":"info","time":"2023-09-05T08:20:25+02:00","message":"Server is listening on port 1323"} | |
| 88 | + | {"level":"info","time":"2023-09-05T08:20:25+02:00","message":"Server is listening on port 1323"} | |
| 89 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:20:25+02:00","message":"Failed to start the server"} | |
| 90 | + | {"level":"info","time":"2023-09-05T08:23:16+02:00","message":"Server is listening on port 1323"} | |
| 91 | + | {"level":"info","time":"2023-09-05T08:23:16+02:00","message":"Server is listening on port 1323"} | |
| 92 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:23:16+02:00","message":"Failed to start the server"} | |
| 93 | + | {"level":"info","time":"2023-09-05T08:24:29+02:00","message":"Server is listening on port 1323"} | |
| 94 | + | {"level":"info","time":"2023-09-05T08:24:29+02:00","message":"Server is listening on port 1323"} | |
| 95 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:24:29+02:00","message":"Failed to start the server"} | |
| 96 | + | {"level":"info","time":"2023-09-05T08:31:18+02:00","message":"Server is listening on port 1323"} | |
| 97 | + | {"level":"info","time":"2023-09-05T08:31:18+02:00","message":"Server is listening on port 1323"} | |
| 98 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:31:18+02:00","message":"Failed to start the server"} | |
| 99 | + | {"level":"info","time":"2023-09-05T08:33:39+02:00","message":"Server is listening on port 1323"} | |
| 100 | + | {"level":"info","time":"2023-09-05T08:33:39+02:00","message":"Server is listening on port 1323"} | |
| 101 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:33:39+02:00","message":"Failed to start the server"} | |
| 102 | + | {"level":"info","time":"2023-09-05T08:34:09+02:00","message":"Server is listening on port 1323"} | |
| 103 | + | {"level":"info","time":"2023-09-05T08:40:52+02:00","message":"Server is listening on port 1323"} | |
| 104 | + | {"level":"info","time":"2023-09-05T08:40:52+02:00","message":"Server is listening on port 1323"} | |
| 105 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:40:52+02:00","message":"Failed to start the server"} | |
| 106 | + | {"level":"info","time":"2023-09-05T08:43:24+02:00","message":"Server is listening on port 1323"} | |
| 107 | + | {"level":"info","time":"2023-09-05T08:44:45+02:00","message":"Server is listening on port 1323"} | |
| 108 | + | {"level":"warn","time":"2023-09-05T08:49:04+02:00","message":"Graceful shutdown initiated"} | |
| 109 | + | {"level":"warn","time":"2023-09-05T08:49:04+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |
| 110 | + | {"level":"info","time":"2023-09-05T08:49:09+02:00","message":"Server shutdown"} | |
| 111 | + | {"level":"info","time":"2023-09-05T08:49:13+02:00","message":"Server is listening on port 1323"} | |
| 112 | + | {"level":"warn","time":"2023-09-05T08:50:43+02:00","message":"Graceful shutdown initiated"} | |
| 113 | + | {"level":"warn","time":"2023-09-05T08:50:43+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |
| 114 | + | {"level":"info","time":"2023-09-05T08:50:44+02:00","message":"Shutdown cancelled by user"} | |
| 115 | + | {"level":"info","time":"2023-09-05T08:50:49+02:00","message":"Server is listening on port 1323"} | |
| 116 | + | {"level":"warn","time":"2023-09-05T08:51:23+02:00","message":"Graceful shutdown initiated"} | |
| 117 | + | {"level":"warn","time":"2023-09-05T08:51:23+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |
| 118 | + | {"level":"info","time":"2023-09-05T08:51:23+02:00","message":"Shutdown cancelled by user"} | |
| 119 | + | {"level":"info","time":"2023-09-05T08:51:26+02:00","message":"Server is listening on port 1323"} | |
| 120 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 121 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 122 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 123 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 124 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 125 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 126 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 127 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 128 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 129 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 130 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |
| 131 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 132 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 133 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 134 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 135 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 136 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 137 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 138 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 139 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 140 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 141 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |
| 142 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |
| 143 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43272: runtime error: invalid memory address or nil pointer dereference"} | |
| 144 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 34 [running]:"} | |
| 145 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 146 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 147 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 148 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 149 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0003ba000})"} | |
| 150 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 151 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0003ba000})"} | |
| 152 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 153 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0003ba000})"} | |
| 154 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 155 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0003ba000})"} | |
| 156 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 157 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0003ba000})"} | |
| 158 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 159 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0003ba000})"} | |
| 160 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 161 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e2a0}, 0xc000238500)"} | |
| 162 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 163 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0002120c0?}, {0x1336a18?, 0xc00025e2a0?}, 0x6?)"} | |
| 164 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 165 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc000216000, {0x13374c8, 0xc0000b42a0})"} | |
| 166 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 167 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 168 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 169 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |
| 170 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43302: runtime error: invalid memory address or nil pointer dereference"} | |
| 171 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 24 [running]:"} | |
| 172 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 173 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 174 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 175 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 176 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0000d80a0})"} | |
| 177 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 178 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0000d80a0})"} | |
| 179 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 180 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0000d80a0})"} | |
| 181 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 182 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0000d80a0})"} | |
| 183 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 184 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0000d80a0})"} | |
| 185 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 186 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0000d80a0})"} | |
| 187 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 188 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc000334540}, 0xc000324400)"} | |
| 189 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 190 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0001df230?}, {0x1336a18?, 0xc000334540?}, 0x6?)"} | |
| 191 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 192 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc0001a63f0, {0x13374c8, 0xc0000b42a0})"} | |
| 193 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 194 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 195 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 196 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |
| 197 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43288: runtime error: invalid memory address or nil pointer dereference"} | |
| 198 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 50 [running]:"} | |
| 199 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 200 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 201 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 202 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 203 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0002640a0})"} | |
| 204 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 205 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0002640a0})"} | |
| 206 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 207 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0002640a0})"} | |
| 208 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 209 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0002640a0})"} | |
| 210 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 211 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0002640a0})"} | |
| 212 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 213 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0002640a0})"} | |
| 214 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 215 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e460}, 0xc000238600)"} | |
| 216 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 217 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0000b4300?}, {0x1336a18?, 0xc00025e460?}, 0x6?)"} | |
| 218 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 219 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc00031e000, {0x13374c8, 0xc0000b42a0})"} | |
| 220 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 221 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 222 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 223 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |
| 224 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43312: runtime error: invalid memory address or nil pointer dereference"} | |
| 225 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 66 [running]:"} | |
| 226 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 227 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 228 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 229 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 230 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000122280})"} | |
| 231 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 232 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000122280})"} | |
| 233 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 234 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000122280})"} | |
| 235 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 236 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000122280})"} | |
| 237 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 238 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000122280})"} | |
| 239 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 240 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000122280})"} | |
| 241 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 242 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc000334700}, 0xc000324500)"} | |
| 243 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 244 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc000384090?}, {0x1336a18?, 0xc000334700?}, 0x6?)"} | |
| 245 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 246 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc000388000, {0x13374c8, 0xc0000b42a0})"} | |
| 247 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 248 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 249 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 250 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |
| 251 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43294: runtime error: invalid memory address or nil pointer dereference"} | |
| 252 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 23 [running]:"} | |
| 253 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 254 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 255 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 256 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 257 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000264140})"} | |
| 258 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 259 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000264140})"} | |
| 260 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 261 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000264140})"} | |
| 262 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 263 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000264140})"} | |
| 264 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 265 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000264140})"} | |
| 266 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 267 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000264140})"} | |
| 268 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 269 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e620}, 0xc000238700)"} | |
| 270 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 271 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0001df140?}, {0x1336a18?, 0xc00025e620?}, 0x6?)"} | |
| 272 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 273 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc0001a6360, {0x13374c8, 0xc0000b42a0})"} | |
| 274 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 275 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 276 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 277 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |
| 278 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43318: runtime error: invalid memory address or nil pointer dereference"} | |
| 279 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 67 [running]:"} | |
| 280 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 281 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 282 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 283 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 284 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0001223c0})"} | |
| 285 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 286 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0001223c0})"} | |
| 287 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 288 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0001223c0})"} | |
| 289 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 290 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0001223c0})"} | |
| 291 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 292 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0001223c0})"} | |
| 293 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 294 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0001223c0})"} | |
| 295 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 296 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc0003348c0}, 0xc000324600)"} | |
| 297 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 298 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc000384150?}, {0x1336a18?, 0xc0003348c0?}, 0x6?)"} | |
| 299 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 300 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc000388090, {0x13374c8, 0xc0000b42a0})"} | |
| 301 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 302 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 303 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 304 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |
| 305 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:39638: runtime error: invalid memory address or nil pointer dereference"} | |
| 306 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 12 [running]:"} | |
| 307 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 308 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 309 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 310 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 311 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0002641e0})"} | |
| 312 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 313 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0002641e0})"} | |
| 314 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 315 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0002641e0})"} | |
| 316 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 317 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0002641e0})"} | |
| 318 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 319 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0002641e0})"} | |
| 320 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 321 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0002641e0})"} | |
| 322 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 323 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e7e0}, 0xc000238800)"} | |
| 324 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 325 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00045a5a0?}, {0x1336a18?, 0xc00025e7e0?}, 0x6?)"} | |
| 326 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 327 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc0002163f0, {0x13374c8, 0xc0000b42a0})"} | |
| 328 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 329 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 330 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 331 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"Color scheme detected: light"} | |
| 332 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"echo: http: panic serving [::1]:39644: runtime error: invalid memory address or nil pointer dereference"} | |
| 333 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"goroutine 55 [running]:"} | |
| 334 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 335 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 336 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 337 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 338 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000344000})"} | |
| 339 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 340 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000344000})"} | |
| 341 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 342 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000344000})"} | |
| 343 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 344 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000344000})"} | |
| 345 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 346 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000344000})"} | |
| 347 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 348 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000344000})"} | |
| 349 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 350 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc0001680e0}, 0xc0001b4100)"} | |
| 351 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 352 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00029b6e0?}, {0x1336a18?, 0xc0001680e0?}, 0x6?)"} | |
| 353 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 354 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"net/http.(*conn).serve(0xc0001a61b0, {0x13374c8, 0xc0000b42a0})"} | |
| 355 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 356 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 357 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 358 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"Color scheme detected: light"} | |
| 359 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"echo: http: panic serving [::1]:57658: runtime error: invalid memory address or nil pointer dereference"} | |
| 360 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"goroutine 14 [running]:"} | |
| 361 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 362 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 363 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 364 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 365 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000264280})"} | |
| 366 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |
| 367 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000264280})"} | |
| 368 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |
| 369 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000264280})"} | |
| 370 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 371 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000264280})"} | |
| 372 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |
| 373 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000264280})"} | |
| 374 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 375 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000264280})"} | |
| 376 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 377 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e8c0}, 0xc000238900)"} | |
| 378 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 379 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00045b2c0?}, {0x1336a18?, 0xc00025e8c0?}, 0x6?)"} | |
| 380 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 381 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"net/http.(*conn).serve(0xc0002165a0, {0x13374c8, 0xc0000b42a0})"} | |
| 382 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 383 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |
| 384 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 385 | + | {"level":"warn","time":"2023-09-05T08:55:12+02:00","message":"Graceful shutdown initiated"} | |
| 386 | + | {"level":"warn","time":"2023-09-05T08:55:12+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |
| 387 | + | {"level":"info","time":"2023-09-05T08:55:16+02:00","message":"Shutdown cancelled by user"} | |
| 388 | + | {"level":"info","time":"2023-09-05T08:55:17+02:00","message":"Server is listening on port 1323"} | |
| 389 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"echo: http: panic serving [::1]:42274: runtime error: invalid memory address or nil pointer dereference"} | |
| 390 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"goroutine 18 [running]:"} | |
| 391 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 392 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 393 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 394 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 395 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e710, 0xc0002d0000})"} | |
| 396 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:16 +0x6a"} | |
| 397 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e710, 0xc0002d0000})"} | |
| 398 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:24 +0x25"} | |
| 399 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e710, 0xc0002d0000})"} | |
| 400 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 401 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e710, 0xc0002d0000})"} | |
| 402 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:16 +0x68"} | |
| 403 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e710, 0xc0002d0000})"} | |
| 404 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 405 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e710, 0xc0002d0000})"} | |
| 406 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 407 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc0000d2fc0, {0x1336a78?, 0xc0002ca000}, 0xc0002a4000)"} | |
| 408 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 409 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0002860c0?}, {0x1336a78?, 0xc0002ca000?}, 0x6?)"} | |
| 410 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 411 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"net/http.(*conn).serve(0xc00028a000, {0x1337528, 0xc00012a2a0})"} | |
| 412 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 413 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"created by net/http.(*Server).Serve in goroutine 7"} | |
| 414 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 415 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"echo: http: panic serving [::1]:51344: runtime error: invalid memory address or nil pointer dereference"} | |
| 416 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"goroutine 34 [running]:"} | |
| 417 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"net/http.(*conn).serve.func1()"} | |
| 418 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |
| 419 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |
| 420 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |
| 421 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e710, 0xc00016e000})"} | |
| 422 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:16 +0x6a"} | |
| 423 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e710, 0xc00016e000})"} | |
| 424 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:24 +0x25"} | |
| 425 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e710, 0xc00016e000})"} | |
| 426 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |
| 427 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e710, 0xc00016e000})"} | |
| 428 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:16 +0x68"} | |
| 429 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e710, 0xc00016e000})"} | |
| 430 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |
| 431 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e710, 0xc00016e000})"} | |
| 432 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |
| 433 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc0000d2fc0, {0x1336a78?, 0xc00016a000}, 0xc000160000)"} | |
| 434 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |
| 435 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00012ad20?}, {0x1336a78?, 0xc00016a000?}, 0x6?)"} | |
| 436 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |
| 437 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"net/http.(*conn).serve(0xc00015c000, {0x1337528, 0xc00012a2a0})"} | |
| 438 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |
| 439 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"created by net/http.(*Server).Serve in goroutine 7"} | |
| 440 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |
| 441 | + | {"level":"warn","time":"2023-09-05T08:57:57+02:00","message":"Graceful shutdown initiated"} | |
| 442 | + | {"level":"warn","time":"2023-09-05T08:57:57+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |
| 443 | + | {"level":"info","time":"2023-09-05T08:58:02+02:00","message":"Server shutdown"} | |
| 444 | + | {"level":"info","time":"2023-09-05T08:58:05+02:00","message":"Server is listening on port 1323"} | |
| 445 | + | {"level":"debug","type":"app","time":"2023-09-05T08:58:15+02:00","message":"Fresh installation detected, redirecting to /admin/install"} | |
| @@ -58,3 +58,388 @@ | |||||
| 58 | {"level":"info","time":"2023-09-05T03:56:40+02:00","message":"Server is listening on port 1323"} | 58 | {"level":"info","time":"2023-09-05T03:56:40+02:00","message":"Server is listening on port 1323"} | ||
| 59 | {"level":"info","time":"2023-09-05T06:50:58+02:00","message":"Server is listening on port 1323"} | 59 | {"level":"info","time":"2023-09-05T06:50:58+02:00","message":"Server is listening on port 1323"} | ||
| 60 | {"level":"info","time":"2023-09-05T06:52:00+02:00","message":"Server is listening on port 1323"} | 60 | {"level":"info","time":"2023-09-05T06:52:00+02:00","message":"Server is listening on port 1323"} | ||
| 61 | + | {"level":"info","time":"2023-09-05T08:05:59+02:00","message":"Server is listening on port 1323"} | |||
| 62 | + | {"level":"info","time":"2023-09-05T08:07:22+02:00","message":"Server is listening on port 1323"} | |||
| 63 | + | {"level":"info","time":"2023-09-05T08:07:22+02:00","message":"Server is listening on port 1323"} | |||
| 64 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:07:22+02:00","message":"Failed to start the server"} | |||
| 65 | + | {"level":"info","time":"2023-09-05T08:07:54+02:00","message":"Server is listening on port 1323"} | |||
| 66 | + | {"level":"info","time":"2023-09-05T08:07:54+02:00","message":"Server is listening on port 1323"} | |||
| 67 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:07:54+02:00","message":"Failed to start the server"} | |||
| 68 | + | {"level":"info","time":"2023-09-05T08:08:06+02:00","message":"Server is listening on port 1323"} | |||
| 69 | + | {"level":"info","time":"2023-09-05T08:08:06+02:00","message":"Server is listening on port 1323"} | |||
| 70 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:08:06+02:00","message":"Failed to start the server"} | |||
| 71 | + | {"level":"info","time":"2023-09-05T08:08:19+02:00","message":"Server is listening on port 1323"} | |||
| 72 | + | {"level":"info","time":"2023-09-05T08:08:19+02:00","message":"Server is listening on port 1323"} | |||
| 73 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:08:19+02:00","message":"Failed to start the server"} | |||
| 74 | + | {"level":"info","time":"2023-09-05T08:11:37+02:00","message":"Server is listening on port 1323"} | |||
| 75 | + | {"level":"info","time":"2023-09-05T08:11:37+02:00","message":"Server is listening on port 1323"} | |||
| 76 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:11:37+02:00","message":"Failed to start the server"} | |||
| 77 | + | {"level":"info","time":"2023-09-05T08:12:11+02:00","message":"Server is listening on port 1323"} | |||
| 78 | + | {"level":"info","time":"2023-09-05T08:12:45+02:00","message":"Server is listening on port 1323"} | |||
| 79 | + | {"level":"info","time":"2023-09-05T08:15:30+02:00","message":"Server is listening on port 1323"} | |||
| 80 | + | {"level":"info","time":"2023-09-05T08:17:57+02:00","message":"Server is listening on port 1323"} | |||
| 81 | + | {"level":"info","time":"2023-09-05T08:18:34+02:00","message":"Server is listening on port 1323"} | |||
| 82 | + | {"level":"info","time":"2023-09-05T08:18:34+02:00","message":"Server is listening on port 1323"} | |||
| 83 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:18:34+02:00","message":"Failed to start the server"} | |||
| 84 | + | {"level":"info","time":"2023-09-05T08:19:19+02:00","message":"Server is listening on port 1323"} | |||
| 85 | + | {"level":"info","time":"2023-09-05T08:19:19+02:00","message":"Server is listening on port 1323"} | |||
| 86 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:19:19+02:00","message":"Failed to start the server"} | |||
| 87 | + | {"level":"info","time":"2023-09-05T08:20:25+02:00","message":"Server is listening on port 1323"} | |||
| 88 | + | {"level":"info","time":"2023-09-05T08:20:25+02:00","message":"Server is listening on port 1323"} | |||
| 89 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:20:25+02:00","message":"Failed to start the server"} | |||
| 90 | + | {"level":"info","time":"2023-09-05T08:23:16+02:00","message":"Server is listening on port 1323"} | |||
| 91 | + | {"level":"info","time":"2023-09-05T08:23:16+02:00","message":"Server is listening on port 1323"} | |||
| 92 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:23:16+02:00","message":"Failed to start the server"} | |||
| 93 | + | {"level":"info","time":"2023-09-05T08:24:29+02:00","message":"Server is listening on port 1323"} | |||
| 94 | + | {"level":"info","time":"2023-09-05T08:24:29+02:00","message":"Server is listening on port 1323"} | |||
| 95 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:24:29+02:00","message":"Failed to start the server"} | |||
| 96 | + | {"level":"info","time":"2023-09-05T08:31:18+02:00","message":"Server is listening on port 1323"} | |||
| 97 | + | {"level":"info","time":"2023-09-05T08:31:18+02:00","message":"Server is listening on port 1323"} | |||
| 98 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:31:18+02:00","message":"Failed to start the server"} | |||
| 99 | + | {"level":"info","time":"2023-09-05T08:33:39+02:00","message":"Server is listening on port 1323"} | |||
| 100 | + | {"level":"info","time":"2023-09-05T08:33:39+02:00","message":"Server is listening on port 1323"} | |||
| 101 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:33:39+02:00","message":"Failed to start the server"} | |||
| 102 | + | {"level":"info","time":"2023-09-05T08:34:09+02:00","message":"Server is listening on port 1323"} | |||
| 103 | + | {"level":"info","time":"2023-09-05T08:40:52+02:00","message":"Server is listening on port 1323"} | |||
| 104 | + | {"level":"info","time":"2023-09-05T08:40:52+02:00","message":"Server is listening on port 1323"} | |||
| 105 | + | {"level":"fatal","error":"listen tcp :1323: bind: address already in use","time":"2023-09-05T08:40:52+02:00","message":"Failed to start the server"} | |||
| 106 | + | {"level":"info","time":"2023-09-05T08:43:24+02:00","message":"Server is listening on port 1323"} | |||
| 107 | + | {"level":"info","time":"2023-09-05T08:44:45+02:00","message":"Server is listening on port 1323"} | |||
| 108 | + | {"level":"warn","time":"2023-09-05T08:49:04+02:00","message":"Graceful shutdown initiated"} | |||
| 109 | + | {"level":"warn","time":"2023-09-05T08:49:04+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |||
| 110 | + | {"level":"info","time":"2023-09-05T08:49:09+02:00","message":"Server shutdown"} | |||
| 111 | + | {"level":"info","time":"2023-09-05T08:49:13+02:00","message":"Server is listening on port 1323"} | |||
| 112 | + | {"level":"warn","time":"2023-09-05T08:50:43+02:00","message":"Graceful shutdown initiated"} | |||
| 113 | + | {"level":"warn","time":"2023-09-05T08:50:43+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |||
| 114 | + | {"level":"info","time":"2023-09-05T08:50:44+02:00","message":"Shutdown cancelled by user"} | |||
| 115 | + | {"level":"info","time":"2023-09-05T08:50:49+02:00","message":"Server is listening on port 1323"} | |||
| 116 | + | {"level":"warn","time":"2023-09-05T08:51:23+02:00","message":"Graceful shutdown initiated"} | |||
| 117 | + | {"level":"warn","time":"2023-09-05T08:51:23+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |||
| 118 | + | {"level":"info","time":"2023-09-05T08:51:23+02:00","message":"Shutdown cancelled by user"} | |||
| 119 | + | {"level":"info","time":"2023-09-05T08:51:26+02:00","message":"Server is listening on port 1323"} | |||
| 120 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 121 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 122 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 123 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 124 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 125 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 126 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 127 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 128 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 129 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 130 | + | {"level":"info","type":"app","time":"2023-09-05T08:51:28+02:00","message":"Color scheme detected: light"} | |||
| 131 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 132 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 133 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 134 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 135 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 136 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 137 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 138 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 139 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 140 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 141 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:37+02:00","message":"Color scheme detected: light"} | |||
| 142 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |||
| 143 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43272: runtime error: invalid memory address or nil pointer dereference"} | |||
| 144 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 34 [running]:"} | |||
| 145 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 146 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 147 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 148 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 149 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0003ba000})"} | |||
| 150 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 151 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0003ba000})"} | |||
| 152 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 153 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0003ba000})"} | |||
| 154 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 155 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0003ba000})"} | |||
| 156 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 157 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0003ba000})"} | |||
| 158 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 159 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0003ba000})"} | |||
| 160 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 161 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e2a0}, 0xc000238500)"} | |||
| 162 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 163 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0002120c0?}, {0x1336a18?, 0xc00025e2a0?}, 0x6?)"} | |||
| 164 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 165 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc000216000, {0x13374c8, 0xc0000b42a0})"} | |||
| 166 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 167 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 168 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 169 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |||
| 170 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43302: runtime error: invalid memory address or nil pointer dereference"} | |||
| 171 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 24 [running]:"} | |||
| 172 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 173 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 174 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 175 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 176 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0000d80a0})"} | |||
| 177 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 178 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0000d80a0})"} | |||
| 179 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 180 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0000d80a0})"} | |||
| 181 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 182 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0000d80a0})"} | |||
| 183 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 184 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0000d80a0})"} | |||
| 185 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 186 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0000d80a0})"} | |||
| 187 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 188 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc000334540}, 0xc000324400)"} | |||
| 189 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 190 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0001df230?}, {0x1336a18?, 0xc000334540?}, 0x6?)"} | |||
| 191 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 192 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc0001a63f0, {0x13374c8, 0xc0000b42a0})"} | |||
| 193 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 194 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 195 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 196 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |||
| 197 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43288: runtime error: invalid memory address or nil pointer dereference"} | |||
| 198 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 50 [running]:"} | |||
| 199 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 200 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 201 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 202 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 203 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0002640a0})"} | |||
| 204 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 205 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0002640a0})"} | |||
| 206 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 207 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0002640a0})"} | |||
| 208 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 209 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0002640a0})"} | |||
| 210 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 211 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0002640a0})"} | |||
| 212 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 213 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0002640a0})"} | |||
| 214 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 215 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e460}, 0xc000238600)"} | |||
| 216 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 217 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0000b4300?}, {0x1336a18?, 0xc00025e460?}, 0x6?)"} | |||
| 218 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 219 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc00031e000, {0x13374c8, 0xc0000b42a0})"} | |||
| 220 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 221 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 222 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 223 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |||
| 224 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43312: runtime error: invalid memory address or nil pointer dereference"} | |||
| 225 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 66 [running]:"} | |||
| 226 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 227 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 228 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 229 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 230 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000122280})"} | |||
| 231 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 232 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000122280})"} | |||
| 233 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 234 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000122280})"} | |||
| 235 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 236 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000122280})"} | |||
| 237 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 238 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000122280})"} | |||
| 239 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 240 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000122280})"} | |||
| 241 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 242 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc000334700}, 0xc000324500)"} | |||
| 243 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 244 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc000384090?}, {0x1336a18?, 0xc000334700?}, 0x6?)"} | |||
| 245 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 246 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc000388000, {0x13374c8, 0xc0000b42a0})"} | |||
| 247 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 248 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 249 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 250 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |||
| 251 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43294: runtime error: invalid memory address or nil pointer dereference"} | |||
| 252 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 23 [running]:"} | |||
| 253 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 254 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 255 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 256 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 257 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000264140})"} | |||
| 258 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 259 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000264140})"} | |||
| 260 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 261 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000264140})"} | |||
| 262 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 263 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000264140})"} | |||
| 264 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 265 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000264140})"} | |||
| 266 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 267 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000264140})"} | |||
| 268 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 269 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e620}, 0xc000238700)"} | |||
| 270 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 271 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0001df140?}, {0x1336a18?, 0xc00025e620?}, 0x6?)"} | |||
| 272 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 273 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc0001a6360, {0x13374c8, 0xc0000b42a0})"} | |||
| 274 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 275 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 276 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 277 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |||
| 278 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:43318: runtime error: invalid memory address or nil pointer dereference"} | |||
| 279 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 67 [running]:"} | |||
| 280 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 281 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 282 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 283 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 284 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0001223c0})"} | |||
| 285 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 286 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0001223c0})"} | |||
| 287 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 288 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0001223c0})"} | |||
| 289 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 290 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0001223c0})"} | |||
| 291 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 292 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0001223c0})"} | |||
| 293 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 294 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0001223c0})"} | |||
| 295 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 296 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc0003348c0}, 0xc000324600)"} | |||
| 297 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 298 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc000384150?}, {0x1336a18?, 0xc0003348c0?}, 0x6?)"} | |||
| 299 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 300 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc000388090, {0x13374c8, 0xc0000b42a0})"} | |||
| 301 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 302 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 303 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 304 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"Color scheme detected: light"} | |||
| 305 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"echo: http: panic serving [::1]:39638: runtime error: invalid memory address or nil pointer dereference"} | |||
| 306 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"goroutine 12 [running]:"} | |||
| 307 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 308 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 309 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 310 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 311 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc0002641e0})"} | |||
| 312 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 313 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc0002641e0})"} | |||
| 314 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 315 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc0002641e0})"} | |||
| 316 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 317 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc0002641e0})"} | |||
| 318 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 319 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc0002641e0})"} | |||
| 320 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 321 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc0002641e0})"} | |||
| 322 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 323 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e7e0}, 0xc000238800)"} | |||
| 324 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 325 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00045a5a0?}, {0x1336a18?, 0xc00025e7e0?}, 0x6?)"} | |||
| 326 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 327 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"net/http.(*conn).serve(0xc0002163f0, {0x13374c8, 0xc0000b42a0})"} | |||
| 328 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 329 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 330 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:45+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 331 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"Color scheme detected: light"} | |||
| 332 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"echo: http: panic serving [::1]:39644: runtime error: invalid memory address or nil pointer dereference"} | |||
| 333 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"goroutine 55 [running]:"} | |||
| 334 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 335 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 336 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 337 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 338 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000344000})"} | |||
| 339 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 340 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000344000})"} | |||
| 341 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 342 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000344000})"} | |||
| 343 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 344 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000344000})"} | |||
| 345 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 346 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000344000})"} | |||
| 347 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 348 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000344000})"} | |||
| 349 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 350 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc0001680e0}, 0xc0001b4100)"} | |||
| 351 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 352 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00029b6e0?}, {0x1336a18?, 0xc0001680e0?}, 0x6?)"} | |||
| 353 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 354 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"net/http.(*conn).serve(0xc0001a61b0, {0x13374c8, 0xc0000b42a0})"} | |||
| 355 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 356 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 357 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:46+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 358 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"Color scheme detected: light"} | |||
| 359 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"echo: http: panic serving [::1]:57658: runtime error: invalid memory address or nil pointer dereference"} | |||
| 360 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"goroutine 14 [running]:"} | |||
| 361 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 362 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 363 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 364 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 365 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e6b0, 0xc000264280})"} | |||
| 366 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:15 +0x6a"} | |||
| 367 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e6b0, 0xc000264280})"} | |||
| 368 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:23 +0x25"} | |||
| 369 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e6b0, 0xc000264280})"} | |||
| 370 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 371 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e6b0, 0xc000264280})"} | |||
| 372 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:19 +0xda"} | |||
| 373 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e6b0, 0xc000264280})"} | |||
| 374 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 375 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e6b0, 0xc000264280})"} | |||
| 376 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 377 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc00014afc0, {0x1336a18?, 0xc00025e8c0}, 0xc000238900)"} | |||
| 378 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 379 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00045b2c0?}, {0x1336a18?, 0xc00025e8c0?}, 0x6?)"} | |||
| 380 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 381 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"net/http.(*conn).serve(0xc0002165a0, {0x13374c8, 0xc0000b42a0})"} | |||
| 382 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 383 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"created by net/http.(*Server).Serve in goroutine 20"} | |||
| 384 | + | {"level":"info","type":"app","time":"2023-09-05T08:54:51+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 385 | + | {"level":"warn","time":"2023-09-05T08:55:12+02:00","message":"Graceful shutdown initiated"} | |||
| 386 | + | {"level":"warn","time":"2023-09-05T08:55:12+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |||
| 387 | + | {"level":"info","time":"2023-09-05T08:55:16+02:00","message":"Shutdown cancelled by user"} | |||
| 388 | + | {"level":"info","time":"2023-09-05T08:55:17+02:00","message":"Server is listening on port 1323"} | |||
| 389 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"echo: http: panic serving [::1]:42274: runtime error: invalid memory address or nil pointer dereference"} | |||
| 390 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"goroutine 18 [running]:"} | |||
| 391 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 392 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 393 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 394 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 395 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e710, 0xc0002d0000})"} | |||
| 396 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:16 +0x6a"} | |||
| 397 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e710, 0xc0002d0000})"} | |||
| 398 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:24 +0x25"} | |||
| 399 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e710, 0xc0002d0000})"} | |||
| 400 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 401 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e710, 0xc0002d0000})"} | |||
| 402 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:16 +0x68"} | |||
| 403 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e710, 0xc0002d0000})"} | |||
| 404 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 405 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e710, 0xc0002d0000})"} | |||
| 406 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 407 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc0000d2fc0, {0x1336a78?, 0xc0002ca000}, 0xc0002a4000)"} | |||
| 408 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 409 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"net/http.serverHandler.ServeHTTP({0xc0002860c0?}, {0x1336a78?, 0xc0002ca000?}, 0x6?)"} | |||
| 410 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 411 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"net/http.(*conn).serve(0xc00028a000, {0x1337528, 0xc00012a2a0})"} | |||
| 412 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 413 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"created by net/http.(*Server).Serve in goroutine 7"} | |||
| 414 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:19+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 415 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"echo: http: panic serving [::1]:51344: runtime error: invalid memory address or nil pointer dereference"} | |||
| 416 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"goroutine 34 [running]:"} | |||
| 417 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"net/http.(*conn).serve.func1()"} | |||
| 418 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:1868 +0xb9"} | |||
| 419 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"panic({0x8e12c0?, 0x165ea90?})"} | |||
| 420 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/runtime/panic.go:920 +0x270"} | |||
| 421 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.EnableLogger({0x133e710, 0xc00016e000})"} | |||
| 422 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:16 +0x6a"} | |||
| 423 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/routes.AdminRoute({0x133e710, 0xc00016e000})"} | |||
| 424 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/routes/admin-routes.go:24 +0x25"} | |||
| 425 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"github.com/labstack/echo/v4.(*Echo).add.func1({0x133e710, 0xc00016e000})"} | |||
| 426 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:582 +0x4b"} | |||
| 427 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.ColorSchemeDetection.func1({0x133e710, 0xc00016e000})"} | |||
| 428 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-color-scheme.go:16 +0x68"} | |||
| 429 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"gogs.bnema.dev/gordon-echo/internal/http/middlewares.LanguageDetection.func1({0x133e710, 0xc00016e000})"} | |||
| 430 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/Workspace/Projects/Gordon/gordon-echo/internal/http/middlewares/detect-lang.go:18 +0x68"} | |||
| 431 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"github.com/labstack/echo/v4/middleware.RequestLoggerConfig.ToMiddleware.func1.1({0x133e710, 0xc00016e000})"} | |||
| 432 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/middleware/request_logger.go:259 +0x16b"} | |||
| 433 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"github.com/labstack/echo/v4.(*Echo).ServeHTTP(0xc0000d2fc0, {0x1336a78?, 0xc00016a000}, 0xc000160000)"} | |||
| 434 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/home/brice/go/pkg/mod/github.com/labstack/echo/v4@v4.11.1/echo.go:669 +0x399"} | |||
| 435 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"net/http.serverHandler.ServeHTTP({0xc00012ad20?}, {0x1336a78?, 0xc00016a000?}, 0x6?)"} | |||
| 436 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:2938 +0x8e"} | |||
| 437 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"net/http.(*conn).serve(0xc00015c000, {0x1337528, 0xc00012a2a0})"} | |||
| 438 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:2009 +0x5f4"} | |||
| 439 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"created by net/http.(*Server).Serve in goroutine 7"} | |||
| 440 | + | {"level":"info","type":"app","time":"2023-09-05T08:55:49+02:00","message":"\t/usr/local/go/src/net/http/server.go:3086 +0x5cb"} | |||
| 441 | + | {"level":"warn","time":"2023-09-05T08:57:57+02:00","message":"Graceful shutdown initiated"} | |||
| 442 | + | {"level":"warn","time":"2023-09-05T08:57:57+02:00","message":"Server will shutdown in 5 seconds press ENTER to cancel"} | |||
| 443 | + | {"level":"info","time":"2023-09-05T08:58:02+02:00","message":"Server shutdown"} | |||
| 444 | + | {"level":"info","time":"2023-09-05T08:58:05+02:00","message":"Server is listening on port 1323"} | |||
| 445 | + | {"level":"debug","type":"app","time":"2023-09-05T08:58:15+02:00","message":"Fresh installation detected, redirecting to /admin/install"} | |||
M logs/http.log +321 -0
| @@ -59,3 +59,324 @@ | |||
| 59 | 59 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | |
| 60 | 60 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | |
| 61 | 61 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | |
| 62 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:06:07+02:00","message":"request"} | |
| 63 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:06:07+02:00","message":"request"} | |
| 64 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 65 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 66 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 67 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 68 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 69 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 70 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 71 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |
| 72 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:07:28+02:00","message":"request"} | |
| 73 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:07:28+02:00","message":"request"} | |
| 74 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 75 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 76 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 77 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 78 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 79 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 80 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 81 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 82 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 83 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 84 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |
| 85 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 86 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 87 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 88 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 89 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 90 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 91 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 92 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 93 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 94 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 95 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |
| 96 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |
| 97 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |
| 98 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |
| 99 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |
| 100 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |
| 101 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |
| 102 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |
| 103 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |
| 104 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |
| 105 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |
| 106 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |
| 107 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:08:41+02:00","message":"request"} | |
| 108 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:08:41+02:00","message":"request"} | |
| 109 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:41+02:00","message":"request"} | |
| 110 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":302,"time":"2023-09-05T08:08:52+02:00","message":"request"} | |
| 111 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:08:52+02:00","message":"request"} | |
| 112 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:08:52+02:00","message":"request"} | |
| 113 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 114 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 115 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 116 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 117 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 118 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 119 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 120 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 121 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |
| 122 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 123 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 124 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 125 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 126 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 127 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 128 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 129 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 130 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 131 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |
| 132 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 133 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 134 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 135 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 136 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 137 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 138 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 139 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 140 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |
| 141 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 142 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 143 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 144 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 145 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 146 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 147 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 148 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 149 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |
| 150 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 151 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 152 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 153 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 154 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 155 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 156 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 157 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 158 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 159 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 160 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 161 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 162 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 163 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 164 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 165 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 166 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 167 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |
| 168 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":302,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 169 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 170 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 171 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 172 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 173 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 174 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 175 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 176 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 177 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 178 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 179 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |
| 180 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 181 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 182 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 183 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 184 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 185 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 186 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 187 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 188 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 189 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 190 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 191 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |
| 192 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 193 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 194 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 195 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 196 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 197 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 198 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 199 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 200 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |
| 201 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 202 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 203 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 204 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 205 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 206 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 207 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 208 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 209 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 210 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 211 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |
| 212 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/","status":404,"time":"2023-09-05T08:19:22+02:00","message":"request"} | |
| 213 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/","status":404,"time":"2023-09-05T08:19:25+02:00","message":"request"} | |
| 214 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:19:25+02:00","message":"request"} | |
| 215 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/","status":404,"time":"2023-09-05T08:19:26+02:00","message":"request"} | |
| 216 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:19:26+02:00","message":"request"} | |
| 217 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 218 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 219 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 220 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 221 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 222 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 223 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 224 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 225 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 226 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 227 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |
| 228 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 229 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 230 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 231 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 232 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 233 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 234 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 235 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 236 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 237 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |
| 238 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:20:28+02:00","message":"request"} | |
| 239 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 240 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 241 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 242 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 243 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 244 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 245 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 246 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 247 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 248 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 249 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |
| 250 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 251 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 252 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 253 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 254 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 255 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 256 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 257 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 258 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 259 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 260 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |
| 261 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 262 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 263 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 264 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 265 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 266 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 267 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 268 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 269 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 270 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 271 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |
| 272 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 273 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 274 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 275 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 276 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 277 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 278 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 279 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 280 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 281 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 282 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |
| 283 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 284 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 285 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 286 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 287 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 288 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 289 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 290 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 291 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 292 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 293 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |
| 294 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 295 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 296 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 297 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 298 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 299 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 300 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 301 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 302 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 303 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 304 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |
| 305 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |
| 306 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |
| 307 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |
| 308 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |
| 309 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |
| 310 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |
| 311 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |
| 312 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |
| 313 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |
| 314 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |
| 315 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |
| 316 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 317 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 318 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 319 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 320 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 321 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 322 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 323 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 324 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 325 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 326 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |
| 327 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 328 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 329 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 330 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 331 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 332 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 333 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 334 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 335 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 336 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 337 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |
| 338 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 339 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 340 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 341 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 342 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 343 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 344 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 345 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 346 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 347 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 348 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |
| 349 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 350 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 351 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 352 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 353 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 354 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 355 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 356 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 357 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 358 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 359 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |
| 360 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 361 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 362 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 363 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 364 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 365 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 366 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 367 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 368 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 369 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 370 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |
| 371 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 372 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 373 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 374 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 375 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 376 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 377 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 378 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 379 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 380 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 381 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| 382 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |
| @@ -59,3 +59,324 @@ | |||||
| 59 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | 59 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | ||
| 60 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | 60 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | ||
| 61 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | 61 | {"level":"info","type":"http","remote_ip":"127.0.0.1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T06:52:05+02:00","message":"request"} | ||
| 62 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:06:07+02:00","message":"request"} | |||
| 63 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:06:07+02:00","message":"request"} | |||
| 64 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 65 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 66 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 67 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 68 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 69 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 70 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 71 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:07:27+02:00","message":"request"} | |||
| 72 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:07:28+02:00","message":"request"} | |||
| 73 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:07:28+02:00","message":"request"} | |||
| 74 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 75 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 76 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 77 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 78 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 79 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 80 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 81 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 82 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 83 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 84 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:07:57+02:00","message":"request"} | |||
| 85 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 86 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 87 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 88 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 89 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 90 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 91 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 92 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 93 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 94 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 95 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:08+02:00","message":"request"} | |||
| 96 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |||
| 97 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |||
| 98 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |||
| 99 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |||
| 100 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |||
| 101 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |||
| 102 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:08:09+02:00","message":"request"} | |||
| 103 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |||
| 104 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |||
| 105 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |||
| 106 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:10+02:00","message":"request"} | |||
| 107 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:08:41+02:00","message":"request"} | |||
| 108 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:08:41+02:00","message":"request"} | |||
| 109 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:41+02:00","message":"request"} | |||
| 110 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":302,"time":"2023-09-05T08:08:52+02:00","message":"request"} | |||
| 111 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:08:52+02:00","message":"request"} | |||
| 112 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:08:52+02:00","message":"request"} | |||
| 113 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 114 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 115 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 116 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 117 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 118 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 119 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 120 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 121 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:08:53+02:00","message":"request"} | |||
| 122 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 123 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 124 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 125 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 126 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 127 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 128 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 129 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 130 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 131 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:04+02:00","message":"request"} | |||
| 132 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 133 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 134 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 135 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 136 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 137 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 138 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 139 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 140 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:14+02:00","message":"request"} | |||
| 141 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 142 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 143 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 144 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 145 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 146 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 147 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 148 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 149 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:47+02:00","message":"request"} | |||
| 150 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 151 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 152 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 153 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 154 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 155 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 156 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 157 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 158 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 159 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 160 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 161 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 162 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 163 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 164 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 165 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 166 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 167 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:12:48+02:00","message":"request"} | |||
| 168 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":302,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 169 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 170 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 171 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 172 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 173 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 174 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 175 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 176 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 177 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 178 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 179 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:15:35+02:00","message":"request"} | |||
| 180 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 181 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 182 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 183 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 184 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 185 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 186 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 187 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 188 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 189 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 190 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 191 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:15:46+02:00","message":"request"} | |||
| 192 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 193 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/css/tailwind.css","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 194 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/iconoir.css","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 195 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/alpine.min.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 196 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx-sse.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 197 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/libs/htmx.min.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 198 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/js/custom.js","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 199 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/assets/imgs/gordon-mascot-hq-trsp.png","status":404,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 200 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:17:59+02:00","message":"request"} | |||
| 201 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 202 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 203 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 204 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 205 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 206 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 207 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 208 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 209 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 210 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 211 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:18:36+02:00","message":"request"} | |||
| 212 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/","status":404,"time":"2023-09-05T08:19:22+02:00","message":"request"} | |||
| 213 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/","status":404,"time":"2023-09-05T08:19:25+02:00","message":"request"} | |||
| 214 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:19:25+02:00","message":"request"} | |||
| 215 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/","status":404,"time":"2023-09-05T08:19:26+02:00","message":"request"} | |||
| 216 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:19:26+02:00","message":"request"} | |||
| 217 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 218 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 219 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 220 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 221 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 222 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 223 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 224 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 225 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 226 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 227 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:19:28+02:00","message":"request"} | |||
| 228 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 229 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 230 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 231 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 232 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 233 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 234 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 235 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 236 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 237 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:20:27+02:00","message":"request"} | |||
| 238 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:20:28+02:00","message":"request"} | |||
| 239 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 240 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 241 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 242 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 243 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 244 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 245 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 246 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 247 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 248 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 249 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:20:29+02:00","message":"request"} | |||
| 250 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 251 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 252 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 253 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 254 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 255 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 256 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 257 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 258 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 259 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 260 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:20:30+02:00","message":"request"} | |||
| 261 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 262 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 263 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 264 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 265 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 266 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 267 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 268 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 269 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 270 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 271 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:41:00+02:00","message":"request"} | |||
| 272 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 273 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 274 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 275 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 276 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 277 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 278 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 279 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 280 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 281 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 282 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:43:27+02:00","message":"request"} | |||
| 283 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 284 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 285 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 286 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 287 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 288 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 289 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 290 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 291 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 292 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 293 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:44:48+02:00","message":"request"} | |||
| 294 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 295 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 296 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 297 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 298 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 299 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 300 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 301 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 302 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 303 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 304 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:48:57+02:00","message":"request"} | |||
| 305 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |||
| 306 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |||
| 307 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |||
| 308 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |||
| 309 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |||
| 310 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |||
| 311 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:48:59+02:00","message":"request"} | |||
| 312 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |||
| 313 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |||
| 314 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |||
| 315 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:49:00+02:00","message":"request"} | |||
| 316 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 317 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 318 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 319 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 320 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 321 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 322 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 323 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 324 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 325 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 326 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:49:16+02:00","message":"request"} | |||
| 327 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 328 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 329 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 330 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 331 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 332 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 333 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 334 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 335 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 336 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 337 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:50:51+02:00","message":"request"} | |||
| 338 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 339 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 340 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 341 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 342 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 343 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 344 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 345 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 346 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 347 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 348 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:50:55+02:00","message":"request"} | |||
| 349 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 350 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 351 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 352 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 353 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 354 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 355 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 356 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 357 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 358 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 359 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:51:28+02:00","message":"request"} | |||
| 360 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 361 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 362 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 363 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 364 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 365 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 366 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 367 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 368 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 369 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 370 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:54:37+02:00","message":"request"} | |||
| 371 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin","status":302,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 372 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/admin/install","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 373 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/js/custom.js","status":404,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 374 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/css/tailwind.css","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 375 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/alpine.min.js","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 376 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx-sse.js","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 377 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/htmx.min.js","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 378 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/libs/iconoir.css","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 379 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/imgs/gordon-mascot-hq-trsp.png","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 380 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/LilitaOne/LilitaOne-Regular.ttf","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 381 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/assets/fonts/IBMPlex/IBMPlexSans-Regular.woff2","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
| 382 | + | {"level":"info","type":"http","remote_ip":"::1","method":"GET","URI":"/favicon.ico","status":200,"time":"2023-09-05T08:58:15+02:00","message":"request"} | |||
A pkg/utils/detect-first-launch.go +14 -0
| @@ -0,0 +1,14 @@ | |||
| 1 | + | package utils | |
| 2 | + | ||
| 3 | + | import ( | |
| 4 | + | "os" | |
| 5 | + | ) | |
| 6 | + | ||
| 7 | + | // IsConfigFilePresent checks if it's the first launch of the app based on the existence of gordon.yml | |
| 8 | + | func IsConfigFilePresent() bool { | |
| 9 | + | // Check if gordon.yml exists at the root of the project | |
| 10 | + | if _, err := os.Stat("gordon.yml"); os.IsNotExist(err) { | |
| 11 | + | return true | |
| 12 | + | } | |
| 13 | + | return false | |
| 14 | + | } | |
| @@ -0,0 +1,14 @@ | |||||
| 1 | + | package utils | |||
| 2 | + | ||||
| 3 | + | import ( | |||
| 4 | + | "os" | |||
| 5 | + | ) | |||
| 6 | + | ||||
| 7 | + | // IsConfigFilePresent checks if it's the first launch of the app based on the existence of gordon.yml | |||
| 8 | + | func IsConfigFilePresent() bool { | |||
| 9 | + | // Check if gordon.yml exists at the root of the project | |||
| 10 | + | if _, err := os.Stat("gordon.yml"); os.IsNotExist(err) { | |||
| 11 | + | return true | |||
| 12 | + | } | |||
| 13 | + | return false | |||
| 14 | + | } | |||
M pkg/utils/logger.go +31 -5
| @@ -1,6 +1,7 @@ | |||
| 1 | 1 | package utils | |
| 2 | 2 | ||
| 3 | 3 | import ( | |
| 4 | + | "bufio" | |
| 4 | 5 | "fmt" | |
| 5 | 6 | "io" | |
| 6 | 7 | "os" | |
| @@ -9,8 +10,6 @@ import ( | |||
| 9 | 10 | "github.com/rs/zerolog" | |
| 10 | 11 | ) | |
| 11 | 12 | ||
| 12 | - | type LogLevel string | |
| 13 | - | ||
| 14 | 13 | const ( | |
| 15 | 14 | DEBUG LogLevel = "debug" | |
| 16 | 15 | INFO LogLevel = "info" | |
| @@ -20,15 +19,23 @@ const ( | |||
| 20 | 19 | PANIC LogLevel = "panic" | |
| 21 | 20 | ) | |
| 22 | 21 | ||
| 22 | + | type LogLevel string | |
| 23 | 23 | type Logger struct { | |
| 24 | 24 | zerolog.Logger | |
| 25 | 25 | } | |
| 26 | 26 | ||
| 27 | + | type stdoutCapture struct { | |
| 28 | + | logger *Logger | |
| 29 | + | } | |
| 30 | + | ||
| 27 | 31 | type EchoLoggerWrapper struct { | |
| 28 | 32 | *Logger | |
| 29 | 33 | output io.Writer | |
| 30 | 34 | } | |
| 31 | 35 | ||
| 36 | + | // LogFunc is a function that logs a message with optional context. | |
| 37 | + | type LogFunc func() *zerolog.Event | |
| 38 | + | ||
| 32 | 39 | // Map log levels to zerolog log functions | |
| 33 | 40 | func (l *Logger) getLogFunc(level LogLevel) LogFunc { | |
| 34 | 41 | switch level { | |
| @@ -49,9 +56,6 @@ func (l *Logger) getLogFunc(level LogLevel) LogFunc { | |||
| 49 | 56 | } | |
| 50 | 57 | } | |
| 51 | 58 | ||
| 52 | - | // LogFunc is a function that logs a message with optional context. | |
| 53 | - | type LogFunc func() *zerolog.Event | |
| 54 | - | ||
| 55 | 59 | func (l *Logger) Log(level LogLevel, i ...interface{}) { | |
| 56 | 60 | logFunc := l.getLogFunc(level) | |
| 57 | 61 | logFunc().Msg(fmt.Sprint(i...)) | |
| @@ -63,6 +67,28 @@ func NewLogger() *Logger { | |||
| 63 | 67 | return &Logger{zl} | |
| 64 | 68 | } | |
| 65 | 69 | ||
| 70 | + | func (s *stdoutCapture) Write(p []byte) (n int, err error) { | |
| 71 | + | s.logger.Info().Str("type", "app").Msg(string(p)) | |
| 72 | + | return len(p), nil | |
| 73 | + | } | |
| 74 | + | ||
| 75 | + | func CaptureSTDOUT(logger *Logger) { | |
| 76 | + | // Create a reading and writing pipe | |
| 77 | + | reader, writer, _ := os.Pipe() | |
| 78 | + | ||
| 79 | + | // Replace os.Stdout with the writer end of the pipe | |
| 80 | + | os.Stdout = writer | |
| 81 | + | ||
| 82 | + | // Start a goroutine to read from the pipe | |
| 83 | + | go func() { | |
| 84 | + | scanner := bufio.NewScanner(reader) | |
| 85 | + | for scanner.Scan() { | |
| 86 | + | text := scanner.Text() | |
| 87 | + | logger.Debug().Str("type", "app").Msg(text) | |
| 88 | + | } | |
| 89 | + | }() | |
| 90 | + | } | |
| 91 | + | ||
| 66 | 92 | func NewEchoLoggerWrapper(l *Logger) *EchoLoggerWrapper { | |
| 67 | 93 | return &EchoLoggerWrapper{Logger: l, output: os.Stdout} | |
| 68 | 94 | } | |
| @@ -1,6 +1,7 @@ | |||||
| 1 | package utils | 1 | package utils | ||
| 2 | 2 | ||||
| 3 | import ( | 3 | import ( | ||
| 4 | + | "bufio" | |||
| 4 | "fmt" | 5 | "fmt" | ||
| 5 | "io" | 6 | "io" | ||
| 6 | "os" | 7 | "os" | ||
| @@ -9,8 +10,6 @@ import ( | |||||
| 9 | "github.com/rs/zerolog" | 10 | "github.com/rs/zerolog" | ||
| 10 | ) | 11 | ) | ||
| 11 | 12 | ||||
| 12 | - | type LogLevel string | |||
| 13 | - | ||||
| 14 | const ( | 13 | const ( | ||
| 15 | DEBUG LogLevel = "debug" | 14 | DEBUG LogLevel = "debug" | ||
| 16 | INFO LogLevel = "info" | 15 | INFO LogLevel = "info" | ||
| @@ -20,15 +19,23 @@ const ( | |||||
| 20 | PANIC LogLevel = "panic" | 19 | PANIC LogLevel = "panic" | ||
| 21 | ) | 20 | ) | ||
| 22 | 21 | ||||
| 22 | + | type LogLevel string | |||
| 23 | type Logger struct { | 23 | type Logger struct { | ||
| 24 | zerolog.Logger | 24 | zerolog.Logger | ||
| 25 | } | 25 | } | ||
| 26 | 26 | ||||
| 27 | + | type stdoutCapture struct { | |||
| 28 | + | logger *Logger | |||
| 29 | + | } | |||
| 30 | + | ||||
| 27 | type EchoLoggerWrapper struct { | 31 | type EchoLoggerWrapper struct { | ||
| 28 | *Logger | 32 | *Logger | ||
| 29 | output io.Writer | 33 | output io.Writer | ||
| 30 | } | 34 | } | ||
| 31 | 35 | ||||
| 36 | + | // LogFunc is a function that logs a message with optional context. | |||
| 37 | + | type LogFunc func() *zerolog.Event | |||
| 38 | + | ||||
| 32 | // Map log levels to zerolog log functions | 39 | // Map log levels to zerolog log functions | ||
| 33 | func (l *Logger) getLogFunc(level LogLevel) LogFunc { | 40 | func (l *Logger) getLogFunc(level LogLevel) LogFunc { | ||
| 34 | switch level { | 41 | switch level { | ||
| @@ -49,9 +56,6 @@ func (l *Logger) getLogFunc(level LogLevel) LogFunc { | |||||
| 49 | } | 56 | } | ||
| 50 | } | 57 | } | ||
| 51 | 58 | ||||
| 52 | - | // LogFunc is a function that logs a message with optional context. | |||
| 53 | - | type LogFunc func() *zerolog.Event | |||
| 54 | - | ||||
| 55 | func (l *Logger) Log(level LogLevel, i ...interface{}) { | 59 | func (l *Logger) Log(level LogLevel, i ...interface{}) { | ||
| 56 | logFunc := l.getLogFunc(level) | 60 | logFunc := l.getLogFunc(level) | ||
| 57 | logFunc().Msg(fmt.Sprint(i...)) | 61 | logFunc().Msg(fmt.Sprint(i...)) | ||
| @@ -63,6 +67,28 @@ func NewLogger() *Logger { | |||||
| 63 | return &Logger{zl} | 67 | return &Logger{zl} | ||
| 64 | } | 68 | } | ||
| 65 | 69 | ||||
| 70 | + | func (s *stdoutCapture) Write(p []byte) (n int, err error) { | |||
| 71 | + | s.logger.Info().Str("type", "app").Msg(string(p)) | |||
| 72 | + | return len(p), nil | |||
| 73 | + | } | |||
| 74 | + | ||||
| 75 | + | func CaptureSTDOUT(logger *Logger) { | |||
| 76 | + | // Create a reading and writing pipe | |||
| 77 | + | reader, writer, _ := os.Pipe() | |||
| 78 | + | ||||
| 79 | + | // Replace os.Stdout with the writer end of the pipe | |||
| 80 | + | os.Stdout = writer | |||
| 81 | + | ||||
| 82 | + | // Start a goroutine to read from the pipe | |||
| 83 | + | go func() { | |||
| 84 | + | scanner := bufio.NewScanner(reader) | |||
| 85 | + | for scanner.Scan() { | |||
| 86 | + | text := scanner.Text() | |||
| 87 | + | logger.Debug().Str("type", "app").Msg(text) | |||
| 88 | + | } | |||
| 89 | + | }() | |||
| 90 | + | } | |||
| 91 | + | ||||
| 66 | func NewEchoLoggerWrapper(l *Logger) *EchoLoggerWrapper { | 92 | func NewEchoLoggerWrapper(l *Logger) *EchoLoggerWrapper { | ||
| 67 | return &EchoLoggerWrapper{Logger: l, output: os.Stdout} | 93 | return &EchoLoggerWrapper{Logger: l, output: os.Stdout} | ||
| 68 | } | 94 | } | ||