파이톤으로 APM 거래를 해보도록 하겠습니다.

OCI의 APM(응용형태 감시)에는 OpenTracing에 대응하는 분산 추적 기능이 포함되어 있다.자바의 Maven 프로젝트와Helidon에서 APM Java 트레이 준비했지만 Python의 경우pyzipkin을 사용하여 APM에도 추적 데이터를 보낼 수 있습니다.
여기서, 우리는 Python 프로그램으로 APM의 분산 추적이 어떻게 사용되는지 테스트할 것이다.
APM에 필요한 사용자 및 권한
이번에는 계정 관리자 사용자를 설정에 사용했기 때문에 생략했지만 일반 사용자의 경우 문서로 이동에 따라 정책을 주었습니다.
APM 도메인 생성
  • 모니터링 및 관리 -> 애플리케이션 모듈 모니터링 -> 관리에서 클릭하여 APM 도메인 생성
  • 이름과 컴파일러 제작을 선택합니다.무료 상자 사용 시 Always Free 선택
  • 제작 후 터미널 포인트와 공용 데이터 키가 필요하기 때문에 사전에 복제한다
  • 운영 환경 준비
    Python을 실행할 수 있는 환경을 준비하고 다음 패키지를 설치합니다. (예를 들어 OCI에서 새로운 VM 실례를 만든 후에 설정을 시작합니다.)
    sudo yum install python3-devel
    sudo pip3 install requests
    sudo pip3 install py_zipkin
    
    #サンプルコードをダウンロード
    wget https://raw.githubusercontent.com/western24/apm4python/main/apmweather.py
    
    이 샘플 코드는 기상청 API에 액세스하여 일기예보 데이터를 가져와 표시하는 간단한 응용 프로그램입니다.코드에는 APM에 추적 데이터를 보내는 코드(zipkin span)가 포함되어 있습니다.
    위 복사된 APM 엔드포인트와 공통 키로 샘플 코드의 8행 및 적자 부분을 대체합니다.
    requests.post('https://APM Endpoint/20200101/observations/public-span?dataFormat=zipkin&dataFormatVersion=2&dataKey=Publid Key',
    예제)
    requests.post(' https://aaaacxxxxxxx.apm-agt.us-ashburn-1.oci.oraclecloud.com/20200101/observations/public-span?dataFormat=zipkin&dataFormatVersion=2&dataKey=P2HVLPEYDQ3R3366OBCIUFOM42Z4xxxx ',
    #アプリケーションの実行 ※130000は東京を示すコード
    $ python3 apmweather.py 130000
    2021-12-22T11:00:00+09:00 東京地方 晴れ 夜 くもり
    
    만약 정확하게 집행할 수 있다면 상술한 오류 정보는 없고 도쿄 일기예보의 정보만 보일 것이다
    APM을 통한 추적 데이터 확인
  • APM-> Track Resource Manager를 클릭하면 Weather Sample APM이라는 애플리케이션의 추적 결과가 표시됩니다.
  • 이 프로그램은 다음과 같은 3개의 스파로 구성되어 있으며, 실제 API에 접근하여 정보를 표시하는 처리는 두 번째 Access Weather API의 SPAN 이름입니다.
  • 이 프로그램은 Python에서 APM 추적의 사용 방법을 이해하기 위해 간단한 설명을 하려고 노력했다.
    코드 내의 zipkinspan은 기능부에 with 문구를 설치함으로써 그 기능을 SPAN으로 정의한다.각 SPAN은 처리 수행 시간을 기록하기 때문에 마이크로서비스와 같은 API를 사용하는 애플리케이션을 조합하는 등 성능 모니터링과 문제점의 특정에 도움이 된다.
    조금 이해하기 어려워요여기.Object Storage와 Kafka를 사용한 샘플도 있으니 참고하세요.

    좋은 웹페이지 즐겨찾기