mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[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>
This commit is contained in:
@@ -102,6 +102,9 @@ func (m *Module) getAssetETag(filePath string, fs http.FileSystem) (string, erro
|
||||
// package along with the other middlewares
|
||||
func (m *Module) assetsCacheControlMiddleware(fs http.FileSystem) gin.HandlerFunc {
|
||||
return func(c *gin.Context) {
|
||||
// Acquire context from gin request.
|
||||
ctx := c.Request.Context()
|
||||
|
||||
// set this Cache-Control header to instruct clients to validate the response with us
|
||||
// before each reuse (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control)
|
||||
c.Header(cacheControlHeader, cacheControlNoCache)
|
||||
@@ -118,7 +121,7 @@ func (m *Module) assetsCacheControlMiddleware(fs http.FileSystem) gin.HandlerFun
|
||||
// either fetch etag from ttlcache or generate it
|
||||
eTag, err := m.getAssetETag(assetFilePath, fs)
|
||||
if err != nil {
|
||||
log.Errorf("error getting ETag for %s: %s", assetFilePath, err)
|
||||
log.Errorf(ctx, "error getting ETag for %s: %s", assetFilePath, err)
|
||||
return
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user