ASP.NET 코어는 NLog를 사용해 로그를 ELK 시스템으로 푸시하며, 로그를 일관되게 수집하고 분석합니다.
먼저, 다음과 같이 렌더링을 살펴보겠습니다:
다음과 같이 NLog.Web.AspNetCore를 참조하는 새로운 ASP.NET Core 3.1 웹사이트 프로젝트를 생성하세요:
새로운 nlog.config 구성 파일을 만들고 다음과 같이 설정하세요:
프로그램 파일은 다음과 같이 수정됩니다:
우리는 파일에 데이터를 쓰고,로그스타시를 통해 Elasticsearch에 전송한 후 UDP로 로그인 기록을 보냅니다왜 파일에 쓰는 걸까요? UDP는 신뢰성이 떨어지고 모든 로그 데이터가 정상적으로 ELK 시스템에 100% 기록된다는 보장이 없기 때문에, 로컬 디스크에 저장하는 것은 백업과 동일합니다.
로컬 로그는 최대 30일까지 저장되며, 30일 이상 된 로그는 자동으로 정리되어 프로필을 통해 설정할 수 있습니다.
Logstash는 다음과 같이 새로운 test.conf 구성 파일을 생성합니다:
Logstash를 다음 명령어로 시작합니다:
HomeController 컨트롤러에서 로그 프레임워크를 호출하고, 브라우저를 통해 인덱스 페이지에 접근한 뒤 ELK 시스템에 10,000개의 로그를 기록하면 코드는 다음과 같습니다:
Kibana 인터페이스에서 스택 관리를 클릭하고, 인덱스 모드를 선택한 뒤, 오른쪽 상단의 인덱스 모드 생성을 클릭한 뒤, 아래 그림과 같이 itsvse-logs-*를 입력하세요:
그 후에는 Kibana의 Discover 인터페이스에서 기록한 로그를 볼 수 있습니다.
마지막으로 소스 코드를 첨부하세요:
관광객 여러분, 이 게시물의 숨겨진 내용을 보고 싶으시다면 부탁드립니다 회답
|