게시물이 있는 사용자의 웹훅에서 post_count가 0으로 표시됩니다

이벤트 "user_logged_in"에 웹훅이 설정되어 있습니다. 페이로드에는 방금 로그인한 사용자의 post_count 속성이 포함되어 있습니다. 해당 사용자가 2개의 글을 작성했음에도 불구하고 페이로드에는 post_count: 0으로 표시됩니다. 이는 버그로 보입니다.

웹훅 수신 측에서는 이 사용자 통계를 기반으로 후속 처리 방식을 결정해야 합니다.

유사한 주제로는 이 게시물을 찾을 수 있었으며, 관련이 있을 수 있지만 동일한 API에 대해 다루고 있지는 않습니다: Category post_count not incrementing

자정을 바로잡겠습니다: post_count가 항상 0인 것은 아닙니다. 내 계정으로 확인했을 때 post_count 값은 합리적이었습니다(정확한지는 알 수 없습니다).

하지만 우리 사이트에는 다음 조건이 성립하는 사용자가 있습니다. 편의상 사용자 #1234라고 부르겠습니다:

  • SELECT * FROM posts WHERE user_id=1234 쿼리는 테이블에서 두 개의 항목을 반환합니다. 이 게시글들은 해당 사용자의 프로필 활동 페이지에도 나열되어 있습니다.
  • 이 사용자가 로그인하거나 로그아웃할 때 웹훅 페이로드에는 "post_count": 0이 포함되어 있습니다.

안녕하세요 @dpb,

테스트해 보니 게시글 수가 실시간으로 업데이트되지 않는 것을 확인했습니다.

추측컨대 주기적으로 이를 처리하는 Sidekiq 작업이 있을 것 같은데, 어느 작업인지 모르겠습니다.
관련된 특정 Sidekiq 작업이 없는 것 같습니다 :thinking:
하지만 이 통계는 하루에 최소 한 번은 업데이트된다는 내용을 읽었습니다.

다만 https://your-discourse.org/u/username.json 에 대한 GET 요청을 보내면 올바른 수치가 반환됩니다.

신뢰할 수 있는 수치가 필요하시다면, 웹훅 페이로드를 받은 후 해당 요청을 보내시면 됩니다.

@Canapin 님, API에 대한 GET 요청을 제안해 주셔서 감사합니다.

글쎄요, 우리 경우라면 그 게시물들은 이미 한 달 이상 지난 상태입니다.

아마도 이 숫자를 업데이트하는 컴포넌트가 어떤 업데이트 중 임의의 시점에 작동이 멈춘 것이 아닐까요?

테스트해 보았는데, 이것도 작동하지 않습니다. 동일한 정보가 포함되어 있습니다: post_count: 0

아마도 "topics"와 "posts"에 대한 혼동이 있는 것 같습니다. 새로운 토픽을 만드는 것은 단순히 게시물의 특수한 유형이라고 생각했습니다. 데이터베이스 구조도 이를 뒷받침합니다.
하지만 사용자 프로필 통계를 확인해 보면 "생성된 토픽 2개, 생성된 게시물 0개"와 같은 내용을 표시하고 있습니다.
그러므로 제가 받는 "post_count"가 모든 게시물의 수가 아니라 _토픽에 대한 답변 수_를 의미하는 것은 아닌지 궁금합니다.
한편, 마지막 토픽이 생성된 날짜를 포함하는 "last_posted_at"이라는 날짜 필드가 있습니다. 따라서 적어도 여기에는 명명상의 일관성이 부족합니다. "post_count"에는 새로운 토픽의 첫 게시물도 포함되기를 기대했습니다.

어쨌든 이것이 의도된 동작인지 아닌지, 사용자 json에서 topic_count나 이와 유사한 필드를 찾을 수 없습니다. 새로운 토픽을 포함한 게시물의 총 개수를 어떻게 확인할 수 있을까요?

제 json 지식은 아직 초보 수준이지만 https://meta.discourse.org/u/dpb/summary.json에서 topic_count를 볼 수 있습니다.