• 로그인지금 시작하기

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

호스트 내 통합: 레거시 구성 형식

New Relic Infrastructure 온-호스트 통합 은 두 가지 유형의 구성 형식 중 하나를 사용할 수 있습니다. 이 문서에서는 이전의 레거시 구성 형식에 대해 설명합니다.

중요

New Relic은 개선된 새로운 표준 구성 형식 을 사용할 것을 권장합니다. 구성 파일을 이 새로운 형식으로 업데이트하려면 업데이트 섹션 을 확인하십시오.

구성에 대한 소개는 구성 개요 를 참조하십시오.

구성 파일 구조

표준 구성 형식을 사용하는 호스트 내 통합에는 두 개의 구성 파일이 필요합니다.

정의 파일

정의 파일은 INTEGRATION_NAME-definition.yml 과 같은 명명 형식을 갖습니다. 이 파일은 지원하는 JSON 프로토콜의 버전, 실행할 수 있는 명령 목록 및 수락하는 인수와 같은 통합에 대한 설명 정보를 제공합니다. 다음 디렉토리에 있습니다.

  • 리눅스:

    /var/db/newrelic-infra/newrelic-integrations
  • Windows:

    C:\Program Files\New Relic\newrelic-infra\newrelic-integrations

다음은 Linux 시스템에서 두 개의 명령 섹션이 있는 NGINX 통합 정의 파일의 예입니다.

name: com.myorg.nginx
protocol_version: 2
description: Collect metric and configuration data from NGINX
os: linux
commands:
metrics:
command:
- myorg-nginx
- --metrics
interval: 15
inventory:
command:
- myorg-nginx
- --inventory
interval: 120
prefix: integration/myorg-nginx

정의 파일은 두 부분으로 나눌 수 있습니다.

정의 파일 헤더

다음은 정의 파일의 헤더 요소에 대한 설명입니다.

정의 헤더 필드

설명

name

필수의. 로깅, 내부 측정항목 등을 위한 통합을 식별하기 위한 고유한 이름 name . 에이전트가 구성 파일을 로드할 때 New Relic은 name 을 사용하여 에이전트의 레지스트리에서 통합을 조회합니다.

protocol_version

필수의. 프로토콜의 버전 번호입니다. New Relic은 이를 사용하여 통합과 에이전트 간의 호환성을 보장합니다. 에이전트가 통합 버전을 인식하지 못하는 경우 해당 통합을 필터링하고 로그 메시지를 생성합니다.

JSON 프로토콜의 현재 버전은 2 입니다. 프로토콜 변경 사항에 대한 자세한 내용은 SDK 변경 사항을 참조하십시오.

description

선택 과목. 통합이 하는 일에 대한 인간 친화적인 설명.

os

선택 과목. 통합이 실행되는 운영 체제입니다. New Relic은 이것을 사용하여 특정 운영 체제에서만 실행하려는 통합을 필터링합니다.

기본값: os 값에 관계없이 통합을 실행합니다.

특정 운영 체제로 통합을 제한하려면 다음 옵션 중 하나를 사용하십시오.

  • linux
  • windows

정의 파일 명령

헤더 뒤에는 명령 목록이 있습니다. 명령 섹션은 다음을 정의합니다.

  • 실행 파일에 대한 하나 이상의 독립 작동 모드
  • 실행에 필요한 런타임 데이터

명령 섹션은 명령 정의의 YAML 맵입니다. 여기서 각 키는 실행할 실행 파일을 지정하는 통합 구성 파일에 있는 명령의 고유한 별칭 이름입니다.

정의 명령

설명

command

필수의. 명령 부분의 YAML 배열로 실행할 실제 명령줄입니다. 이들은 실제 명령을 실행하기 위해 어셈블됩니다. 간단한 명령의 경우 배열은 단일 요소일 수 있습니다.

추가 명령 규칙은 다음과 같습니다.

  • command 인수: 통합 구성의 모든 인스턴스에 대해 공유되는 명령 및 모든 명령줄 인수입니다.

  • command 실행: 명령은 정의 파일과 동일한 디렉토리에서 실행됩니다.

  • command 경로: 호스트의 $PATH 에서 사용 가능한 모든 명령을 사용할 수 있습니다. 정의 파일과 같은 디렉터리 또는 그 하위 디렉터리에 있는 실행 파일은 상대 경로를 사용하여 실행할 수 있습니다. 예를 들어:

    • Linux: 정의 파일과 동일한 디렉토리에서 myorg-nginx 이라는 실행 파일을 실행하려면 myorg-nginx 또는 ./myorg-nginx 를 사용할 수 있습니다. Linux 시스템은 사용자가 ./myorg-nginx 를 사용한 것처럼 myorg-nginx 을 실행합니다.
    • Windows: 정의 파일과 동일한 디렉토리에서 myorg-nginx.exe 이라는 실행 파일을 실행하려면 \myorg-nginx.exe 또는 .\myorg-nginx.exe 를 사용할 수 있습니다. myorg-nginx.exe 을 쓰는 Windows 시스템은 현재 경로 .\myorg-nginx.exe 를 나타내는 것처럼 실행됩니다.
    • 호스트의 $PATH 디렉터리에 설치된 명령을 사용하려면 명령 이름을 사용하면 됩니다. 예: python .
    • 호스트의 $PATH 도 통합 디렉토리에도 없는 다른 실행 파일을 실행하려면 실행 파일의 절대 경로를 사용하세요. 예: /opt/jdk/bin/java .

    주어진 실행 파일 이름이 통합 디렉토리 내에 존재하지만 시스템 $PATH 의 다른 곳에도 존재하는 경우 통합 디렉토리의 버전이 우선합니다.

interval

선택 과목. 명령의 두 연속 실행 사이, 특히 이전 실행 종료와 다음 실행 시작 사이의 시간(초)입니다.

  • 메트릭 폴링의 기본값: 30초.
  • 최소(최소): 15초.
  • 경고: 경고에 사용되는 메트릭의 경우 30초 이하의 간격을 사용하십시오.

prefix

선택 과목. category/short_integration_name 형식의 인벤토리 분류. 예: integration/myorg-nginx .

접두사는 플랫폼별 경로가 아닙니다. 슬래시는 카테고리와 short_integration_name 사이의 올바른 구분 기호입니다.

접두사는 최대 2개의 수준을 가질 수 있습니다. 그렇지 않으면 인벤토리가 보고되지 않습니다.

설정되지 않은 경우 기본값: integration/integration_name .

구성 파일

구성 파일INTEGRATION_NAME-config.yml 과 같은 명명 형식을 갖습니다. 이 파일은 실행할 실행 파일과 실행에 필요한 매개변수를 지정합니다. 다음 디렉토리에 있습니다.

  • 리눅스:

    /etc/newrelic-infra/integrations.d/
  • Windows:

    C:\Program Files\New Relic\newrelic-infra\integrations.d

형식 문제를 피하기 위해 YAML 구성 파일을 사용하기 전에 린트 하는 것이 좋습니다.

다음은 하나의 인스턴스가 정의된 구성 파일의 예입니다. 이 필드에 대한 설명은 예제 아래에 설명되어 있습니다.

integration_name: com.myorg.nginx
instances:
- name: nginx1.myorg.com-metrics
command: metrics
arguments:
status_url: http://127.0.0.1/status
labels:
environment: production
role: load_balancer

두 개의 인스턴스가 정의된 구성 파일의 또 다른 예입니다.

integration_name: com.myorg.nginx
instances:
- name: nginx1.myorg.com-metrics
command: metrics
arguments:
status_url: http://one.url/status
labels:
environment: production
role: load_balancer
- name: nginx2.myorg.com-metrics
command: metrics
arguments:
status_url: http://another.url/status
labels:
environment: production
role: load_balancer

구성 파일 필드 정의

구성 파일 필드

설명

integration_name

필수의. 이것은 헤더이며 실행할 실행 파일을 식별하는 데 사용됩니다. 이 이름은 통합의 정의 파일 에 지정된 이름과 정확히 일치해야 합니다.

권장 사항: 고유한 이름을 보장하려면 역 도메인 이름 표기법을 사용하십시오.

name

필수의. 통합의 특정 호출(인스턴스)에 대한 이름입니다. 이것은 이 통합으로 생성된 모든 로그 메시지를 식별하는 데 사용되며 문제 해결 에도 유용합니다.

command

필수의. 실행할 명령입니다. 이것은 통합의 정의 파일 에 지정된 고유한 별칭 이름 중 하나와 정확히 일치해야 합니다.

arguments

선택 과목. 다음과 같은 YAML 객체:

  • 키: 인수 이름. 환경변수로 설정 시 대문자로 변환됩니다.

  • 값: 인수 값입니다. 그대로 통과했습니다.

    인수는 환경 변수 세트로 통합에 사용할 수 있습니다.

    구성 파일의 인수는 대문자로 사용할 수 없으며 밑줄을 사용하여 단어를 구분해야 합니다.

labels

선택 과목. 다음과 같은 YAML 객체:

  • 키: 레이블 이름.
  • 값: 정의된 레이블 값입니다.

integration_user

선택 과목. 에이전트가 통합 바이너리를 실행하는 데 사용할 이름이 있는 문자열입니다.

기본값: usermode 에 따라 다릅니다. 기본적으로 통합은 통합 에이전트를 실행하는 동일한 사용자, 특권 및 비특권 모드의 경우 nri-agent, 루트 모드의 경우 루트 사용자로 실행됩니다.

있는 경우 인프라 에이전트는 지정된 사용자로 통합 바이너리를 실행합니다. 예를 들어, root 과 다른 usermode 에서 에이전트를 실행할 때 통합 바이너리를 루트 사용자로 실행하려면 구성 파일에 integration_user: root 를 추가하기만 하면 됩니다.

Copyright © 2022 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.