본 문서는 로그프레소 서비스를 시작·중지·재기동하는 두 가지 방식(systemctl / 런처 스크립트)을 정리한 가이드입니다.
명령어/경로는 실제 환경에 맞게 반드시 교체하세요. (설치 경로 예:/opt/logpresso)
개요
-
로그프레소는 systemctl 방식과 런처 스크립트 방식 두 가지로 구동할 수 있습니다.
-
프로세스·로그 확인은 두 방식 공통이며, 작업 전후 상태 확인에 사용합니다.
-
사전 확인
- systemd가 관리 중인 서비스를 런처로 중지하면 systemd가 이를 장애로 판단해 즉시 되살리므로 정지가 불가능하여 두 방식을 섞어 쓰면 안됩니다.
- 유닛이 없거나
inactive/failed인데 프로세스는 살아 있으면 런처 방식으로 기동 중 Active: active (running)이고CGroup:에 java 프로세스가 보이면 systemctl 방식으로 기동 중
systemctl status logpresso -
재기동 전 증적 수집
- 장애로 인한 재기동이라면, 서비스를 내리기 전에 증적을 먼저 확보해야 합니다.
- 재기동하는 순간 스레드 상태와 힙 메모리 내용이 사라져 원인 분석이 불가능해집니다.
- 참고 문서 : 장애 원인 분석을 위한 증적 생성 가이드
적용 대상
- 제품: Logpresso Sonar
- 패키지 설치 경로 : /opt/logpresso
프로세스·로그 확인 (공통)
프로세스 확인
ps -ef | grep araqne
| 항목 | 예시 값 | 의미 |
|---|---|---|
| 첫 번째 열 (UID) | root |
서비스 실행 계정 |
| 실행 바이너리 | /opt/logpresso/jre/bin/java |
제품에 포함된 번들 JRE. 시스템 java 가 아닙니다. |
-jar |
/opt/logpresso/araqne-core-4.1.0-package.jar |
실제 구동 중인 엔진 패키지와 버전. 패치 후 이 값으로 확인합니다. |
-Xms / -Xmx |
4G / 4G |
JVM 힙 할당량 |
-XX:MaxDirectMemorySize |
2G |
다이렉트 버퍼(네트워크·파일 I/O) 할당량 |
-Daraqne.dir |
/opt/logpresso |
설치 홈 디렉터리 |
-Daraqne.log.dir |
/opt/logpresso/log |
로그 적재 경로 |
-Daraqne.ssh.port |
7022 (127.0.0.1 바인딩) |
로그프레소 CLI(SSH) 접속 포트 |
실행 계정 확인
- 출력의 첫 번째 열이 현재 서비스를 구동 중인 계정입니다.
- 기존과 다른 계정으로 기동하면 데이터·로그 파일의 소유권이 섞여 권한 오류나 기동 실패가 발생합니다.
- 런처 스크립트를 직접 실행할 때 개인 계정으로 접속해
sudo없이 실행하면 다른 계정으로 기동됩니다. - crontab에 등록할 때도 동일 계정의 crontab에 등록해야 합니다.
서비스 중지 시 주의사항
- 종료 전 진행 중인 예약 쿼리·배치와 수집 유실 가능성을 확인하세요.
- 재전송을 지원하지 않는 프로토콜(예: Syslog UDP)은 정지 구간의 로그가 복구되지 않습니다.
kill -9사용 시, 인덱스·저널이 메모리에 남은 채 강제 종료될 수 있으며, 데이터 파일 손상 및 기동 시 복구 지연이 발생할 수 있습니다.
systemctl 방식
서비스 기동
systemctl start logpresso
서비스 중지
systemctl stop logpresso
서비스 자동기동 설정
systemctl enable logpresso
서비스 자동기동 해제
systemctl disable logpresso
런처 스크립트 방식
서비스 기동
- 확인한 서비스 실행 계정으로 기동합니다.
/opt/logpresso/logpresso start
- 정상출력 예시
Logpresso Launcher 1.2.1
starting Logpresso...
Logpresso CLI is now listening on 7022 as SSH.
Logpresso has been started.
서비스 중지
/opt/logpresso/logpresso stop
- 정상출력 예시
stopping Logpresso. waiting for shutdown ............... stopped
서비스 자동기동 설정(crontab)
- 런처 방식에서는 systemd 자동 기동을 쓸 수 없으므로 crontab에 주기적 기동 명령을 등록합니다.
- 서비스 실행 계정의 crontab에 등록해야 합니다.
- 점검·패치로 서비스를 내려야 할 때는 작업 전에 해당 cron 줄을 주석(
#) 처리하고, 작업 완료 후 복구하세요.
crontab -e
- 내용 추가
*/10 * * * * /opt/logpresso/logpresso start
- 등록 확인
crontab -l
- 10분마다 실행되며, 이미 기동 중이면 아무 동작도 하지 않습니다.
- 서버 재부팅이나 비정상 종료 시 최대 10분 이내에 자동 기동됩니다.