Refactor mlog
- simplify mlog by removing redundant code
- remove Zap dependency
- update unit test helpers
- update logging config
- update auditing
Этот коммит содержится в:
Doug Lauder
2021-08-17 16:08:04 -04:00
коммит произвёл GitHub
родитель 04b27ce93c
Коммит a4507327a7
216 изменённых файлов: 4940 добавлений и 14674 удалений

Просмотреть файл

@@ -45,6 +45,8 @@ type TestHelper struct {
tempWorkspace string
IncludeCacheLayer bool
TestLogger *mlog.Logger
}
func SetupWithStoreMock(tb testing.TB) *TestHelper {
@@ -52,7 +54,7 @@ func SetupWithStoreMock(tb testing.TB) *TestHelper {
tb.SkipNow()
}
th := setupTestHelper(false)
th := setupTestHelper(tb, false)
emptyMockStore := mocks.Store{}
emptyMockStore.On("Close").Return(nil)
th.App.Srv().Store = &emptyMockStore
@@ -65,10 +67,10 @@ func Setup(tb testing.TB) *TestHelper {
}
store := mainHelper.GetStore()
store.DropAllTables()
return setupTestHelper(true)
return setupTestHelper(tb, true)
}
func setupTestHelper(includeCacheLayer bool) *TestHelper {
func setupTestHelper(tb testing.TB, includeCacheLayer bool) *TestHelper {
memoryStore := config.NewTestMemoryStore()
newConfig := memoryStore.Get().Clone()
*newConfig.AnnouncementSettings.AdminNoticesEnabled = false
@@ -79,7 +81,14 @@ func setupTestHelper(includeCacheLayer bool) *TestHelper {
options = append(options, app.ConfigStore(memoryStore))
options = append(options, app.StoreOverride(mainHelper.Store))
mlog.DisableZap()
testLogger, _ := mlog.NewLogger()
logCfg, _ := config.MloggerConfigFromLoggerConfig(&newConfig.LogSettings, nil, config.GetLogFileLocation)
if errCfg := testLogger.ConfigureTargets(logCfg); errCfg != nil {
panic("failed to configure test logger: " + errCfg.Error())
}
// lock logger config so server init cannot override it during testing.
testLogger.LockConfiguration()
options = append(options, app.SetLogger(testLogger))
s, err := app.NewServer(options...)
if err != nil {
@@ -129,6 +138,7 @@ func setupTestHelper(includeCacheLayer bool) *TestHelper {
Server: s,
Web: web,
IncludeCacheLayer: includeCacheLayer,
TestLogger: testLogger,
}
return th