Após reconstruir, fotos de avatar estão faltando

Reconstruí a partir da linha de comando ontem e hoje notei que muitas imagens de avatar de usuário estão faltando (semelhante a este tópico em 2019).

Tentei executar rake avatars:refresh, mas o problema persiste.

1 curtida

Ainda é um problema 2 dias depois?

1 curtida

@codinghorror Sim, até o discobot:

Basicamente afeta todos os usuários que carregaram uma imagem (não usando gravatar) há dois anos, antes de eu mudar de uploads locais para S3. Por algum motivo, só quebrou após a última compilação.

Em algum momento, os uploads mudaram de uploads para uploads/default. Estou tendo um problema um pouco diferente com isso em outro site que está relacionado a isso.

Você olharia no banco de dados o URL desses uploads quebrados. . . e algo. Não tenho certeza. Se ao menos eu estivesse em Barcelona.

2 curtidas

Obrigado, Jay. Estamos chegando mais perto. Verifiquei quatro URLs de avatar e notei que as URLs das duas que funcionam e das duas que não funcionam (em azul) começam com domínios diferentes:

As URLs reais que vejo no site são diferentes, no entanto:

https://MY_DOMAIN/user_avatar/MY_DOMAIN/USERNAME/75/USER_ID_2.png

Gostaria de tentar substituir o prefixo antes de .amazonaws.com, mas não tenho certeza se é uma boa ideia (ou como fazer isso).

Caso seja relevante, também estou usando o Cloudfront como CDN do S3.

1 curtida

Esse domínio azul é o que usamos em nossa hospedagem. Você já se afastou de nossa hospedagem em algum momento? Se sim, você deve atualizar isso para refletir seu novo bucket.

3 curtidas

Sim, deve ser isso.

Mas como e o que exatamente devo mudar? Como as imagens não estão mais acessíveis, não consigo reenviá-las. Ou talvez eu possa obtê-las de um backup antigo e reenviá-las pela API.

1 curtida

Ao mover buckets, você precisa executar um remap com Replace a string in all posts.

Claro, você precisa que os arquivos estejam no novo bucket primeiro :sweat_smile:. Se eles estiverem em um backup antigo que você tenha, você deve sincronizá-los com o bucket.

3 curtidas

Apenas hipoteticamente, :sweat_smile: tenho outra opção se não tiver um backup desses ativos do S3? Estou tendo problemas para encontrá-lo.

O discourse-cloud-file-uploads guarda versões/cache em algum lugar?

1 curtida

Mantemos esses arquivos durante as assinaturas ativas e apenas por alguns dias após o cancelamento.

1 curtida

Obrigado, Rafael.

  1. Se ao extrair um dos meus backups antigos eu vir apenas um arquivo dump.sql, isso significa que ele não inclui uploads? Tenho quase certeza de que tive a configuração backup com uploads, já que ela está ativada por padrão.

  2. Posso ver que tenho quase 10 GB de arquivos enviados (no painel do administrador). Existe uma maneira de acessá-los pela linha de comando? Procurei em /var/discourse/shared/standalone/uploads/, mas ele ocupa apenas 11 MB.

  3. Existe algum outro lugar onde eu possa procurar ou devo considerar esses arquivos perdidos para sempre?

Existe uma configuração de site backup with uploads. Você pode tentar isso.

1 curtida

Obrigado, Jay.

Eu já tinha essa configuração ativada em 2019, quando meus usuários fizeram o upload de seus avatares. Em seguida, mudei para o S3 em 2020 e, na semana passada, todos os avatares de 2019 foram perdidos. Estou tentando encontrar uma maneira de recuperá-los porque meus backups antigos parecem ser apenas arquivos dump.sql sem uploads.

Desculpe, perdi o contexto da sua mensagem ao responder. Acho que o painel está se referindo aos uploads do S3, não a arquivos locais.

Se esses avatares estavam no bucket S3 do discourse.org, então eles se foram. Se você migrou deles e obteve um backup depois de cancelar sua conta, você teria um backup completo com os uploads. Você tem algum backup que seja maior e/ou arquivos .tar.gz?

Parece que você estava apontando para os ativos do discourse.org e eles se foram.

O maior backup de 2019 que tenho é de 59 MB, mas quando o extraio, obtenho apenas um arquivo dump.sql de 217 MB :sweat_smile:

Lamento muito. Parece que migrou de discourse.org sem obter seus uploads.

1 curtida

Lição aprendida. :sweat_smile: De qualquer forma, obrigado.

1 curtida