diff options
| author | 2023-02-17 12:02:29 +0100 | |
|---|---|---|
| committer | 2023-02-17 12:02:29 +0100 | |
| commit | 68e6d08c768b789987a753d42f66caf73ce10ee1 (patch) | |
| tree | 1c9eb6da6c326266d653de80684c3aec58922638 /testrig | |
| parent | [bugfix] Set 'discoverable' properly on API accounts (#1511) (diff) | |
| download | gotosocial-68e6d08c768b789987a753d42f66caf73ce10ee1.tar.xz | |
[feature] Add a request ID and include it in logs (#1476)
This adds a lightweight form of tracing to GTS. Each incoming request is
assigned a Request ID which we then pass on and log in all our log
lines. Any function that gets called downstream from an HTTP handler
should now emit a requestID=value pair whenever it logs something.
Co-authored-by: kim <grufwub@gmail.com>
Diffstat (limited to 'testrig')
| -rw-r--r-- | testrig/db.go | 62 | ||||
| -rw-r--r-- | testrig/log.go | 4 | ||||
| -rw-r--r-- | testrig/transportcontroller.go | 4 | 
3 files changed, 35 insertions, 35 deletions
diff --git a/testrig/db.go b/testrig/db.go index 65ec391a7..8479347eb 100644 --- a/testrig/db.go +++ b/testrig/db.go @@ -93,7 +93,7 @@ func NewTestDB() db.DB {  	testDB, err := bundb.NewBunDBService(context.Background(), &state)  	if err != nil { -		log.Panic(err) +		log.Panic(nil, err)  	}  	state.DB = testDB @@ -106,7 +106,7 @@ func CreateTestTables(db db.DB) {  	ctx := context.Background()  	for _, m := range testModels {  		if err := db.CreateTable(ctx, m); err != nil { -			log.Panicf("error creating table for %+v: %s", m, err) +			log.Panicf(nil, "error creating table for %+v: %s", m, err)  		}  	}  } @@ -121,7 +121,7 @@ func CreateTestTables(db db.DB) {  // verification will fail.  func StandardDBSetup(db db.DB, accounts map[string]*gtsmodel.Account) {  	if db == nil { -		log.Panic("db setup: db was nil") +		log.Panic(nil, "db setup: db was nil")  	}  	CreateTestTables(db) @@ -130,164 +130,164 @@ func StandardDBSetup(db db.DB, accounts map[string]*gtsmodel.Account) {  	for _, v := range NewTestTokens() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestClients() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestApplications() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestBlocks() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestReports() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestDomainBlocks() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestInstances() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestUsers() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	if accounts == nil {  		for _, v := range NewTestAccounts() {  			if err := db.Put(ctx, v); err != nil { -				log.Panic(err) +				log.Panic(nil, err)  			}  		}  	} else {  		for _, v := range accounts {  			if err := db.Put(ctx, v); err != nil { -				log.Panic(err) +				log.Panic(nil, err)  			}  		}  	}  	for _, v := range NewTestAttachments() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestStatuses() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestEmojis() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestEmojiCategories() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestStatusToEmojis() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestTags() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestStatusToTags() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestMentions() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestFaves() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestFollows() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestNotifications() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestTombstones() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	for _, v := range NewTestBookmarks() {  		if err := db.Put(ctx, v); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  	if err := db.CreateInstanceAccount(ctx); err != nil { -		log.Panic(err) +		log.Panic(nil, err)  	}  	if err := db.CreateInstanceInstance(ctx); err != nil { -		log.Panic(err) +		log.Panic(nil, err)  	} -	log.Debug("testing db setup complete") +	log.Debug(nil, "testing db setup complete")  }  // StandardDBTeardown drops all the standard testing tables/models from the database to ensure it's clean for the next test.  func StandardDBTeardown(db db.DB) {  	ctx := context.Background()  	if db == nil { -		log.Panic("db teardown: db was nil") +		log.Panic(nil, "db was nil")  	}  	for _, m := range testModels {  		if err := db.DropTable(ctx, m); err != nil { -			log.Panic(err) +			log.Panic(nil, err)  		}  	}  } diff --git a/testrig/log.go b/testrig/log.go index 2d7911484..cd61aced4 100644 --- a/testrig/log.go +++ b/testrig/log.go @@ -29,7 +29,7 @@ import (  func InitTestLog() {  	// Set the global log level from configuration  	if err := log.ParseLevel(config.GetLogLevel()); err != nil { -		log.Panicf("error parsing log level: %v", err) +		log.Panicf(nil, "error parsing log level: %v", err)  	}  	if config.GetSyslogEnabled() { @@ -38,7 +38,7 @@ func InitTestLog() {  			config.GetSyslogProtocol(),  			config.GetSyslogAddress(),  		); err != nil { -			log.Panicf("error enabling syslogging: %v", err) +			log.Panicf(nil, "error enabling syslogging: %v", err)  		}  	}  } diff --git a/testrig/transportcontroller.go b/testrig/transportcontroller.go index 09775f6a2..7565a741c 100644 --- a/testrig/transportcontroller.go +++ b/testrig/transportcontroller.go @@ -203,7 +203,7 @@ func NewMockHTTPClient(do func(req *http.Request) (*http.Response, error), relat  			responseContentLength = 0  		} -		log.Debugf("returning response %s", string(responseBytes)) +		log.Debugf(nil, "returning response %s", string(responseBytes))  		reader := bytes.NewReader(responseBytes)  		readCloser := io.NopCloser(reader)  		return &http.Response{ @@ -296,7 +296,7 @@ func WebfingerResponse(req *http.Request) (responseCode int, responseBytes []byt  	}  	if wfr == nil { -		log.Debugf("webfinger response not available for %s", req.URL) +		log.Debugf(nil, "webfinger response not available for %s", req.URL)  		responseCode = http.StatusNotFound  		responseBytes = []byte(`{"error":"not found"}`)  		responseContentType = applicationJSON  | 
