Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

애플리케이션 이벤트 모니터링

이 가이드 MongoDB Rust 드라이버 에서 모니터링 설정하다 하고 구성하는 방법을 설명합니다.

모니터링은 실행 프로그램의 활동에 대한 정보를 수집하며, 이는 애플리케이션 성능 관리 라이브러리와 함께 사용할 수 있습니다.

Rust 운전자 모니터링하면 드라이버의 리소스 사용량과 성능을 파악할 수 있습니다. 이 정보는 애플리케이션 설계하고 디버깅할 때 정보에 입각한 결정을 내리는 데 도움이 됩니다.

이 가이드에서는 다음 작업을 수행하는 방법을 보여줍니다.

  • 명령 이벤트 모니터링

  • 서버 검색 및 모니터링(SDAM) 이벤트 모니터링

  • 연결 풀 이벤트 모니터링

Rust 운전자 사용하여 운전자 MongoDB deployment 서버로 전송하는 명령의 결과를 모니터 할 수 있습니다.

애플리케이션 의 명령 이벤트에 대한 정보를 사용하거나 명령을 모니터 운전자 명령을 실행하는 방법에 대해 자세히 학습 .

다음 명령 이벤트를 모니터 할 수 있습니다.

이벤트 이름
설명

명령이 시작될 때 생성됩니다.

명령이 성공하면 생성됩니다.

명령이 성공하지 못했을 때 생성됩니다.

EventHandler 인스턴스 command_event_handler 클라이언트 옵션의 값으로 할당하여 명령 이벤트를 모니터링합니다. 모든 명령 이벤트를 처리하는 EventHandler 를 구성하려면 callback() 또는 async_callback() 메서드를 사용합니다.

다음 예시 에서는 MongoDB deployment 에 연결하여 명령 이벤트를 모니터 하도록 클라이언트 에 지시하고 각 이벤트 를 출력합니다.

let mut client_options = ClientOptions::parse("<connection string>").await?;
client_options.command_event_handler = Some(EventHandler::callback(|ev| println!("{:?}", ev)));
let client = Client::with_options(client_options)?;
// ... perform actions with the client to generate events

Rust 운전자 사용하여 MongoDB 인스턴스, 복제본 세트 또는 샤딩된 클러스터 에서 토폴로지 이벤트를 모니터 할 수 있습니다. 운전자 인스턴스 또는 클러스터 의 상태 변경될 때 SDAM(서버 검색 및 모니터링) 이벤트라고도 하는 토폴로지 이벤트를 생성합니다.

애플리케이션 의 토폴로지 변경 사항에 대한 정보를 사용하거나 클러스터 변경 사항을 모니터 애플리케이션 에 미치는 영향에 대해 자세히 학습 .

다음과 같은 SDAM 이벤트를 모니터 할 수 있습니다.

이벤트 이름
설명

복제본 세트 노드가 세컨더리에서 프라이머리로 변경되는 경우와 같이 인스턴스 상태가 변경될 때 생성됩니다.

복제본 세트 멤버와 같은 인스턴스에 대한 연결이 열릴 때 생성됩니다.

복제본 세트 멤버와 같은 인스턴스에 대한 연결이 닫힐 때 생성됩니다.

새 투표가 있거나 mongos 프록시 연결이 끊어지는 경우와 같이 토폴로지 설명이 변경될 때 생성됩니다.

드라이버가 인스턴스에 연결을 시도하기 전에 생성됩니다.

토폴로지의 모든 인스턴스 연결이 닫힌 후에 생성됩니다.

드라이버가 인스턴스에 hello 명령을 실행하기 전에 생성됩니다.

hello 명령이 MongoDB 인스턴스에서 성공적으로 반환될 때 생성됩니다.

MongoDB 인스턴스에 대한 hello 명령이 성공적인 응답을 반환하지 않을 때 생성됩니다.

EventHandler 인스턴스 sdam_event_handler 클라이언트 옵션의 값으로 할당하여 SDAM 이벤트를 모니터링합니다. 모든 SDAM 이벤트를 처리하는 EventHandler 를 구성하려면 callback() 또는 async_callback() 메서드를 사용합니다.

다음 예시 에서는 MongoDB deployment 에 연결하여 클라이언트 에게 SDAM 이벤트를 모니터 하도록 지시하고 각 이벤트 를 출력합니다.

let mut client_options = ClientOptions::parse("<connection string>").await?;
client_options.sdam_event_handler = Some(EventHandler::callback(|ev| println!("{:?}", ev)));
let client = Client::with_options(client_options)?;
// ... perform actions with the client to generate events

Rust 운전자 사용하여 드라이버의 연결 풀 모니터 할 수 있습니다. 연결 풀 운전자 MongoDB 인스턴스 사용하여 유지 관리하는 개방형 TCP(전송 제어 프로토콜) 연결 설정하다 입니다. 연결 풀은 애플리케이션 에서 생성해야 하는 새 연결 수를 줄여 애플리케이션 더 빠르게 실행 수 있습니다.

애플리케이션 에서 연결 풀 의 변경 사항에 대한 정보를 사용하거나 연결 풀 모니터 운전자 연결을 사용하는 방법에 대해 자세히 학습 .

다음 연결 풀 이벤트를 모니터 할 수 있습니다.

이벤트 이름
설명

연결 풀이 생성될 때 생성됩니다.

연결 풀이 준비되면 생성됩니다.

연결 풀이 비워질 때 생성됩니다.

서버 인스턴스가 삭제되기 전에 연결 풀이 닫힐 때 생성됩니다.

연결이 생성될 때 생성되지만 작업에 사용될 때 반드시 생성되지는 않습니다.

연결이 성공적으로 핸드셰이크를 완료하고 작업할 준비가 된 후에 생성됩니다.

연결이 닫힐 때 생성됩니다.

작업이 실행을 위해 연결을 획득하려고 시도할 때 생성됩니다.

작업이 실행할 연결을 획득할 수 없을 때 생성됩니다.

작업이 실행을 위한 연결을 성공적으로 획득할 때 생성됩니다.

작업이 실행된 후 연결이 풀에 다시 체크인될 때 생성됩니다.

EventHandler 인스턴스 cmap_event_handler 클라이언트 옵션의 값으로 할당하여 연결 풀 이벤트를 모니터링합니다. 모든 연결 풀 이벤트를 처리하는 EventHandler 를 구성하려면 callback() 또는 async_callback() 메서드를 사용합니다.

다음 예시 에서는 MongoDB deployment 에 연결하여 연결 풀 이벤트를 모니터 하도록 클라이언트 에 지시하고 각 이벤트 를 출력합니다.

let mut client_options = ClientOptions::parse("<connection string>").await?;
client_options.cmap_event_handler = Some(EventHandler::callback(|ev| println!("{:?}", ev)));
let client = Client::with_options(client_options)?;
// ... perform actions with the client to generate events

MongoDB 배포 모니터링에 대해 자세히 알아보려면 MongoDB를 모니터링하는 방법 문서를 참조하세요.

애플리케이션 의 성능을 개선하는 방법에 대해 자세히 학습 성능 고려 사항 가이드 참조하세요.

이 가이드에서 사용되는 메서드 또는 유형에 대해 자세히 알아보려면 다음 API 문서를 참조하세요.

돌아가기

MongoDB Vector Search

이 페이지의 내용