revisi db & logger
This commit is contained in:
36
cmd/main.go
36
cmd/main.go
@@ -3,23 +3,53 @@ package main
|
||||
import (
|
||||
"cpone/db"
|
||||
"cpone/handlers"
|
||||
"time"
|
||||
|
||||
"cpone/package/config"
|
||||
"cpone/package/database"
|
||||
|
||||
"github.com/labstack/echo/v4"
|
||||
"github.com/labstack/echo/v4/middleware"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
// In production, the name of the database
|
||||
// would be obtained from an .env file
|
||||
const dbName = "user_data.db"
|
||||
|
||||
func main() {
|
||||
config.Load()
|
||||
app := echo.New()
|
||||
database.InitDB()
|
||||
|
||||
app.HTTPErrorHandler = handlers.CustomHTTPErrorHandler
|
||||
|
||||
app.Static("/", "assets")
|
||||
app.Use(middleware.Logger())
|
||||
appStore, err := db.NewAppStore(dbName)
|
||||
// app.Use(middleware.Logger())
|
||||
|
||||
logger, _ := zap.NewProduction()
|
||||
app.Use(middleware.RequestLoggerWithConfig(
|
||||
middleware.RequestLoggerConfig{
|
||||
LogURI: true,
|
||||
LogStatus: true,
|
||||
LogValuesFunc: func(c echo.Context, v middleware.RequestLoggerValues) error {
|
||||
logger.Info("request",
|
||||
zap.String("URI", v.URI),
|
||||
zap.Int("status", v.Status),
|
||||
zap.Duration("Duration", v.Latency),
|
||||
|
||||
zap.Any("date", time.Now().String()),
|
||||
)
|
||||
return nil
|
||||
},
|
||||
},
|
||||
))
|
||||
app.Use(middleware.CORSWithConfig(
|
||||
middleware.CORSConfig{
|
||||
AllowOrigins: []string{"*"},
|
||||
AllowMethods: []string{"*"},
|
||||
},
|
||||
))
|
||||
appStore, err := db.NewAppStore(database.Handle)
|
||||
if err != nil {
|
||||
app.Logger.Fatalf("failed to create store: %s", err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user