티켓 동기화
개요
다른 로그프레소 소나 인스턴스의 티켓을 이 인스턴스로 복제하는 기능입니다. 지사·고객사·망분리 구간에 흩어진 소나의 티켓을 본사 인스턴스 한 곳에서 모아 보는 용도로 사용합니다.
복제 대상은 티켓만이 아닙니다. 티켓이 근거로 삼은 탐지 이벤트와 원본 로그까지 함께 가져오므로, 복제된 티켓을 열어 "무엇을 보고 이 티켓이 생겼는지"를 그대로 확인할 수 있습니다.
| 항목 | 내용 |
|---|---|
| 메뉴 | 실험실 > 티켓 동기화 |
| 방식 | 폴링(기본 5초 주기). 수집 측이 원격에 접속해 변경분을 가져옵니다 |
| 인증 | 접속 프로파일에 저장된 계정/암호 |
| 복제 단위 | 원격 티켓 분류 1개 → 로컬 티켓 분류 1개 |
시작하기 전에
양쪽 인스턴스에 실험실 앱을 설치하는 것을 권장합니다. 수집하는 쪽에만 설치해도 동작하지만, 원격에도 설치되어 있으면 변경된 티켓만 골라내는 전용 조회 명령어를 쓸 수 있어 원격 부하가 크게 줄어듭니다. 원격에 앱이 없으면 자동으로 호환 모드로 내려갑니다(아래 "조회 방식" 참고).
원격 인스턴스에 연동 전용 계정을 하나 만들고 다음을 확인하세요.
- 다단계 인증(MFA)이 비활성이어야 합니다. 로그인 과정에 추가 단계가 있으면 접속하지 못합니다.
- 가져올 티켓 분류에 대한 권한이 있어야 합니다. 권한이 없으면 티켓도 근거 이벤트도 보이지 않습니다.
- 탐지 규칙 조회 권한(실시간 규칙 조회 / 배치 규칙 조회)이 있으면 좋습니다. 근거 이벤트를 제대로 표시하는 데 사용됩니다(아래 "복제 전용 탐지 규칙" 참고).
1단계 — 접속 프로파일 만들기
설정 > 접속 프로파일에서 유형이 로그프레소 소나인 프로파일을 만듭니다.
| 옵션 | 필수 | 설명 |
|---|---|---|
| 엔드포인트 URL | 예 | 원격 소나 주소. 예: https://sonar.example.com:8443. 포트를 생략하면 443 |
| 계정 | 예 | 연동 계정 로그인 ID |
| 암호 | 예 | 계정 암호. 저장 후에는 화면에 표시되지 않습니다 |
| 인증서 검사 생략 | 아니오 | 사설 인증서를 쓰는 원격이면 true. 기본 false |
| 접속 타임아웃 | 아니오 | 초 단위. 기본 10 |
| 읽기 타임아웃 | 아니오 | 초 단위. 기본 30 |
저장 전에 연결 테스트로 접속과 로그인이 되는지 확인하세요.
2단계 — 매핑 만들기
실험실 > 티켓 동기화에서 추가를 누르면 오른쪽에 설정 패널이 열립니다. 위에서부터 차례로
고르면 되고, 앞 단계를 정해야 다음 단계가 채워집니다.
- 로그프레소 소나 접속 프로파일 — 1단계에서 만든 프로파일을 고릅니다.
- 원격 티켓 분류 — 원격 인스턴스의 티켓 분류 목록이 표시됩니다. 고르면 그 분류의 최근 티켓 20건이 미리보기로 나옵니다. 저장하기 전에 의도한 분류가 맞는지 여기서 확인하세요.
- 로컬 티켓 분류 — 복제된 티켓이 쌓일 이 인스턴스의 분류입니다.
- 폴링 주기 — 기본 5초입니다.
- 동기화 활성화 — 켠 상태로 저장하면 바로 수집이 시작됩니다.
저장한 뒤 "수집 시점 초기화"로 시작 시점을 뒤로 돌리세요(아래 참고).
기존 매핑을 수정할 때 접속 프로파일과 원격 티켓 분류는 바꿀 수 없습니다. 이미 수집 중인 동기화를 말없이 다른 대상으로 돌리지 않기 위해서입니다. 대상을 바꾸려면 매핑을 지우고 새로 만드세요.
목록 화면 읽기
| 열 | 의미 |
|---|---|
| 상태 | 동작 상태 인디케이터 |
| 접속 프로파일 | 사용 중인 프로파일 이름 |
| 원격 티켓 분류 | 원격 분류 이름 |
| 로컬 티켓 분류 | 복제 대상 분류의 현재 이름. 분류가 삭제되었으면 (삭제됨) |
| 주기 | 폴링 주기 |
| 마지막 동기화 | 마지막으로 성공한 수집 시각 |
| 마지막 티켓 시각 | 마지막으로 가져온 티켓의 변경 시각 |
마지막 두 열은 서로 다른 질문에 답합니다. 앞은 "언제 돌았나", 뒤는 "어디까지 가져왔나"입니다. 원격이 조용하면 앞은 계속 갱신되지만 뒤는 멈춰 있습니다. 둘 다 과거에 멈춰 있으면 수집 자체가 동작하지 않는 것이니 상태 인디케이터를 확인하세요.
분류 이름에 마우스를 올리면 GUID가 툴팁으로 보이고, 옆의 복사 버튼으로 클립보드에 담을 수 있습니다.
상태 인디케이터
수집기 목록과 같은 규칙입니다.
| 색 | 상태 | 할 일 |
|---|---|---|
| 빨강 | 중지됨(비활성) | 매핑을 열어 "동기화 활성화"를 켜세요 |
| 노랑 | 오류 | 클릭하면 진단 대화상자가 열립니다 |
| 초록 | 동작 중 | — |
오류일 때만 클릭할 수 있습니다. 진단 대화상자에는 오류 분류·상세 메시지·발생 시각·마지막 성공
시각·수집 기준점이 표시되고, 분류별 권장 조치가 함께 나옵니다. 여기서 지금 동기화로 즉시
재시도하거나 초기화로 수집 시점을 바꿀 수 있습니다.
수집 시점 초기화
과거 티켓을 가져오는 유일한 방법이고, 수집이 멈춰 있을 때 되살리는 방법이기도 합니다. 목록의
초기화 버튼 또는 진단 대화상자에서 엽니다.
달력에서 시작할 시점을 고르면 다음 회차부터 그 시점을 기준으로 수집하고, 오류와 마지막 동기화 기록을 지웁니다. 미래 시각은 지정할 수 없습니다.
- 진행 중이던 회차는 중단됩니다. 그대로 두면 옛 기준으로 끝나면서 방금 지정한 시점을 덮어쓰기 때문입니다.
- 이미 복제된 티켓은 그대로 남고 다시 가져오지 않습니다. 변경이 없는 티켓은 요약 정보만으로 걸러지므로 비용이 거의 들지 않습니다.
- 다만 시점을 멀리 잡을수록 그 다음 회차가 길어집니다. 몇 달 전으로 되돌리면 첫 회차에 시간이 걸리고, 그동안 해당 매핑의 다음 회차는 시작되지 않습니다.
무엇이 복제되는가
복제되는 것
- 티켓 본문 — 제목, 내용, 형식, 중요도, 상태, 공격 여부, 사고 여부, 건수, 발생/이벤트 시각, 태그, 생성·변경 시각
- 상태 전이 — 원격에서 종료하면 로컬도 종료되고, 재오픈하면 로컬도 재오픈됩니다
- 근거 이벤트와 원본 로그 — 건수 제한이 없습니다
- GUID — 원격과 같은 GUID로 복제됩니다. 두 인스턴스가 같은 티켓을 같은 식별자로 가리킵니다
복제되지 않는 것
| 항목 | 이유 |
|---|---|
| 티켓 번호 | 로컬에서 새로 부여됩니다. GUID가 동일하므로 식별에는 문제가 없습니다 |
| 담당자·결재자 | 원격 인스턴스의 사용자이고, 이 인스턴스에는 그 계정이 없습니다 |
| 코멘트·첨부파일 | 같은 이유입니다 |
| 삭제 | 원격에서 티켓을 지워도 로컬 복제본은 남습니다 |
복제 전용 탐지 규칙
동기화를 시작하면 탐지 규칙 목록에 비활성 규칙이 자동으로 생성됩니다. 이름은
원본 규칙 이름 (접속 프로파일 이름) 형태입니다.
이것은 복제된 근거 이벤트를 화면에 보이게 하기 위한 자리표시자입니다. 소나는 이벤트를 조회할 때 "그 이벤트를 만든 탐지 규칙을 볼 권한이 있는가"를 함께 검사하는데, 복제된 이벤트가 달고 온 원격 규칙 번호는 이 인스턴스에 존재하지 않아 그대로 두면 아무에게도 보이지 않습니다.
- 항상 비활성입니다. 탐지를 수행하지 않고, 쿼리도 동작하지 않습니다.
- 매핑의 로컬 티켓 분류에 묶입니다. 그 분류를 볼 수 있는 사람만 근거 이벤트를 볼 수 있다는 뜻이고, 티켓 권한과 근거 권한이 어긋나지 않습니다.
- 원본 탐지 쿼리는 주석 형태로 보존됩니다. 복제된 티켓을 조사할 때 원격에서 어떤 로직이 탐지했는지 읽을 수 있습니다.
로그 저장소에 적재된 이벤트는 나중에 수정할 수 없습니다.
조회 방식
진단 대화상자의 "조회 방식" 항목에 둘 중 하나가 표시됩니다.
| 값 | 의미 |
|---|---|
query | 원격에 실험실 앱이 있어 전용 조회 명령어를 사용합니다. 변경된 티켓만 걸러서 가져오므로 가볍습니다 |
msgbus | 원격에 앱이 없어 호환 모드로 동작합니다. 변경 감지 정확도는 같지만 원격 부하가 더 큽니다 |
원격에 앱을 설치하면 다음 회차부터 자동으로 query로 올라갑니다.
문제 해결
진단 대화상자의 오류 분류를 먼저 보세요.
| 오류 분류 | 원인과 조치 |
|---|---|
LOGIN_FAILURE | 계정 또는 암호가 맞지 않습니다. 원격에서 암호가 변경되었을 가능성이 높습니다. 접속 프로파일을 수정하세요 |
CONNECT_FAILURE | 엔드포인트 주소나 네트워크 경로 문제입니다. 사설 인증서를 쓴다면 "인증서 검사 생략"이 필요합니다 |
QUERY_FAILURE | 원격에서 조회를 실행하지 못했습니다. 연동 계정의 권한과 원격 티켓 분류를 확인하세요 |
PROFILE_NOT_FOUND | 접속 프로파일이 삭제되었습니다. 매핑을 수정해 다른 프로파일을 지정하세요 |
LOCAL_REPO_DELETED | 로컬 티켓 분류가 삭제되어 동기화가 자동 중지되었습니다. 매핑을 수정해 다른 분류를 지정하세요 |
NO_CLUSTER_ADMIN | 동기화를 수행할 클러스터 관리자 계정이 없습니다 |
티켓은 들어오는데 근거자료가 비어 있을 때
- 진단 대화상자에 오류가 있는지 먼저 확인하세요. 근거 복제가 실패하면 그 회차 전체가 실패로 기록됩니다.
- 연동 계정에 탐지 규칙 조회 권한이 있는지 확인하세요. 권한이 없으면 복제 전용 탐지 규칙을 제대로 만들지 못합니다.
- 탐지 규칙 목록에
원본 이름 (프로파일 이름)형태의 비활성 규칙이 생성되었는지 확인하세요. - 원격에서 해당 이벤트가 아직 보존 기간 안에 있는지 확인하세요. 이미 삭제된 이벤트는 가져올 수 없습니다.
특정 티켓이 들어오지 않을 때
수집 기준은 티켓의 변경 시각입니다. 생성 시각이 아닙니다. 원격에서 오래전에 만들어졌지만 최근에 갱신된 티켓은 들어오고, 반대로 "마지막 티켓 시각"보다 변경 시각이 이른 티켓은 들어오지 않습니다. 필요하면 초기화로 기준점을 그 티켓의 변경 시각 이전으로 되돌리세요.
제약사항
- 연동 계정은 다단계 인증을 사용할 수 없습니다.
- HTTP 프록시를 경유한 접속은 지원하지 않습니다. 수집 측에서 원격 인스턴스로 직접 연결할 수 있어야 합니다.
- 티켓 삭제는 동기화되지 않습니다.
- 매핑을 삭제해도 이미 복제된 티켓과 이벤트는 남습니다.
- 같은 원격 분류를 두 개의 매핑에 연결할 수 없습니다. 두 수집기가 같은 티켓을 쓰게 되기 때문입니다.