ASP.NET Core는 통합 로그 수집 및 분석을 위해 NLog를 사용하여 로그를 ELK 시스템으로 푸시합니다.
로깅 시스템(I) Windows 설치 ELK 7.10.2 자습서 h ttps:// www.itsvse.com/thread-9539-1-1.html 먼저 다음과 같은 효과 이미지를 살펴봅시다:
다음과 같이 NLog.Web.AspNetCore를 참조하는 새 ASP.NET Core 3.1 웹 프로젝트를 만듭니다:
다음 구성으로 새 nlog.config 구성 파일을 만듭니다:
다음과 같이 변경하여 프로젝트 Program 파일에 nlog를 추가합니다:
데이터를 파일에 쓰고 로그스태시를 통해 엘라스틱서치에도 쓸 것입니다 . 로그를 전송할 때 UDP를 사용하는데 왜 파일에 써야 하나요? 로그를 전송할 때 UDP를 사용하는데 왜 파일에 써야 하나요? UDP는 신뢰할 수 없으며 모든 로그 데이터가 ELK 시스템에 기록된다는 것을 100% 보장할 수 없기 때문에 로컬 디스크에 저장하는 것도 백업과 동일합니다.
로컬 로그는 최대 30일 동안 저장할 수 있습니다. 30일이 지난 로그는 자동으로 정리되며, 이는 구성 파일을 통해 설정할 수 있습니다.
Logstash는 다음과 같이 새 test.conf 구성 파일을 생성합니다:
다음 명령으로 Logstash를 시작합니다:
HomeController 컨트롤러에서 로깅 프레임워크를 호출하고 브라우저를 통해 인덱스 페이지에 액세스하면 다음 코드와 같이 10,000개의 로그가 ELK 시스템에 기록됩니다:
Kibana 인터페이스에서 스택 관리를 클릭하고, 인덱스 스키마를 선택하고, 오른쪽 상단의 "인덱스 스키마 만들기"를 클릭한 다음, 아래와 같이 "itsvse-logs-*"를 입력합니다:
그 후, Kibana의 Discover 인터페이스에서 기록한 로그를 확인할 수 있습니다.
마지막으로 소스 코드가 첨부되어 있습니다:
게스트 여러분, 이 게시물의 숨겨진 콘텐츠를 보려면 다음 주소로 답장해 주세요. |