Vasiliy
(Vasiliy Zukanov)
8월 4, 2020, 11:16오전
1
새로운 포럼을 출시하기 위해 준비 중입니다. DigitalOcean에서 자체 호스팅된 Discourse(2.6.0.beta1)를 사용하고 있습니다(참고로, 이렇게 좋은 도구를 무료로 제공해 주셔서 여전히 놀랍습니다). 처음에는 모든 것이 잘 작동했고, 모든 사용자(저를 포함하여)에게 아바타가 표시되었습니다.
그런데 특정 시점에, 포럼 설정을 변경하지 않은 상태에서 브라우저에서 페이지를 새로고침했을 때 아바타가 더 이상 표시되지 않았습니다.
현재 토픽 목록은 다음과 같이 보입니다:
흥미롭게도, 토픽을 열면 "상태 바"에는 아바타가 표시됩니다:
수정: 방금 시크릿 모드에서 포럼을 다시 확인해 보았습니다. 모든 아바타가 사라져 있었으므로, 어딘가에서 아바타를 본 것이 캐싱과 관련이 있었을 것으로 추정됩니다.
그러나 사용자 프로필을 열면 그곳에는 아바타가 없습니다:
다행히 이미 데이터 백업을 시작했고, 포럼에는 아직 테스터가 많지 않으므로 백업에서 복원하는 것만으로 이 문제를 해결할 수 있기를 바랍니다. 하지만 근본 원인을 파악하지 못하면 동일한 문제에 다시 직면할 수 있습니다.
제 이해로는, 이 아바타들은 Gravatar에서 가져오는 것입니다.
Discourse는 처음 사용해보는 것이라, 이 보고서에 정보가 부족하다면 미리 죄송합니다. 요청하시는 추가 정보는 언제든지 제공하겠습니다.
감사합니다
IAmGav
(Gavin Perch)
8월 4, 2020, 11:36오전
2
사용자 프로필 이미지는 그라바타(Gravatar) 계정이 있는 경우 그라바타에서 가져옵니다. 이 가져오기가 얼마나 자주 발생하는지는 정확히 알 수 없지만, 강제로 다운로드하는 방법이 있습니다.
필요하다면, 모든 사용자에게 적용하려면 다음을 실행할 수 있습니다:
./launcher enter app
rails r 'UserAvatar.find_each {|u| print "."; u.update_gravatar!}'
실행에 시간이 좀 걸립니다.
참고: Automatic updates of Gravatar avatars? - #7 by sam
Vasiliy
(Vasiliy Zukanov)
8월 4, 2020, 12:23오후
3
@IAmGav , 추천해 주셔서 감사합니다.
불행히도 해당 단계를 수행하고 30분을 기다렸지만 여전히 아바타가 표시되지 않습니다.
Vasiliy
(Vasiliy Zukanov)
8월 4, 2020, 6:23오후
4
이 문제에 몇 시간 동안 시간을 썼지만 해결책을 찾지 못했습니다. 백업에서 복원해도 도움이 되지 않았습니다
2018년에 보고된 이 문제를 발견했습니다: How to fix user avatar?
제가 파악한 바로는, 당시 문제는 Discourse의 내부 구성 요소 간 호환성 문제였습니다. 저도 비슷한 문제를 겪을 수 있을까요? 솔직히 말하면, Discourse의 문제가 훨씬 더 많은 설치 환경에 영향을 미칠 것이라 기대했지만, aforementioned 문제 역시 보고자가 단 한 명뿐이었기 때문입니다.
어떤 도움이라도 감사하겠습니다
sam
(Sam Saffron)
8월 5, 2020, 12:01오전
5
몇 가지 추천 사항:
문제 있는 이미지 중 하나의 URL을 확인해 보세요. URL 끝에 ?a를 붙여 넣으면 이미지가 정상적으로 표시됩니까?
단일 사용자를 수동으로 수정할 수 있나요 (문자로 전환, 아바타 업로드, 아바타로 전환, 아바타 새로 고침)?
이미지가 로컬에 있는 건가요, 아니면 S3에 있는 건가요?
Vasiliy
(Vasiliy Zukanov)
8월 5, 2020, 6:34오전
6
@sam
이미지는 로컬에 저장되어 있습니다. 이미지 URL 끝에 ?a를 추가해 봤지만 도움이 되지 않았습니다.
흥미롭게도, 설정 페이지에서는 제 자신의 이미지는 여전히 볼 수 있습니다(다른 사용자의 이미지는 볼 수 없습니다). URL 측면에서는 다음과 같은 일이 발생합니다:
메인 페이지에서 제 이미지의 URL은 ?a가 있어도 기본 플레이스홀더로 해석됩니다: https://forum.techyourchance.com/user_avatar/forum.techyourchance.com/vasiliy/45/2_2.png?a
설정 페이지에서 제 이미지의 URL은 올바른 이미지로 해석됩니다: https://forum.techyourchance.com/user_avatar/forum.techyourchance.com/vasiliy/120/2_2.png
단일 사용자에 대해 문제를 수정해 보려고 했습니다. 문자(Initial)로 전환한 뒤 커스텀 이미지로 바꾸고 다시 그라바타(Gravatar)로 되돌려 봤지만 작동하지 않았습니다.
제가 겪고 있는 추가적인 문제가 하나 더 있습니다. 이는 관련이 없어 보이지만, 동시에 두 개의 독립적인 문제가 발생할 확률은 매우 낮으므로 두 문제 사이에 연결고리가 있다고 의심합니다.
포럼이 더 이상 사용자에게 초대장을 보내지 않습니다(과거에는 보내졌었습니다).
여러 사용자에게 초대를 보냈지만 아무도 초대장을 받지 못했습니다. 그래서 저 자신(다른 이메일 주소)에게 초대를 보내 보았지만 이 역시 받지 못했습니다. 이제 몇 개의 대기 중인 초대 상태가 있습니다:
즉시 문제가 메일건(Mailgun) 통합이나 이메일 전달 가능성(deliverability)에 있는 것 같다고 생각하여 저 자신에게 테스트 이메일을 보내 보았는데, 즉시 도착했습니다. 전송된 이메일 페이지를 살펴보니 다음과 같은 내용이 보입니다:
포럼은 테스트 이메일은 보냈지만 초대장은 보내지 않았습니다.
이 시점에서 제 디스코르스(Discourse) 설치 환경이 완전히 망가졌다고 생각합니다. 아마도 제가 무의식적으로 무언가를 잘못했을 가능성이 큽니다. 지금 이 최악의 시기에(새로운 커뮤니티를 런칭하는 시점에) 이미 여러 시간 동안 고군분투하고 있습니다. 따라서 백업에서 복원하지 않고 디스코르스를 깨끗하게 새로 설치한 뒤 모든 사용자에게 다시 초대를 보낼 것입니다. 다행히 지금은 사용자가 많지 않고 포럼에 콘텐츠도 많지 않습니다.
혹시 더 많은 정보가 필요할 경우를 대비하여, 이전 설치 환경이 있는 드롭렛(Droplet)은 당분간 유지해 두겠습니다. 만약 살펴볼 가치가 있다고 판단하시면, SSH를 통해 접근 권한을 드리는 것도 마다하지 않겠습니다.
도움 주셔서 감사합니다. 깨끗한 설치가 잘 작동하기를 바랍니다.
neounix
(Dark Matter)
8월 5, 2020, 8:06오전
8
안녕하세요 @Vasiliy
이 문제를 해결하기 위해 완전히 새로운 인스턴스를 구축하기 전에, 잡 스케줄러(sidekiq)가 정상적으로 작동하는지, 실패한 잡이 있는지, 잡 큐가 백업되어 있는지 등을 확인해 보시는 것을 고려해 보시기 바랍니다.
your.cooldiscoursesite.com/sidekiq
단순히 생각난 것인데…
또한, 레일스 로그, 특히 에러 로그도 확인해 보시는 것이 좋습니다.
Vasiliy
(Vasiliy Zukanov)
8월 5, 2020, 9:48오전
9
@neounix
제안해 주셔서 감사합니다.
지금은 더 이상 디버깅에 시간을 쓸 수 없어서, 이미 새로운 포럼을 생성했습니다. 지금까지는 잘 작동하고 있습니다.
솔직히 로그를 확인해야 한다는 생각을 못 해서 조금 멍청하게 느껴집니다. 로그 내용을 이해할 수는 없겠지만, 리포트에 첨부했어야 했는데 그러지 못했네요. 늦었지만 나쁘지 않으니, 이제 rails 디렉터리에서 모든 로그를 첨부합니다.
로그를 grep으로 조금 검색해 보니, 실제로 몇 가지 오류 메시지가 있는 것 같습니다. 하지만 그 의미가 무엇인지, 그리고 이 문제와 관련이 있는지 이해가 되지 않습니다. 아마 더 전문적인 회원분들이 더 잘 조사해 주실 수 있을 것입니다.