package log import ( "context" "log/slog" "time" ) // primary struct type Log struct { Ctx context.Context // context Log *slog.Logger // slog logger SLogLevel slog.LevelVar // level } // field customization type Customization struct { Application string Format string TimeStamp TimeStamp Type string MobileApplication MobileApplication Context RequiredContext Extra ValueAdd } type TimeStamp struct { Key string Format string } type MobileApplication struct { DeviceModel string DeviceBrand string OsType string OsVersion string } type RequiredContext struct { AuditID string Channel string Customer string DestPort string HttpMethod string JvmThread string RemoteIP string RequestID string RequestParams string ResponseCode int ResponseTime time.Duration SessionID string SubOperation string Uri string UserID string } type ValueAdd struct { Customer string Product string RequestDomicile string }