로그
Semaphore는 서버 로그를 stdout에 기록하고, Task 로그와 Activity 로그를 데이터베이스에 저장합니다. 이를 통해 주요 로그 정보를 한곳에 모으고 로그 파일을 별도로 백업할 필요를 없앱니다. 파일 시스템에 저장되는 데이터는 캐시 데이터뿐입니다.
서버 로그
Semaphore는 파일에 로그를 기록하지 않습니다. 대신 모든 애플리케이션 로그는 stdout에 기록됩니다.
Semaphore가 systemd 서비스로 실행 중이라면 다음 명령으로 로그를 확인할 수 있습니다:
journalctl -u semaphore.service -f
Semaphore가 Docker 컨테이너에서 실행 중이라면 다음 명령으로 로그를 확인할 수 있습니다:
docker logs -f my-semaphore-container
이 명령은 로그를 실시간(스트리밍)으로 보여 줍니다.
활동 로그
활동 로그는 Semaphore에서 수행된 사용자 작업을 기록합니다. 예를 들면 다음과 같 습니다:
- 리소스 추가 또는 제거(예: 템플릿, 인벤토리, 저장소).
- 팀 구성원 추가 또는 제거.
Pro 버전 2.10 이상 Pro
Semaphore Pro 2.10 이상에서는 활동 로그와 Task 로그를 파일에 기록할 수 있습니다. 이 기능을 활성화하려면 config.json에 다음 설정을 추가합니다:
{
"log": {
"events": {
"enabled": true,
"logger": {
"filename": "./events.log"
// other logger options
}
},
"tasks": {
"enabled": true,
"logger": {
"filename": "./tasks.log"
// other logger options
},
"result_logger": {
"filename": "./task_results.log"
// other logger options
}
}
}
}
또는 다음 환경 변수를 사용하여 설정할 수도 있습니다:
export SEMAPHORE_EVENT_LOG_ENABLED=True
export SEMAPHORE_EVENT_LOGGER={"filename": "./events.log"}
export SEMAPHORE_TASK_LOG_ENABLED=True
export SEMAPHORE_TASK_LOGGER={"filename": "./tasks.log"}
활동(이벤트) 로깅 옵션
활동(이벤트) 로깅 옵션을 사용하면 Semaphore가 사용자 작업과 시스템 이벤트를 파일에 기록하는 방식을 구성할 수 있습니다. 이 설정은 이벤트 로깅의 활성화 여부, 로그 항목 형식, 세부 logger 구성 등 이벤트 로깅 동작을 제어합니다. 활성화하면 템플릿 생성, 팀 관리 등의 사용자 작업이 이 설정에 따라 지정된 로그 파일에 기록됩니다.
| 매개변수 | 환경 변수 | 설명 |
|---|---|---|
enabled | SEMAPHORE_EVENT_LOG_ENABLED | 파일로의 이벤트 로깅을 활성화합니다. |
format | SEMAPHORE_EVENT_LOG_FORMAT | 로그 레코드 형식. raw 형식은 비워 두고, JSON 형식은 json으로 설정합니다. |
logger | SEMAPHORE_EVENT_LOGGER | Logger 옵션. |
작업 로깅 옵션
작업 로깅 옵션을 사용하면 Semaphore가 작업 실행 세부 정보를 파일에 기록하는 방식을 구성할 수 있습니다. 이 설정은 작업 시작, 완료, 실행 상태 등 작업 관련 이벤트의 로깅을 제어합니다. 활성화하면 모든 작업 실행과 그 결과가 이 설정에 따라 지정된 로그 파일에 기록되어, 작업 실행 이력에 대한 상세한 감사 추적을 제공합니다.
| 매개변수 | 환경 변수 | 설명 |
|---|---|---|
enabled | SEMAPHORE_TASK_LOG_ENABLED | 파일로의 작업 로깅을 활성화합니다. |
format | SEMAPHORE_TASK_LOG_FORMAT | 로그 레코드 형식. raw 형식은 비워 두고, JSON 형식은 json으로 설정합니다. |
logger | SEMAPHORE_TASK_LOGGER | Logger 옵션. |
result_logger | SEMAPHORE_TASK_RESULT_LOGGER | Logger 옵션. |