관리자 설정 자동 백업

Discourse 사이트의 자동 백업을 위한 방법이 있으며(Configure automatic backups for Discourse), 관리자 설정을 YAML 파일로 백업하는 방법도 있습니다(Administrative Bulk Operations).

관리자 패널에 관리자 설정을 자동으로 백업할 수 있는 설정 항목이 있으면 좋겠습니다. 특히 새로운 설정이 변경될 때마다 자동으로 백업이 이루어진다면 더 좋겠죠.

이 설정들을 저장하는 데이터베이스 테이블(여기에서 설명: Backup only Site Settings - #2 by dax)이 존재한다는 것을 알고 있으며, 이는 전체 사이트 백업에 포함된다고 합니다. 그러나 여기에서 설명된 바와 같이(How can I import/export settings into a file? - #4 by codinghorror) YAML 파일 출력 사본을 백업 파일로 자동으로 저장할 수 있다면 훨씬 편리할 것입니다. 이는 이미 처리되고 있는 container/app.yml과 유사한 방식이 될 것입니다.

즉, 설정이 변경될 때마다 로그가 기록되고, 누가 변경했는지, 그리고 이전 값과 새로운 값이 무엇이었는지 확인할 수 있는 기능이 필요하다는 말씀이시죠?

/admin/logs/staff_action_logs와 다른 무언가를 원하시나요?

2개의 좋아요

네, 변경 사항이 발생할 때마다 내보낸 설정 파일 전체의 백업을 가져두는 것입니다.

이러한 기능은 다른 시스템에서도 확인해 본 적이 있는데, 실제로 제 홈 라우터에도 이 기능이 있습니다. 변경 사항이 있을 때마다 설정 파일의 백업을 생성하고, 몇 개의 백업을 유지할지 및 얼마나 오래 보관할지 설정할 수 있습니다. Discourse 웹사이트의 나머지 부분이 이미 백업되는 방식과 유사하지만, 관리 설정 내보내기 파일을 깔끔하게 가져올 수는 없습니다.

1개의 좋아요

1년 전에 설정을 변경했다가 되돌리려 하면, 제안하신 방법은 다른 모든 설정을 초기화해 버립니다. 현재 구현 방식은 개별 설정 항목별로 과거에 설정된 어떤 값이든 복원할 수 있도록 합니다.

설정 덤프 파일로는 무엇을 하려 합니까? 어떤 문제를 해결하고 싶으신가요?

1개의 좋아요

알려진 설정 구성으로 빠르고 쉽게 롤백할 수 있습니다

제 가정용 라우터도 실제로 이 기능을 지원하며 매우 편리합니다. 설정을 변경할 때마다 타임스탬프가 포함된 새 파일이 생성되고, 이전 구성 파일 중 일정한 수량이 유지됩니다. 저는 보통 50개의 이전 구성을 저장하도록 설정해 두고 있습니다.

이 방식은 모든 설정을 롤백할 수 있도록 합니다. 여러 설정을 한 번에 롤백하려는 경우는 가장자리 사례(edge case)에 해당할 수 있지만, 그런 상황을 상상하기는 여전히 어렵습니다.

1개의 좋아요

의도는 사이트 전체를 이전에 확인된 정상적인 설정으로 되돌리는 것입니다.

1개의 좋아요