프로세스 및 전체 하위 프로세스 트리에 대한 네트워크 트래픽 모니터링

프로세스 및 전체 하위 프로세스 트리에 대한 네트워크 트래픽 모니터링

일정 기간 동안의 네트워크 트래픽(인바운드 및 아웃바운드), 생성된 특정 프로세스 및 생성된 모든 하위 프로세스를 알고 싶습니다.

나는 영원히 실행되고 네트워크 트래픽 자체를 생성하지 않는 "작업 관리자"가 포함된 소프트웨어를 개발했습니다. 대신, 대부분의 네트워크 트래픽을 포함하여 주요 작업을 수행하는 하위 "작업자"를 생성합니다. 까다로운 점은 여러 "작업자"가 동시에 작업할 수 있으며 단일 작업자 프로세스가 짧은 시간(몇 시간) 후에 종료될 것으로 예상된다는 것입니다. 또한 이러한 작업자는 git fetch모니터링이 필요한 트래픽을 생성하는 더 많은 하위 프로세스를 생성합니다 .

"Job Manager" 인스턴스는 하나만 있으며 Ubuntu Server 18.04, 아키텍처 amd64를 실행하는 개발 및 테스트 서버에서 필요에 따라 시작하거나 종료할 수 있습니다.

모든 작업자의 네트워크 트래픽과 작업자가 생성하는 프로세스를 장기간(1주일 이상) 모니터링하고 싶습니다. 해결책이 있나요?

답변1

아마도 가장 쉬운 방법은 작업 관리자를 네트워크 네임스페이스에 두는 것입니다. 모든 하위 프로세스도 이 네임스페이스에 포함됩니다. veth 또는 macvlan을 통해 네임스페이스에 연결하고 해당 인터페이스에서 트래픽을 측정합니다.

관련 정보