Documentation

12. 지표

지표 끝점은 컨트롤러에 대한 즉각적인 지표를 표시하는 API ``/api/v2/metrics/``에서 사용할 수 있습니다. 이러한 지표는 오픈 소스 프로젝트인 Prometheus와 같은 시스템 모니터링 소프트웨어에서 사용될 수 있습니다.

metrics/ 끝점에 표시되는 데이터 유형은 ``Content-type: text/plain``과 ``application/json``입니다. 이 끝점에는 활성 사용자 세션 수 또는 각 컨트롤러 노드에서 현재 실행 중인 작업 수와 같은 유용한 정보가 포함되어 있습니다. 컨트롤러 지표 끝점을 적중하고 시계열 데이터베이스에 데이터를 저장하여 컨트롤러에서 이러한 지표를 스크랩하도록 Prometheus를 구성할 수 있습니다. 나중에 클라이언트는 Grafana 또는 Metricsbeat와 같은 다른 소프트웨어와 함께 Prometheus를 사용하여 해당 데이터를 시각화하고 경고를 설정할 수 있습니다.

12.1. Prometheus 설정

Prometheus를 설정하고 사용하려면 가상 머신 또는 컨테이너에 Prometheus를 설치해야 합니다. 자세한 내용은 `Prometheus documentation`_를 참조하십시오.

  1. Prometheus 구성 파일(일반적으로 prometheus.yml)에서 <token_value>, 생성한 컨트롤러 사용자의 유효한 사용자/암호, ``<controller_host>``를 지정합니다.

    참고

    또는 ``/api/v2/users/N/personal_tokens/``에서 생성할 수 있는 OAuth2 토큰을 제공할 수 있습니다. 기본적으로 구성은 username=admin, password=password인 사용자를 가정합니다.

/api/v2/tokens 끝점에 생성된 OAuth2 토큰을 사용하여 컨트롤러에서 prometheus를 인증하는 다음 예제에서는 컨트롤러의 지표 끝점의 URL이 ``https://controller_host:443/metrics``인 경우 유효한 스크랩 구성을 제공합니다.

scrape_configs

  - job_name: 'controller'
    tls_config:
        insecure_skip_verify: True
    metrics_path: /api/v2/metrics
    scrape_interval: 5s
    scheme: https
    bearer_token: <token_value>
    # basic_auth:
    #   username: admin
    #   password: password
    static_configs:
        - targets:
            - <controller_host>

경고 및 서비스 검색 구성과 같은 Prometheus의 다른 측면을 구성하는 데 도움이 필요하면 `Prometheus configuration docs`_를 참조하십시오.

Prometheus가 이미 실행 중인 경우, 다시 로드 끝점에 **POST**를 수행하거나 Prometheus 프로세스 또는 서비스를 종료하여 구성 변경 사항을 적용하기 위해 Prometheus를 다시 시작해야 합니다.

  1. 브라우저를 사용하여 ``http://your_prometheus:9090/graph``에서 Prometheus UI의 그래프로 이동한 다음, 일부 쿼리를 테스트합니다. 예를 들어 ``awx_sessions_total{type=》user》}``를 실행하여 현재 활성화된 컨트롤러 사용자 세션 수를 쿼리할 수 있습니다.

_images/metrics-prometheus-ui-query-example.png

추가 쿼리 방법은 인스턴스에 대한 컨트롤러 API의 지표 끝점(api/v2/metrics)을 참조하십시오.