데이터 보존 정책#

plans-img Enterprise 플랜 에서 사용 가능

deployment-img Cloudself-hosted 배포

Mattermost는 시스템 관리자와 최종 사용자에게 무제한 검색 기록을 제공하는 모든 메시지 기록을 저장합니다.

Mattermost Enterprise 고객은 데이터 보존 규정 요구사항을 충족하기 위해 Mattermost 채널과 다이렉트 메시지에서 메시지와 파일 업로드가 얼마나 오래 보관되는지 관리하기 위해 전역 보존 정책과 사용자 정의 보존 정책을 설정할 수 있습니다.

경고

  • 기본적으로 Mattermost는 사용자 작업에 따라 삭제된 메시지와 파일이 사용자 인터페이스에서 제거되지만 Mattermost 데이터베이스에는 유지되는 ‘소프트 삭제’ 시스템을 사용합니다.

  • 메시지나 파일이 영구적으로 삭제되면 해당 작업은 되돌릴 수 없습니다. 데이터 손실을 방지하기 위해 전역 또는 사용자 정의 데이터 보존 정책을 설정할 때 주의를 기울이는 것을 권장합니다.

전역 데이터 보존 정책 구성#

전역 데이터 보존 정책을 설정하려면:

  1. 시스템 콘솔 > 규정 준수 > 데이터 보존 정책 으로 이동합니다.

  2. 전역 보존 정책 테이블 오른쪽에 있는 메뉴에서 편집 을 선택합니다.

  3. 드롭다운에서 채널 및 다이렉트 메시지 보존 옵션을 선택하여 채널 메시지와 다이렉트 메시지에 대한 전역 보존 정책을 지정한 다음, 해당 메시지를 시간, 일 또는 연 단위로 얼마나 오래 보관할지 설정합니다. 시간이 설정되면 설정한 기간보다 오래된 메시지와 파일 첨부 파일이 삭제됩니다. 최소 보존 기간은 1시간입니다.

  4. 드롭다운에서 파일 보존 옵션을 선택합니다. 파일을 보관할 시간, 일 또는 연 단위의 수를 설정합니다. 시간이 설정되면 설정한 기간보다 오래된 업로드된 파일이 파일 저장 시스템(시스템 콘솔 > 환경 > 파일 저장소 에 지정된 대로 로컬 디스크 또는 Amazon S3 서비스)에서 삭제됩니다. 최소 보존 기간은 1시간입니다. 전역 파일 정책은 다이렉트 메시지, 비공개 또는 공개 채널에 있는지 여부에 관계없이 모든 파일을 삭제합니다.

  5. 정책 로그 섹션에서 편집 을 선택하여 일일 예약된 데이터 보존 작업의 시작 시간을 지정합니다. 시스템을 사용하는 사람이 적은 시간을 선택하세요.

저장 을 선택합니다. 설정한 기간보다 오래된 메시지와 파일은 해당되는 경우 지정된 서버 시간에 삭제됩니다.

사용자 정의 데이터 보존 정책 구성#

사용자 정의 데이터 보존 정책을 설정하려면:

  1. 시스템 콘솔 > 규정 준수 > 데이터 보존 정책 으로 이동합니다.

  2. 사용자 정의 보존 정책 테이블 오른쪽에서 정책 추가 를 선택합니다.

  3. 정책의 이름을 지정합니다.

  4. 드롭다운에서 채널 및 다이렉트 메시지 보존 옵션을 선택하여 채널 및 다이렉트 메시지에 대한 사용자 정의 보존 정책을 지정한 다음, 업로드된 파일을 일 또는 연 단위로 얼마나 오래 보관할지 설정합니다. 시간이 설정되면 설정한 기간보다 오래된 메시지와 파일 첨부 파일이 삭제됩니다. 최소 보존 기간은 1일입니다.

  5. 팀 추가 를 선택하고 특정 팀을 검색하거나 채널 추가 를 선택하고 특정 채널을 검색하여 이 정책에 팀과 채널을 할당합니다. 팀만 지정된 경우 선택한 팀의 모든 채널이 정책에 포함됩니다.

  6. 정책 로그 섹션에서 편집 을 선택하여 일일 예약된 데이터 보존 작업의 시작 시간을 지정합니다. 시스템을 사용하는 사람이 적은 시간을 선택하세요. 전역 보존 정책에 이미 시간이 설정되어 있는 경우 동일한 시간이 사용자 정의 데이터 보존 정책에도 적용됩니다.

설정을 저장합니다. 설정한 기간보다 오래된 메시지와 파일은 해당되는 경우 지정된 서버 시간에 삭제됩니다.

삭제 작업 수동 실행#

시스템 콘솔 > 규정 준수 > 데이터 보존 정책 에서 지금 삭제 작업 실행 을 선택하여 언제든지 삭제 작업을 수동으로 실행할 수도 있습니다.

참고

데이터 보존과 ElasticSearch 를 사용하는 경우, ElasticSearch 집계 검색 인덱스 설정이 데이터 보존 정책의 일수보다 큰 값으로 설정되어 있는지 확인하세요.

자주 묻는 질문(FAQ)#

메시지가 삭제되면 어떻게 되나요?#

메시지는 Mattermost 사용자 인터페이스에서 제거되고 Posts 테이블에서 삭제됩니다. 메시지는 더 이상 검색할 수 없으며 고정된 게시물이나 저장된 게시물 목록에서 검색할 수 없습니다.

메시지 기간을 초과하지 않은 답글은 여전히 사용자 인터페이스에 표시됩니다. 그러나 더 이상 답글을 작성할 수 없습니다.

메시지에 첨부 파일이 있었다면 사용자 인터페이스에서만 제거됩니다.

삭제되었다고 하는 메시지가 왜 여전히 보이나요?#

웹 및 데스크톱 앱은 게시물을 캐시합니다. 데이터 보존 작업으로 삭제된 게시물은 사용자가 캐시를 지우고 새로고침할 때까지 최종 사용자에게 표시됩니다.

파일 보존 정책으로 파일이 삭제되면 어떻게 되나요?#

첨부 파일은 Mattermost 사용자 인터페이스에서 제거되고, FileInfo 테이블에서 삭제되며, 시스템 콘솔 > 환경 > 파일 저장소 에 지정된 대로 로컬 디스크 또는 Amazon S3 서비스에서 삭제됩니다.

삭제 작업을 실행한 후에도 오래된 파일이 삭제되지 않은 이유는 무엇인가요?#

  1. 시스템 콘솔 > 규정 준수 > 데이터 보존 정책 의 삭제 작업 테이블에서 데이터 삭제가 성공적으로 이루어졌는지 확인하세요.

  2. Mattermost 저장소 디렉토리의 루트에 있는 teams/ 폴더를 삭제하세요.

이러한 파일은 여전히 Mattermost 사용자 인터페이스에서 제거됩니다.

삭제 작업 테이블에서 세부 정보 없이 Pending 이 표시되는 이유는 무엇인가요?#

이는 일반적으로 다른 데이터 보존 작업이 진행 중임을 의미합니다. 시스템 콘솔 > 규정 준수 > 데이터 보존 정책 의 삭제 작업 테이블에서 이를 확인할 수 있습니다.

모바일 앱에서 데이터 보존은 어떻게 처리되나요?#

메시지나 파일이 삭제되면 Mattermost 모바일 앱에서 더 이상 검색할 수 없습니다.

iOS 및 Android 앱의 v1.5 이상 버전에서는 보존 정책 기간을 초과하는 경우 다음과 같은 상황에서 메시지와 파일이 로컬 저장소에서 삭제됩니다:

  1. 사용자가 앱을 열 때

  2. 사용자가 앱을 백그라운드로 전환할 때

모바일 앱의 v1.4 및 이전 버전에서는 데이터 보존 정책이 활성화되어 있어도 메시지와 파일이 로컬 저장소에서 삭제되지 않습니다.

데이터 보존 작업이 실패했는지 어떻게 알 수 있나요?#

Mattermost는 시스템 콘솔 > 규정 준수 > 데이터 보존 정책 에서 각 데이터 보존 작업의 상태를 제공합니다. 여기서 작업이 성공했는지 실패했는지, 오류 세부 정보를 포함하여 확인할 수 있습니다.

또한 모든 실패는 서버 로그에 반환됩니다. 오류 로그는 Failed job 문자열로 시작하며 job_id 키/값 쌍을 포함합니다. 데이터 보존 작업 실패는 EnterpriseDataRetention 작업자 이름으로 식별됩니다. 이러한 실패를 프로그래밍 방식으로 쿼리하고 적절한 시스템에 알리는 스크립트를 선택적으로 생성할 수 있습니다.

데이터 보존 기간이 변경되면 어떻게 되나요?#

데이터 보존은 config.json 파일에 지정된 시간에 하루에 한 번 실행됩니다. 보존 기간을 변경해도 데이터 보존 작업의 추가 실행이 자동으로 예약되지 않습니다. Mattermost에서 데이터가 보존되는 기간만 업데이트됩니다.

데이터 보존 기간이 변경될 때 시스템 관리자는 알림을 받나요?#

아니요, 새 구성이 업데이트되지만 시스템 관리자는 어떤 영향이 있을지에 대한 피드백(예: 삭제될 메시지 수 보고)을 받지 못합니다.

데이터 보존 작업이 감사 테이블에 영향을 미치나요?#

v5.20 이전에는 데이터 보존이 데이터 보존 시간 구성에 해당하는 모든 사용자 활동을 삭제했습니다. v5.20부터는 감사 테이블이 데이터 보존 시간 구성에 해당하는 사용자 활동을 보존합니다.

데이터 보존 작업에 보관된 채널이 포함되나요?#

보관된 채널의 게시물과 첨부 파일은 데이터 보존 작업의 영향을 받습니다. 게시물이 데이터 보존 작업에 대해 구성된 기간을 초과하면 데이터베이스에서 삭제됩니다.

삭제 쿼리 실행에 얼마나 걸리며 서버 성능에 영향을 미치나요?#

데이터 보존은 실제 삭제 쿼리를 일괄 처리로 실행하여 쿼리당 1000개의 레코드 블록으로 데이터를 삭제합니다. 이는 데이터베이스가 장시간 실행되는 쿼리로 인해 장시간 잠기지 않도록 하기 위함입니다. 이 제한을 유지하면 데이터베이스 자체에서 쿼리 실행 시간이 몇 밀리초로 유지됩니다.

각 데이터 배치는 인덱스를 기반으로 삭제되어 작은 배치에서 쿼리를 빠르게 실행할 수 있습니다. 이는 프로세스가 실행되는 동안 서버가 완전히 응답할 수 있도록 도와줍니다.

데이터 보존 작업이 실행 중인지/예약되었는지 어떻게 알 수 있나요?#

작업 스케줄러는 구성 설정에 지정된 시간을 기준으로 데이터 보존 작업을 실행합니다. 이때 DEBUG 수준의 로그 라인이 인쇄됩니다: Scheduling data retention job.

작업 서버가 예약된 작업을 실행하기 위해 선택하면 DEBUG 수준의 로그 라인이 생성됩니다: Worker EnterpriseDataRetention: Received a new candidate job.

작업이 완료되면 INFO 수준의 로그 라인이 생성됩니다: Worker EnterpriseDataRetention: Job is complete.