Search
Duplicate
📒

[Linux CLI] 07-2. 로그관리 - syslog, journalctl

상태
미진행
수업
Linux
주제
4 more properties
참고

로그 관리

NOTE
리눅스 시스템에서는 모든 이벤트에 대해서 로그를 생성한다!
로그를 기록하는 여러 방식이 존재한다. (journalctl이 좀 더 개선된 방식)

로그 관리 데몬

NOTE
로그 처리 흐름도
Syslogd(System Logger Daemon)
가장 기본적인 로그 관리 데몬으로, UNIX와 리눅스 시스템에서 널리 사용된다.
시스템 메시지, 커널 로그를 수집하여 다른곳으로 전송할 수 있다.
Rsyslogd(Reliable Syslog)
syslogd의 확장 버전으로, 더 많은 기능과 유연성을 제공한다.
Journald(Systemd Journal Daemon)
systemd에 내장된 로그 관리 데몬

systemd(System Daemon)

NOTE
daemon은 background에서 실행이 되는 프로세스이며, 이러한 daemon을 실행/관리 하는것이 systemd이다!
systemd는 부팅이후 가장 먼저 실행되는 데몬이다.
가장 먼저 실행된다는 것은 PID가 1이된다는 것이다.
부팅부터, 서비스관리, 로그관리 등을 담당한다.
ls -al /etc/systemd/system # systemd unit 파일 경로 cat /etc/systemd/system/example.service # 파일 예시
Bash
복사
여러 파일들이 확인된다.
systemd 파일의 섹션
[Unit] Description=Systemd Test Daemon After=after-example.service Requires=after-example.service [Service] Type=simple ExecStart=/usr/local/bin/example-daemon.sh Restart=on-failure [Install] WantedBy=multi-user.target
Bash
복사
Unit: 유닛의 메타데이터와 의존성 정보를 제공한다.
Description: 서비스 설명
After, Before : 다른 유닛들에 대한 서비스의 시작 순서를 정읳나다.
Require, Wants: 서비스가 의존하는 다른 유닛들을 명시한다.
Conflicts: 서비스가 충돌하는 다른 유닛을 명시한다.
Service: 서비스의 동작 방식을 정의한다.
Type: 서비스의 시작 타입을 정의한다.
ExecStart: 서비스를 시작할 명령어 지정
Restart: 서비스 재시작 정책
Install: systemctl enalbe/disable 명령을 사용할 때 설치 및 제거 방법
WantedBy: 서비스가 활성화 될 때 어떤 타깃에의해 시작되어야 하는가?

정리하기

NOTE
작업 방법
프로세스가 소비하는 메모리양 파악하기
디스크 공간이 얼마나 빨리 소진되는지 알아내기
보안상의 이유로 맞춤 이벤트에 대한 알람 받기

관측 가능성 전략

대표적인 전략중 하나가 우다 루프다.
관측된 데이터를 기반으로 가설을 테스트하고 이에 따라 조치를 취하는 구조화된 방법, 시그널로부터 실행 가능한 통찰력을 얻는 방법을 제공한다.
애플리케이션이 느리다고 가정 ⇒ 느려진 원인 후보를 여러개 지목(메모리 부족, CPU 주기부족) .. ⇒ 각 리소스가 얼마나 소비되는지 측정, ⇒ 각 리소스의 할당을 개별적으로 변경하고 측정
더 많은 RAM을 제공했더니 성능이 향상됐는가? 그렇다며 ㄴ이유를 찾은것

용어

관측 가능성
시그널 유형
소스
목적지
텔레메트리