forked from tangled.org/core
Monorepo for Tangled

jetstream: configure logging dids added to in-memory filter

Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>

authored by anirudh.fi and committed by Tangled 4912e8ec b8d38fa2

Changed files
+13 -3
appview
state
jetstream
knotserver
+4
appview/state/state.go
··· 95 95 slog.Default(), 96 96 wrapper, 97 97 false, 98 + 99 + // in-memory filter is inapplicalble to appview so 100 + // we'll never log dids anyway. 101 + false, 98 102 ) 99 103 if err != nil { 100 104 return nil, fmt.Errorf("failed to create jetstream client: %w", err)
+7 -2
jetstream/jetstream.go
··· 29 29 ident string 30 30 l *slog.Logger 31 31 32 + logDids bool 32 33 wantedDids Set[string] 33 34 db DB 34 35 waitForDid bool ··· 43 44 return 44 45 } 45 46 46 - j.l.Info("adding did to in-memory filter", "did", did) 47 + if j.logDids { 48 + j.l.Info("adding did to in-memory filter", "did", did) 49 + } 47 50 j.mu.Lock() 48 51 j.wantedDids[did] = struct{}{} 49 52 j.mu.Unlock() ··· 67 70 } 68 71 } 69 72 70 - func NewJetstreamClient(endpoint, ident string, collections []string, cfg *client.ClientConfig, logger *slog.Logger, db DB, waitForDid bool) (*JetstreamClient, error) { 73 + func NewJetstreamClient(endpoint, ident string, collections []string, cfg *client.ClientConfig, logger *slog.Logger, db DB, waitForDid, logDids bool) (*JetstreamClient, error) { 71 74 if cfg == nil { 72 75 cfg = client.DefaultClientConfig() 73 76 cfg.WebsocketURL = endpoint ··· 80 83 db: db, 81 84 l: logger, 82 85 wantedDids: make(map[string]struct{}), 86 + 87 + logDids: logDids, 83 88 84 89 // This will make the goroutine in StartJetstream wait until 85 90 // j.wantedDids has been populated, typically using addDids.
+1
knotserver/config/config.go
··· 19 19 DBPath string `env:"DB_PATH, default=knotserver.db"` 20 20 Hostname string `env:"HOSTNAME, required"` 21 21 JetstreamEndpoint string `env:"JETSTREAM_ENDPOINT, default=wss://jetstream1.us-west.bsky.network/subscribe"` 22 + LogDids bool `env:"LOG_DIDS, default=true"` 22 23 23 24 // This disables signature verification so use with caution. 24 25 Dev bool `env:"DEV, default=false"`
+1 -1
knotserver/server.go
··· 75 75 jc, err := jetstream.NewJetstreamClient(c.Server.JetstreamEndpoint, "knotserver", []string{ 76 76 tangled.PublicKeyNSID, 77 77 tangled.KnotMemberNSID, 78 - }, nil, logger, db, true) 78 + }, nil, logger, db, true, c.Server.LogDids) 79 79 if err != nil { 80 80 logger.Error("failed to setup jetstream", "error", err) 81 81 }