콘텐츠로 이동

네트워크 프레임워크

다음은 웹 응용 프로그램에 탐지 도구를 장착하기 위한 몇 가지 팁입니다.

통합

다음 라이브러리 중 하나를 사용하는 경우 통합 문서를 검토하십시오.

그렇지 않으면 서버가 WSGI 또는 ASGI를 사용하고 있는지 확인하고 해당 통합을 확인하십시오.

HTTP 서버 요청 및 응답 헤더 캡처

logfire.instrument_fastapi() 와 같은 일부 방법을 사용하면 capture_headers=True 를 전달하여 모든 요청 및 응답 헤더를 스팬에 기록할 수 있습니다. 일반적으로 필요한 모든 것입니다.

더 많은 제어를 원하는 경우 OpenTelemetry 탐지 라이브러리에 요청 및 응답 헤더를 캡처하도록 알리는 세 가지 환경 변수가 있습니다.

  • OTEL_INSTRUMENTATION_HTTP_CAPTURE_HEADERS_SERVER_REQUEST
  • OTEL_INSTRUMENTATION_HTTP_CAPTURE_HEADERS_SERVER_RESPONSE
  • OTEL_INSTRUMENTATION_HTTP_CAPTURE_HEADERS_SANITIZE_FIELDS

각각은 헤더 이름에 대해 대소문자를 구분하지 않는 쉼표로 구분된 정규식 목록을 허용합니다. 처음 두 개는 캡처하여 스팬 속성에 추가할 요청/응답 헤더를 결정합니다. 세 번째는 편집할 헤더 값을 결정합니다.

예를 들어 모든 헤더를 캡처하려면 다음 설정을 만드십시오.

OTEL_INSTRUMENTION_HTTP_CAPTURE_HEADERS_SERVER_REQUEST=."*"
OTEL_INSTRUMENTION_HTTP_CAPTURE_HEADERS_SERVER_RESPONSE=."*"

(이것이 capture_headers=True 가 하는 일입니다.)

X- 로 시작하는 content-type 요청 헤더 및 요청 헤더를 캡처하는 데 전문적입니다.

OTEL_INSTRUMENTION_HTTP_CAPTURE_HEADERS_SERVER_REQUEST="콘텐츠 유형, X-". *"

사용자 자격 증명이 표시되지 않도록 Authorization 헤더 값을 [REDACTED] 로 바꿉니다.

OTEL_INSTRUMENTION_HTTP_CAPTURE_HEADERS_SANITIZE_FIELDS="인증"

(일반적으로 Logfire의 정리 기능에 의존하는 것이 좋습니다.)

백분위수당 HTTP 요청 기간 조회

일반적으로 각 백분위수에 대한 HTTP 요청 기간을 시각화하는 것이 흥미롭습니다. 극단의 영향을 받을 수 있는 평균과 달리 백분위수를 사용하면 요청의 50%, 90%, 95% 또는 99%에 대한 최대 기간을 이해할 수 있습니다.

다음은 HTTP 요청 기간에 대한 백분위수를 계산하기 위한 예제 쿼리입니다.

데이터 세트 AS(
  선택
    time _ ('%time _ _ %', start_time ) AS x,
    (추출(end_time 에서 epoch - start_time ) * 1000)을 _ms로 사용합니다.
  기록에서
  속성은 어디입니까? 'htp.method.'
)
선택
  X,
  백분위수_cont(0.99) WITHIN GROUP(주문 기준 지속시간_ms)을 백분위수_99로,
  백분위수_cont(0.95) WITHIN GROUP(주문 기준 지속시간_ms)을 백분위수_95로,
  백분위수_cont(0.90) 그룹 내(주문 기준 지속시간_ms)를 백분위수_90으로,
  백분위수_cont(0.50) WITHIN GROUP(기간별 주문)을 백분위수_50으로 지정합니다.
데이터 세트에서
x별 그룹
x DESC로 주문;

http.method 속성 세트로 레코드를 필터링한 방법을 확인하십시오. 이것은 HTTP 요청과 관련된 추적을 검색하기 위한 좋은 시작점이지만 설정에 따라 필터를 더 추가해야 할 수도 있습니다.

이 쿼리는 대시보드의 시계열 차트에 적합한 후보입니다.

백분위수당 시간 시리즈 차트로 요청 기간


本文总阅读量次