시스템에 의해 사이트 설정이 업데이트될 때 관리자에게 알림

내가 알지 못하는 변경 사항이 있었다면 (있었다고 생각하지는 않지만), 이 기능 요청에 강력히 찬성합니다.

디스크 공간이 일시적으로 부족할 때 이 문제를 여러 번 겪었습니다.

매번 우연히 해당 설정이 비활성화되어 있다는 사실을 알게 되었습니다. 디스크 공간 임계값에 도달했을 때 설정 변경 사항을 확인해야 한다는 생각조차 하지 못했습니다. 심지어 이 문제를 여러 번 경험한 후에도요.

한 해 전에 디스크 공간이 부족해졌을 뿐이라는 이유로, 관리자가 이를 인지하지 못한 채 이 설정이 비활성화된 사례가 실제로 많이 있을 것이라고 확신합니다.

해당 설정 변경 사항은 /admin/logs/staff_action_logs?filters=%7B"subject"%3A"download_remote_images_to_local"%7D에 기록되지만, 트리거가 발생했을 때 알림을 받은 기억이 없습니다.

이상적으로는 대시보드에 최소한 경고가 표시되거나, 사용자 메뉴에 알림이 뜨거나, 이메일을 받는 것이 좋겠습니다.

아래 인용문의 맥락은 꽤 구체적이고 오래되었지만, 이 경우에도 적용됩니다.

@system에 의해 설정이 변경될 때 어떤 형태의 알림도 없는 것은 해로울 수 있습니다.


download_remote_images_to_local이 어느 시점에 비활성화되었음을 알게 되면, 원격 파일을 다운로드하도록 트리거하기 위해 다음 레일스 스크립트 중 하나(또는 한 번만 둘 다)를 실행합니다:

주어진 날짜 이후의 모든 게시글 다시 생성(Rebake)

i = 0
Post.where('created_at >= ?', Date.new(2023, 5, 1)).where('user_id > 0').find_each do |post|
  post.rebake!
  puts "Post #{post.id}, Created at #{post.created_at}"
  i += 1
end

puts "Total number of posts rebaked: #{i}"

두 주어진 날짜 사이의 모든 게시글 다시 생성(Rebake)

i = 0
Post.where('created_at >= ? AND created_at < ?', Date.new(2021, 12, 1), Date.new(2022, 3, 1)).where('user_id > 0').find_each do |post|
  post.rebake!
  puts "Post #{post.id}, Created at #{post.created_at}"
  i += 1
end

puts "Total number of posts rebaked: #{i}"
3개의 좋아요