diff options
author | 2023-02-17 12:02:29 +0100 | |
---|---|---|
committer | 2023-02-17 12:02:29 +0100 | |
commit | 68e6d08c768b789987a753d42f66caf73ce10ee1 (patch) | |
tree | 1c9eb6da6c326266d653de80684c3aec58922638 /internal/text/goldmark_extension.go | |
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 'internal/text/goldmark_extension.go')
-rw-r--r-- | internal/text/goldmark_extension.go | 31 |
1 files changed, 15 insertions, 16 deletions
diff --git a/internal/text/goldmark_extension.go b/internal/text/goldmark_extension.go index 11e4fde28..419410e97 100644 --- a/internal/text/goldmark_extension.go +++ b/internal/text/goldmark_extension.go @@ -53,9 +53,11 @@ type emoji struct { Segment text.Segment } -var kindMention = ast.NewNodeKind("Mention") -var kindHashtag = ast.NewNodeKind("Hashtag") -var kindEmoji = ast.NewNodeKind("Emoji") +var ( + kindMention = ast.NewNodeKind("Mention") + kindHashtag = ast.NewNodeKind("Hashtag") + kindEmoji = ast.NewNodeKind("Emoji") +) func (n *mention) Kind() ast.NodeKind { return kindMention @@ -106,14 +108,11 @@ func newEmoji(s text.Segment) *emoji { } // mentionParser and hashtagParser fulfil the goldmark parser.InlineParser interface. -type mentionParser struct { -} +type mentionParser struct{} -type hashtagParser struct { -} +type hashtagParser struct{} -type emojiParser struct { -} +type emojiParser struct{} func (p *mentionParser) Trigger() []byte { return []byte{'@'} @@ -239,7 +238,7 @@ func (r *customRenderer) renderMention(w mdutil.BufWriter, source []byte, node a n, ok := node.(*mention) // this function is only registered for kindMention if !ok { - log.Errorf("type assertion failed") + log.Panic(nil, "type assertion failed") } text := string(n.Segment.Value(source)) @@ -247,7 +246,7 @@ func (r *customRenderer) renderMention(w mdutil.BufWriter, source []byte, node a // we don't have much recourse if this fails if _, err := w.WriteString(html); err != nil { - log.Errorf("error writing HTML: %s", err) + log.Errorf(nil, "error writing HTML: %s", err) } return ast.WalkSkipChildren, nil } @@ -259,7 +258,7 @@ func (r *customRenderer) renderHashtag(w mdutil.BufWriter, source []byte, node a n, ok := node.(*hashtag) // this function is only registered for kindHashtag if !ok { - log.Errorf("type assertion failed") + log.Panic(nil, "type assertion failed") } text := string(n.Segment.Value(source)) @@ -268,7 +267,7 @@ func (r *customRenderer) renderHashtag(w mdutil.BufWriter, source []byte, node a _, err := w.WriteString(html) // we don't have much recourse if this fails if err != nil { - log.Errorf("error writing HTML: %s", err) + log.Errorf(nil, "error writing HTML: %s", err) } return ast.WalkSkipChildren, nil } @@ -281,7 +280,7 @@ func (r *customRenderer) renderEmoji(w mdutil.BufWriter, source []byte, node ast n, ok := node.(*emoji) // this function is only registered for kindEmoji if !ok { - log.Errorf("type assertion failed") + log.Panic(nil, "type assertion failed") } text := string(n.Segment.Value(source)) shortcode := text[1 : len(text)-1] @@ -289,7 +288,7 @@ func (r *customRenderer) renderEmoji(w mdutil.BufWriter, source []byte, node ast emoji, err := r.f.db.GetEmojiByShortcodeDomain(r.ctx, shortcode, "") if err != nil { if err != db.ErrNoEntries { - log.Errorf("error getting local emoji with shortcode %s: %s", shortcode, err) + log.Errorf(nil, "error getting local emoji with shortcode %s: %s", shortcode, err) } } else if *emoji.VisibleInPicker && !*emoji.Disabled { listed := false @@ -306,7 +305,7 @@ func (r *customRenderer) renderEmoji(w mdutil.BufWriter, source []byte, node ast // we don't have much recourse if this fails if _, err := w.WriteString(text); err != nil { - log.Errorf("error writing HTML: %s", err) + log.Errorf(nil, "error writing HTML: %s", err) } return ast.WalkSkipChildren, nil } |