mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 19:45:25 +01:00 
			
		
		
		
	Add router log config option
This commit is contained in:
		
							parent
							
								
									03c2468c2f
								
							
						
					
					
						commit
						100cd181bc
					
				| @ -15,9 +15,12 @@ LICENSES = Apache v2 License|GPL v2|MIT License|Affero GPL|Artistic License 2.0| | ||||
| [server] | ||||
| PROTOCOL = http | ||||
| DOMAIN = localhost | ||||
| ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:3000/ | ||||
| ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/ | ||||
| HTTP_ADDR =  | ||||
| HTTP_PORT = 3000 | ||||
| ; Disable CDN even in "prod" mode | ||||
| OFFLINE_MODE = false | ||||
| ROUTER_LOG = true | ||||
| ; Generate steps: | ||||
| ; $ cd path/to/gogs/custom/https | ||||
| ; $ go run $GOROOT/src/pkg/crypto/tls/generate_cert.go -ca=true -duration=8760h0m0s -host=myhost.example.com | ||||
|  | ||||
| @ -58,10 +58,10 @@ func NewTestEngine(x *xorm.Engine) (err error) { | ||||
| 	case "postgres": | ||||
| 		var host, port = "127.0.0.1", "5432" | ||||
| 		fields := strings.Split(DbCfg.Host, ":") | ||||
| 		if len(fields) > 0 { | ||||
| 		if len(fields) > 0 && len(strings.TrimSpace(fields[0])) > 0 { | ||||
| 			host = fields[0] | ||||
| 		} | ||||
| 		if len(fields) > 1 { | ||||
| 		if len(fields) > 1 && len(strings.TrimSpace(fields[1])) > 0 { | ||||
| 			port = fields[1] | ||||
| 		} | ||||
| 		cnnstr := fmt.Sprintf("user=%s password=%s host=%s port=%s dbname=%s sslmode=%s", | ||||
| @ -91,10 +91,10 @@ func SetEngine() (err error) { | ||||
| 	case "postgres": | ||||
| 		var host, port = "127.0.0.1", "5432" | ||||
| 		fields := strings.Split(DbCfg.Host, ":") | ||||
| 		if len(fields) > 0 { | ||||
| 		if len(fields) > 0 && len(strings.TrimSpace(fields[0])) > 0 { | ||||
| 			host = fields[0] | ||||
| 		} | ||||
| 		if len(fields) > 1 { | ||||
| 		if len(fields) > 1 && len(strings.TrimSpace(fields[1])) > 0 { | ||||
| 			port = fields[1] | ||||
| 		} | ||||
| 		orm, err = xorm.NewEngine("postgres", fmt.Sprintf("user=%s password=%s host=%s port=%s dbname=%s sslmode=%s", | ||||
|  | ||||
| @ -50,6 +50,7 @@ var ( | ||||
| 	AppLogo     string | ||||
| 	AppUrl      string | ||||
| 	OfflineMode bool | ||||
| 	RouterLog   bool | ||||
| 	ProdMode    bool | ||||
| 	Domain      string | ||||
| 	SecretKey   string | ||||
| @ -327,6 +328,7 @@ func NewConfigContext() { | ||||
| 	AppUrl = Cfg.MustValue("server", "ROOT_URL") | ||||
| 	Domain = Cfg.MustValue("server", "DOMAIN") | ||||
| 	OfflineMode = Cfg.MustBool("server", "OFFLINE_MODE", false) | ||||
| 	RouterLog = Cfg.MustBool("server", "ROUTER_LOG", true) | ||||
| 	SecretKey = Cfg.MustValue("security", "SECRET_KEY") | ||||
| 
 | ||||
| 	InstallLock = Cfg.MustBool("security", "INSTALL_LOCK", false) | ||||
|  | ||||
| @ -106,11 +106,19 @@ func (ctx *Context) RenderWithErr(msg, tpl string, form auth.Form) { | ||||
| 
 | ||||
| // Handle handles and logs error by given status. | ||||
| func (ctx *Context) Handle(status int, title string, err error) { | ||||
| 	log.Error("%s: %v", title, err) | ||||
| 	if martini.Dev != martini.Prod { | ||||
| 		ctx.Data["ErrorMsg"] = err | ||||
| 	if err != nil { | ||||
| 		log.Error("%s: %v", title, err) | ||||
| 		if martini.Dev != martini.Prod { | ||||
| 			ctx.Data["ErrorMsg"] = err | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	switch status { | ||||
| 	case 404: | ||||
| 		ctx.Data["Title"] = "Page Not Found" | ||||
| 	case 500: | ||||
| 		ctx.Data["Title"] = "Internal Server Error" | ||||
| 	} | ||||
| 	ctx.HTML(status, fmt.Sprintf("status/%d", status)) | ||||
| } | ||||
| 
 | ||||
|  | ||||
| @ -12,6 +12,8 @@ import ( | ||||
| 	"time" | ||||
| 
 | ||||
| 	"github.com/go-martini/martini" | ||||
| 
 | ||||
| 	"github.com/gogits/gogs/modules/base" | ||||
| ) | ||||
| 
 | ||||
| var isWindows bool | ||||
| @ -22,6 +24,10 @@ func init() { | ||||
| 
 | ||||
| func Logger() martini.Handler { | ||||
| 	return func(res http.ResponseWriter, req *http.Request, ctx martini.Context, log *log.Logger) { | ||||
| 		if !base.RouterLog { | ||||
| 			return | ||||
| 		} | ||||
| 
 | ||||
| 		start := time.Now() | ||||
| 		log.Printf("Started %s %s", req.Method, req.URL.Path) | ||||
| 
 | ||||
|  | ||||
| @ -140,6 +140,7 @@ func Config(ctx *middleware.Context) { | ||||
| 	ctx.Data["AppUrl"] = base.AppUrl | ||||
| 	ctx.Data["Domain"] = base.Domain | ||||
| 	ctx.Data["OfflineMode"] = base.OfflineMode | ||||
| 	ctx.Data["RouterLog"] = base.RouterLog | ||||
| 	ctx.Data["RunUser"] = base.RunUser | ||||
| 	ctx.Data["RunMode"] = strings.Title(martini.Env) | ||||
| 	ctx.Data["RepoRootPath"] = base.RepoRootPath | ||||
|  | ||||
| @ -20,6 +20,8 @@ | ||||
|                     <dd>{{.Domain}}</dd> | ||||
|                     <dt>Offline Mode</dt> | ||||
|                     <dd><i class="fa fa{{if .OfflineMode}}-check{{end}}-square-o"></i></dd> | ||||
|                     <dt>Router Log</dt> | ||||
|                     <dd><i class="fa fa{{if .RouterLog}}-check{{end}}-square-o"></i></dd> | ||||
|                     <hr/> | ||||
|                     <dt>Run User</dt> | ||||
|                     <dd>{{.RunUser}}</dd> | ||||
|  | ||||
							
								
								
									
										3
									
								
								web.go
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								web.go
									
									
									
									
									
								
							| @ -42,7 +42,7 @@ func newMartini() *martini.ClassicMartini { | ||||
| 	m := martini.New() | ||||
| 	m.Use(middleware.Logger()) | ||||
| 	m.Use(martini.Recovery()) | ||||
| 	m.Use(martini.Static("public")) | ||||
| 	m.Use(martini.Static("public", martini.StaticOptions{SkipLogging: !base.RouterLog})) | ||||
| 	m.MapTo(r, (*martini.Routes)(nil)) | ||||
| 	m.Action(r.Handle) | ||||
| 	return &martini.ClassicMartini{m, r} | ||||
| @ -208,4 +208,5 @@ func runWeb(*cli.Context) { | ||||
| 			qlog.Error(err.Error()) | ||||
| 		} | ||||
| 	} | ||||
| 	qlog.Fatalf("Invalid protocol: %s", protocol) | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user