@Canapin non abbiamo visto alcuna documentazione che indichi che questa impostazione sia correlata all’e-mail… è utile sapere dove si trova, comunque @Heliosurge, grazie per averla indicata.
Un altro giorno senza digest creati. Abbiamo pubblicato un nuovo argomento per attivare le cose nelle ultime 24 ore e niente…
Qualcuno ha altre idee qui? Ci manca un log da qualche parte? Qualcosa sta fallendo da qualche parte che possiamo vedere e correggere?
Pensando nisso, estamos assumindo que o problema está relacionado ao número de usuários no sistema. O estranho é que isso não mudou em mais de 10 desde o lançamento no discourse.
Temos aproximadamente:
1 milhão de usuários ativos
2,4 milhões de usuários desativados
Talvez haja algum timeout estranho ocorrendo quando o sistema faz essa consulta? Onde veríamos essa saída se falhar?
Novamente, parece estranho que esse seja o problema, já que os resumos estavam sendo enviados, pelo menos em uma quantidade limitada há uma ou duas semanas.
Forse, o qualcos’altro che rende il digest vuoto, quindi non inviato agli utenti.
Non so come viene creato un digest. Non so se tiene conto delle categorie ignorate dall’utente, o cose del genere.
Suppongo che i tuoi utenti non riceveranno il digest se lo invii manualmente tramite la console rails?
user = User.find_by(username: 'user-name')
Jobs.enqueue(:user_email, type: :digest, user_id: user.id)
Pochi secondi dopo aver eseguito questo, dovresti vedere i job elaborati da Sidekiq aumentare di 1, ma se hai un forum di grandi dimensioni potrebbero esserci molti job Sidekiq in qualsiasi momento, quindi potrebbe essere difficile vedere se è aumentato.
Puoi usare il pulsante Live Poll per vederlo in tempo reale:
Dal mio test, se eseguo lo script rails per inviare il digest a un utente, ma il digest è vuoto:
perché l’utente lo ha ricevuto in precedenza
o ha disabilitato i riepiloghi via email nel suo profilo
ecc…
Allora il numero di job elaborati da Sidekiq aumenterà di uno, ma nessuna email verrà inviata e non ci sarà alcuna nuova voce in /admin/email/sent.
Forse potresti registrare i job Sidekiq elaborati per vedere se c’è qualche indizio. Ho cercato un po’, ma non sono sicuro che registri quali job sono stati elaborati per impostazione predefinita.
Sento che c’è una spiegazione logica e valida per cui gli utenti non ricevono il digest. Il job potrebbe essere elaborato, ma il digest potrebbe essere vuoto, il che spiegherebbe perché non c’è traccia di esso.
Controllerei di nuovo attentamente tutte le impostazioni degli utenti interessati, i loro livelli di notifica, le loro categorie tracciate e cose del genere.
Sarebbe abbastanza facile aggiungere output di debug alla macchina di invio del digest.
Hai a disposizione un sito di staging, dove si può testare senza compromettere la tua istanza di produzione?
Lì, si potrebbe verificare se si verificano timeout nelle query, ad esempio. Naivamente, mi aspetterei che i timeout siano visualizzati nei log.
Si potrebbe inoltre migliorare la query che costruisce le persone target con output statistici.
Tutto ciò non è difficile in un ambiente sandboxed, ma può essere pericoloso in produzione.