문제
transaction_tracer.detail=1
이 설정된 트랜잭션 추적에서 계측되지 않은 시간의 빨간색 블록이 표시됩니다.
원인
트랜잭션 추적에서 계측되지 않은 시간의 빨간색 블록이 표시되는 데에는 두 가지 이유가 있습니다.
첫 번째 이유는 자주 호출되고 매우 빠른 함수가 있는 경우입니다(상위 100개 목록에 대한 기본 2ms 임계값 미만).
두 번째이자 가장 일반적인 이유는 다음과 같은 경우입니다.
- 실행 시간이 오래 걸린다
- C로 작성
- 내부 기능이거나 외부 모듈에서 제공하는 기능입니다.
이 상황에서 가장 빈번하게 발생하는 원인은 대용량 데이터 블록이나 대용량 파일을 사용자에게 보내는 기능입니다. 사용자가 연결 속도가 느린 경우 간단한 네트워크 대기 시간으로 인해 작은 파일(예: 작은 이미지)을 보내는 데 시간이 오래 걸릴 수 있습니다. 내부 또는 C 확장 기능이 계측되지 않기 때문에 PHP 에이전트는 소요된 시간을 "비난"할 사람이 없으며 이는 트랜잭션 추적에서 계측되지 않은 시간으로 나타납니다.