Agent 비율 제한 (Agent Rate Limits)
최대 연결 한도 (Maximum connection limit)
Agent 로그에서 다음 오류 메시지가 보이면 기본 APM 연결 한도인 2000을 초과한 것이에요:
출처: 문서
본문
ERROR | (pkg/trace/logutil/throttled.go:38 in log) | http.Server: http: Accept error: request has been rate-limited; retrying in 80ms
Agent의 APM 연결 한도를 높이려면 Agent 구성 파일에서(apm_config: 섹션 아래) connection_limit 속성을 구성해요. 컨테이너 배포(예: Docker 또는 Kubernetes)에는 DD_APM_CONNECTION_LIMIT 환경 변수를 사용해요.
최대 메모리 한도 (Maximum memory limit)
Agent 로그에서 다음 오류 메시지가 보이면 Agent가 최대 메모리 사용량을 150% 초과한 것이에요:
CRITICAL | (pkg/trace/api/api.go:703 in watchdog) | Killing process. Memory threshold exceeded: 8238.08M / 715.26M
CRITICAL | (pkg/trace/osutil/file.go:39 in Exitf) | OOM
Agent의 최대 메모리 한도를 높이려면 Agent 구성 파일의 apm_config 섹션에서 max_memory 속성을 구성해요. 컨테이너 배포(예: Docker 또는 Kubernetes)에는 DD_APM_MAX_MEMORY 환경 변수를 사용해요.
오케스트레이터(예: Kubernetes)가 메모리 한도를 처리하도록 하려면, Datadog Agent 7.23.0부터 이 한도를 0으로 설정해 비활성화할 수 있어요.
최대 CPU 백분율 (Maximum CPU percentage)
이 설정은 APM Agent가 사용해야 하는 최대 CPU 백분율을 정의해요. 비-Kubernetes 환경에서 기본값은 50이며, 이는 0.5코어와 같아요(100 = 1코어). 이 한도에 도달하면 CPU 사용량이 다시 한도 아래로 내려갈 때까지 페이로드가 거부돼요. 이는 현재 버려지고 있는 페이로드 백분율을 나타내는 datadog.trace_agent.receiver.ratelimit에 반영돼요(값 1은 버려지는 trace가 없음을 의미). 이는 Service Table View에서 Limited Resource 경고로도 보일 수 있어요.
오케스트레이터(또는 외부 서비스)가 Datadog Agent의 리소스 한도를 관리하게 하려면, Datadog는 환경 변수 DD_APM_MAX_CPU_PERCENT를 0으로 설정해 비활성화할 것을 권장해요(Datadog Agent 7.23.0부터 지원).