diff --git a/docs/content/doc/advanced/logging-documentation.en-us.md b/docs/content/doc/advanced/logging-documentation.en-us.md
index 73c8d5dcbc57..919ccf783b58 100644
--- a/docs/content/doc/advanced/logging-documentation.en-us.md
+++ b/docs/content/doc/advanced/logging-documentation.en-us.md
@@ -48,8 +48,10 @@ Calls to `log.Info`, `log.Debug`, `log.Error` etc. from the `code.gitea.io/gitea
 You can configure the outputs of this logger by setting the `MODE`
 value in the `[log]` section of the configuration.
 
-Each output sublogger is configured in a separate `[log.sublogger]`
-section, but there are certain default values. These will not be inherited from the `[log]` section:
+Each output sublogger is configured in a separate `[log.sublogger.default]`
+which inherits from the sublogger `[log.sublogger]` section and from the 
+generic `[log]` section, but there are certain default values. These will
+not be inherited from the `[log]` section:
 
 * `FLAGS` is `stdflags` (Equal to
 `date,time,medfile,shortfuncname,levelinitial`)
@@ -70,6 +72,9 @@ section which you can configure the outputs of by setting the `MACARON`
 value in the `[log]` section of the configuration. `MACARON` defaults
 to `file` if unset.
 
+Please note, the macaron logger will log at `INFO` level, setting the
+`LEVEL` of this logger to `WARN` or above will result in no macaron logs.
+
 Each output sublogger for this logger is configured in
 `[log.sublogger.macaron]` sections. There are certain default values
 which will not be inherited from the `[log]` or relevant
@@ -98,6 +103,9 @@ Router logs the same data as the Macaron log but has slightly different
 coloring. It logs at the `Info` level by default, but this can be
 changed if desired by setting the `ROUTER_LOG_LEVEL` value.
 
+Please note, setting the `LEVEL` of this logger to a level above
+`ROUTER_LOG_LEVEL` will result in no router logs.
+
 Each output sublogger for this logger is configured in
 `[log.sublogger.router]` sections. There are certain default values
 which will not be inherited from the `[log]` or relevant
@@ -136,6 +144,9 @@ which will not be inherited from the `[log]` or relevant
 If desired the format of the Access logger can be changed by changing
 the value of the `ACCESS_LOG_TEMPLATE`.
 
+Please note, the access logger will log at `INFO` level, setting the
+`LEVEL` of this logger to `WARN` or above will result in no access logs.
+
 NB: You can redirect the access logger to send its events to the Gitea
 log using the value: `ACCESS = ,`
 
diff --git a/modules/setting/log.go b/modules/setting/log.go
index e7a465800694..5ffb2479ddbe 100644
--- a/modules/setting/log.go
+++ b/modules/setting/log.go
@@ -261,9 +261,12 @@ func newLogService() {
 			continue
 		}
 
-		sec, err := Cfg.GetSection("log." + name)
+		sec, err := Cfg.GetSection("log." + name + ".default")
 		if err != nil {
-			sec, _ = Cfg.NewSection("log." + name)
+			sec, err = Cfg.GetSection("log." + name)
+			if err != nil {
+				sec, _ = Cfg.NewSection("log." + name)
+			}
 		}
 
 		provider, config, levelName := generateLogConfig(sec, name, options)