summaryrefslogtreecommitdiff
path: root/internal/web/rss.go
diff options
context:
space:
mode:
authorLibravatar Daenney <daenney@users.noreply.github.com>2023-02-17 12:02:29 +0100
committerLibravatar GitHub <noreply@github.com>2023-02-17 12:02:29 +0100
commit68e6d08c768b789987a753d42f66caf73ce10ee1 (patch)
tree1c9eb6da6c326266d653de80684c3aec58922638 /internal/web/rss.go
parent[bugfix] Set 'discoverable' properly on API accounts (#1511) (diff)
downloadgotosocial-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 'internal/web/rss.go')
-rw-r--r--internal/web/rss.go12
1 files changed, 7 insertions, 5 deletions
diff --git a/internal/web/rss.go b/internal/web/rss.go
index 757c3ffb5..dccb49542 100644
--- a/internal/web/rss.go
+++ b/internal/web/rss.go
@@ -61,14 +61,16 @@ func (m *Module) GetRSSETag(urlPath string, lastModified time.Time, getRSSFeed f
return eTag, nil
}
-func extractIfModifiedSince(header string) time.Time {
- if header == "" {
+func extractIfModifiedSince(r *http.Request) time.Time {
+ hdr := r.Header.Get(ifModifiedSinceHeader)
+
+ if hdr == "" {
return time.Time{}
}
- t, err := http.ParseTime(header)
+ t, err := http.ParseTime(hdr)
if err != nil {
- log.Errorf("couldn't parse if-modified-since %s: %s", header, err)
+ log.Errorf(r.Context(), "couldn't parse if-modified-since %s: %s", hdr, err)
return time.Time{}
}
@@ -95,7 +97,7 @@ func (m *Module) rssFeedGETHandler(c *gin.Context) {
}
ifNoneMatch := c.Request.Header.Get(ifNoneMatchHeader)
- ifModifiedSince := extractIfModifiedSince(c.Request.Header.Get(ifModifiedSinceHeader))
+ ifModifiedSince := extractIfModifiedSince(c.Request)
getRssFeed, accountLastPostedPublic, errWithCode := m.processor.AccountGetRSSFeedForUsername(ctx, username)
if errWithCode != nil {