AccCheckDefsAPI - 범위 지정됨

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기20분
  • AccCheckDefsAPI 스크립트 포함을 사용하면 검사 정의 및 관련 매개변수를 관리할 수 있습니다.

    이 스크립트 포함에는 프레임워크(sn_agent) 스토어 애플리케이션이 필요하며 에이전트 클라이언트 수집기sn_agent 네임스페이스 내에서 제공됩니다. 이 스크립트 포함에는 agent_client_collector_admin 역할이 필요합니다. 자세한 내용은 에이전트 클라이언트 수집기를 참조하십시오.

    이 스크립트 포함에는 인스턴스를 만들기 위한 생성자가 없습니다. 다음 형식의 AccCheckDefsAPI 정적 클래스를 사용하여 각 메서드를 호출합니다.

    sn_agent. AccCheckDefsAPI.<메서드를 사용합니다>

    REST API 솔루션은 에이전트 클라이언트 수집기 API를 참조하십시오.

    이 스크립트 포함은 다음을 가능하게 하는 메서드를 제공합니다.
    • 지정된 검사 정의 가져오기
    • 검사 정의 목록 가져오기
    • 검사 및 검사 매개변수 업데이트

    AccCheckDefsAPI - getCheck(문자열 checkDefId, 부울 withParams)

    상세 정보가 있는 지정된 검사 정의를 가져옵니다.

    표 1. 매개변수
    이름 유형 설명
    체크 정의 ID 문자열 검사 정의 [sn_agent_check_def] 테이블에 나열된 검사 정의의 Sys_id입니다.
    withParams 부울 기존 검사 매개변수 상세 정보가 반환되는지 여부를 나타내는 플래그입니다. 각 표준 및 보안 검사 매개변수에 대한 정보는 JSON 객체에 포함되어 있습니다.
    유효한 값은 다음과 같습니다.
    • true: 검사 매개변수 상세 정보를 반환합니다.
    • false: 검사 매개 변수 세부 정보를 반환하지 않습니다.

    기본값: False

    표 2. 반환
    속성 설명
    검사 지정된 검사 정의의 상세 정보입니다.
    "check ": {
     "background": Boolean,
     "check_group": "String",
     "check_type": "String",
     "command": "String",
     "error": "String",
     "name": "String",
     "params": [Array],
     "plugins": [Array],
     "proxy_valid": Boolean,
     "secure_params": [Array],
     "sys_id": "String",
     "timeout": Number
    }
    check.background 이 검사 정의가 백그라운드 확인인지 여부를 나타내는 플래그입니다. 백그라운드 확인은 에이전트가 실행을 시작하고 실행이 완료될 때까지 기다리지 않는 검사입니다.
    유효한 값은 다음과 같습니다.
    • true: 이 검사 정의는 백그라운드 검사입니다.
    • false: 이 검사 정의는 백그라운드 확인이 아닙니다.

    데이터 유형: 부울

    check.check_group 이 검사 정의에 지정된 그룹입니다.

    데이터 유형: 문자열

    check.check_type 검사 유형입니다.
    가능한 값:
    • 이벤트 – 검사 결과는 Event Management 이벤트로 변환됩니다.
    • 메트릭 – 검사 결과의 값이 메트릭으로 변환됩니다.

    데이터 유형: 문자열

    check.명령 실행되는 명령입니다 에이전트 클라이언트 수집기 .

    데이터 유형: 문자열

    오류.확인.오류 오류가 있는 경우 메시지입니다. 그렇지 않으면 Null입니다.

    데이터 유형: 문자열

    check.name 검사의 이름입니다.

    데이터 유형: 문자열

    check.params 검사 정의와 연결된 매개변수 정의 목록입니다. 이러한 결과는 매개 변수가 true로 설정된 경우에만 withParams 포함됩니다.
    "params": [
      {
        "active": Boolean,
        "default_value": "String",
        "mandatory": Boolean,
        "name": "String",
        "sys_id": "String"
       }
    ]

    데이터 유형: 배열

    check.params.active 검사 매개변수가 활성 상태인지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 검사 매개 변수가 활성 상태입니다.
    • false: 검사 매개 변수가 비활성 상태입니다.

    데이터 유형: 부울

    check.params.default_value 이 검사 매개변수의 기본값을 지정합니다.

    데이터 유형: 문자열

    check.params.필수 검사 매개변수가 필요한지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 검사 매개변수가 필요합니다.
    • false: check 매개 변수는 선택 사항입니다.

    데이터 유형: 부울

    check.params.name 검사 매개변수의 이름입니다.

    데이터 유형: 문자열

    check.params.sys_id 검사 보안 매개변수 정의 [sn_agent_check_param_def] 테이블에 나열된 검사 매개변수의 Sys_id입니다.

    데이터 유형: 문자열

    check.plugins 이 검사와 연결된 에이전트 클라이언트 수집기 플러그인 목록입니다.

    데이터 유형: 배열

    check.proxy_valid 검사 정의 정책이 프록시로 작동하도록 설정되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 이 검사 정의 정책은 프록시로 작동하도록 설정됩니다.
    • false: 이 검사 정의 정책이 프록시로 작동하도록 설정되지 않았습니다.

    데이터 유형: 부울

    check.secure_params 이 검사에 할당된 목록입니다. 이러한 결과는 매개 변수가 true로 설정된 경우에만 withParams 포함됩니다.
    "secure_params": [
      {
        "active": Boolean,
        "name": "String",
        "order": Number,
        "sys_id": "String"
       }
    ]

    데이터 유형: 배열

    check.secure_params.active 보안 매개변수가 활성 상태인지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 보안 매개 변수가 활성 상태입니다.
    • false: 보안 매개 변수가 비활성 상태입니다.

    데이터 유형: 부울

    check.secure_params.name 보안 매개변수의 이름입니다.

    데이터 유형: 문자열

    check.secure_params.주문 매개변수가 검사 명령/스크립트로 전송되는 순서입니다.

    데이터 유형: 숫자

    check.secure_params.sys_id 보안 매개변수 정의 점검 [sn_agent_check_secure_param_def] 테이블에 나열된 보안 매개변수의 Sys_id입니다.

    데이터 유형: 문자열

    check.sys_id 검사 정의 [sn_agent_check_def] 테이블에 나열된 검사 정의의 Sys_id입니다.

    데이터 유형: 문자열

    check.timeout 시간 제한(초)입니다.

    데이터 유형: 숫자

    다음 예제에서는 지정된 검사 정의에 대한 정보를 가져오는 방법을 보여 줍니다.

    var checkDefId = "94436b237f705300f128134f8dfa91a4";
    var withParams = true;
    
    var checkDef = sn_agent.AccCheckDefsAPI.getCheck(checkDefId, withParams);
    
    gs.info(JSON.stringify(checkDef, null, 2));

    출력:

    {
      "check": {
        "name": "app.apache.metrics-apache",
        "command": "metrics-apache-graphite.rb -p {{.labels.params_port}} --path {{.labels.params_path}} -h {{.labels.params_host}}",
        "plugins": [
          "monitoring-plugin-common"
        ],
        "timeout": 60,
        "proxy_valid": true,
        "background": false,
        "check_type": "Metrics",
        "check_group": "Apache",
        "sys_id": "94436b237f705300f128134f8dfa91a4",
        "params": [
          {
            "name": "port",
            "active": true,
            "mandatory": true,
            "default_value": "80",
            "sys_id": "58436b237f705300f128134f8dfa91a8"
          },
          {
            "name": "path",
            "active": true,
            "mandatory": true,
            "default_value": "/server-status?auto",
            "sys_id": "98436b237f705300f128134f8dfa91aa"
          },
          {
            "name": "scheme",
            "active": false,
            "mandatory": false,
            "default_value": null,
            "sys_id": "a4e57a96db3bbb4035305c55dc9619f6"
          },
          {
            "name": "host",
            "active": true,
            "mandatory": true,
            "default_value": "127.0.0.1",
            "sys_id": "d4436b237f705300f128134f8dfa91a6"
          },
          {
            "name": "ssl_secure_connection",
            "active": false,
            "mandatory": false,
            "default_value": null,
            "sys_id": "e3b272c4530100106ffeddeeff7b1275"
          }
        ],
        "secure_params": [
          {
            "name": "cred_user_name",
            "active": true,
            "order": 1,
            "sys_id": "2494cd6e53170010f42cddeeff7b1273"
          },
          {
            "name": "cred_password",
            "active": true,
            "order": 2,
            "sys_id": "35948d6e53170010f42cddeeff7b127f"
          }
        ]
      },
      "error": null
    }

    AccCheckDefsAPI - getChecksList(문자열 encodedQuery, 숫자 제한, 부울 withParams)

    상세 정보가 있는 검사 정의 목록을 가져옵니다.

    검사 및 정책도 참조하십시오.

    표 3. 매개변수
    이름 유형 설명
    encodedQuery 문자열 검사 정의 결과 목록을 필터링하기 위한 인코딩된 쿼리 문자열 입니다. 시스템에서 필터링되지 않은 검사 정의 목록에 null을 사용합니다.
    제한 번호 반환되는 기록 수를 제한합니다. 기본값을 사용하려면 null로 설정합니다.

    기본값: 20,000

    withParams 부울 기존 검사 매개변수 상세 정보가 반환되는지 여부를 나타내는 플래그입니다. 각 표준 및 보안 검사 매개변수에 대한 정보는 JSON 객체에 포함되어 있습니다.
    유효한 값은 다음과 같습니다.
    • true: 검사 매개변수 상세 정보를 반환합니다.
    • false: 검사 매개 변수 세부 정보를 반환하지 않습니다.

    기본값: False

    표 4. 반환
    속성 설명
    검사 정의 JSON 객체로 제공된 검사 정의 및 상세 정보 목록입니다.
    [
      {
        "background": Boolean,
        "check_group": "String",
        "check_type": "String",
        "command": "String",
        "name": "String",
        "params": [Array],
        "plugins": [Array],
        "proxy_valid": Boolean,
        "secure_params": [Array],
        "sys_id": "String",
        "timeout": Number
      }
    ]

    데이터 유형: 배열

    배경 이 검사 정의가 백그라운드 확인인지 여부를 나타내는 플래그입니다. 백그라운드 확인은 에이전트가 실행을 시작하고 실행이 완료될 때까지 기다리지 않는 검사입니다.
    유효한 값은 다음과 같습니다.
    • true: 이 검사 정의는 백그라운드 검사입니다.
    • false: 이 검사 정의는 백그라운드 확인이 아닙니다.

    데이터 유형: 부울

    check_group 이 검사 정의에 지정된 그룹입니다.

    데이터 유형: 문자열

    check_type 검사 유형입니다.
    가능한 값:
    • 이벤트 – 검사 결과는 Event Management 이벤트로 변환됩니다.
    • 메트릭 – 검사 결과의 값이 메트릭으로 변환됩니다.

    데이터 유형: 문자열

    command 실행되는 명령입니다 에이전트 클라이언트 수집기 .

    데이터 유형: 문자열

    이름 검사의 이름입니다.

    데이터 유형: 문자열

    매개변수 검사 정의와 연결된 매개변수 정의 목록입니다. 이러한 결과는 매개 변수가 true로 설정된 경우에만 withParams 포함됩니다.
    "params": [
      {
        "active": Boolean,
        "default_value": "String",
        "mandatory": Boolean,
        "name": "String",
        "sys_id": "String"
       }
    ]

    데이터 유형: 배열

    params.active 검사 매개변수가 활성 상태인지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 검사 매개 변수가 활성 상태입니다.
    • false: 검사 매개 변수가 비활성 상태입니다.

    데이터 유형: 부울

    params.default_value 이 검사 매개변수의 기본값을 지정합니다.

    데이터 유형: 문자열

    params.mandatory 검사 매개변수가 필요한지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 검사 매개변수가 필요합니다.
    • false: check 매개 변수는 선택 사항입니다.

    데이터 유형: 부울

    params.name 검사 매개변수의 이름입니다.

    데이터 유형: 문자열

    params.sys_id 검사 보안 매개변수 정의 [sn_agent_check_param_def] 테이블에 나열된 검사 매개변수의 Sys_id입니다.

    데이터 유형: 문자열

    플러그인 이 검사와 연결된 에이전트 클라이언트 수집기 플러그인 목록입니다.

    데이터 유형: 배열

    proxy_valid 검사 정의 정책이 프록시로 작동하도록 설정되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 이 검사 정의 정책은 프록시로 작동하도록 설정됩니다.
    • false: 이 검사 정의 정책이 프록시로 작동하도록 설정되지 않았습니다.

    데이터 유형: 부울

    secure_params 이 검사에 할당된 목록입니다. 이러한 결과는 매개 변수가 true로 설정된 경우에만 withParams 포함됩니다.
    "secure_params": [
      {
        "active": Boolean,
        "name": "String",
        "order": Number,
        "sys_id": "String"
       }
    ]

    데이터 유형: 배열

    secure_params.활성 보안 매개변수가 활성 상태인지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 보안 매개 변수가 활성 상태입니다.
    • false: 보안 매개 변수가 비활성 상태입니다.

    데이터 유형: 부울

    secure_params.이름 보안 매개변수의 이름입니다.

    데이터 유형: 문자열

    secure_params.주문 매개변수가 검사 명령/스크립트로 전송되는 순서입니다.

    데이터 유형: 숫자

    secure_params.sys_id 보안 매개변수 정의 점검 [sn_agent_check_secure_param_def] 테이블에 나열된 보안 매개변수의 Sys_id입니다.

    데이터 유형: 문자열

    sys_id 검사 정의 [sn_agent_check_def] 테이블에 나열된 검사 정의의 Sys_id입니다.

    데이터 유형: 문자열

    시간 제한 시간 제한(초)입니다.

    데이터 유형: 숫자

    다음 예는 매개변수 값을 사용하여 두 개의 검사 정의 목록을 검색하는 방법을 보여줍니다.

    var encQuery = "nameSTARTSWITHchecks_";
    var limit = 2;
    var withParams = true;
    
    var checkDefs = sn_agent.AccCheckDefsAPI.getChecksList(encQuery, limit, withParams);
    
    gs.info(JSON.stringify(checkDefs, null, 2));

    출력:

    [
      {
        "name": "checks_api_test",
        "command": "echo hello",
        "plugins": [],
        "timeout": 9,
        "proxy_valid": true,
        "background": false,
        "check_type": "TestCheck",
        "check_group": "computer",
        "sys_id": "7f1f9026dba530106f4810284b96194f",
        "params": [],
        "secure_params": [
          {
            "name": "check_api_test_check_secure_param2",
            "active": true,
            "order": 2,
            "sys_id": "2d30a066dba530106f4810284b9619c1"
          },
          {
            "name": "check_api_test_check_secure_param1",
            "active": true,
            "order": 100,
            "sys_id": "4c20a066dba530106f4810284b9619a8"
          }
        ]
      },
      {
        "name": "checks_api_test222",
        "command": "echo hello1212121",
        "plugins": [],
        "timeout": 60,
        "proxy_valid": true,
        "background": false,
        "check_type": "TestCheck",
        "check_group": "computer",
        "sys_id": "99e12466dba530106f4810284b961976",
        "params": [
          {
            "name": "check_api_test_check_param_222",
            "active": true,
            "mandatory": false,
            "default_value": "test_test_test",
            "sys_id": "44026466dba530106f4810284b9619b2"
          }
        ],
        "secure_params": []
      }
    ]

    AccCheckDefsAPI - updateCheck(문자열 checkDefId, 객체 updateJson)

    지정된 검사 정의의 필드 값을 하나 이상 변경할 수 있습니다.

    검사 및 정책도 참조하십시오.

    표 5. 매개변수
    이름 유형 설명
    체크 정의 ID 문자열 검사 정의 [sn_agent_check_def] 테이블에 나열된 검사 정의의 Sys_id입니다.
    업데이트 JSON 객체 새 값으로 업데이트할 검사 정의 필드의 맵입니다. 검사 정의 필드 및 유형의 전체 목록은 데이터 사전을 참조하십시오.
    {
     "background": Boolean,
     "check_group": "String",
     "check_type": "String",
     "command": "String",
     "name": "String",
     "plugins": [Array],
     "proxy_valid": Boolean,
     "timeout": Number
    }
    updateJson.active 번호 이 검사 정의가 활성 상태인지 여부를 나타냅니다.
    유효한 값은 다음과 같습니다.
    • 0: 이 검사 정의가 비활성 상태입니다.
    • 1: 이 검사 정의가 활성 상태입니다.
    updateJson.background 부울 이 검사 정의가 백그라운드 확인인지 여부를 나타내는 플래그입니다. 백그라운드 확인은 에이전트가 실행을 시작하고 실행이 완료될 때까지 기다리지 않는 검사입니다.
    유효한 값은 다음과 같습니다.
    • true: 이 검사 정의는 백그라운드 검사입니다.
    • false: 이 검사 정의는 백그라운드 확인이 아닙니다.
    updateJson.check_group 문자열 이 검사 정의에 지정된 그룹입니다.
    updateJson.check_type 문자열 검사 유형입니다.
    가능한 값:
    • 이벤트 – 검사 결과는 Event Management 이벤트로 변환됩니다.
    • 메트릭 – 검사 결과의 값이 메트릭으로 변환됩니다.
    updateJson.명령 문자열 실행되는 명령입니다 에이전트 클라이언트 수집기 .
    updateJson.name 문자열 검사의 이름입니다.
    updateJson.plugins 배열 목록 에이전트 클라이언트 수집기 플러그인 이 검사와 연결됩니다.
    updateJson.proxy_valid 부울

    검사 정의 정책이 프록시로 작동하도록 설정되었는지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.
    • true: 이 검사 정의 정책은 프록시로 작동하도록 설정됩니다.
    • false: 이 검사 정의 정책이 프록시로 작동하도록 설정되지 않았습니다.
    updateJson.timeout 번호 시간 제한(초)입니다.
    표 6. 반환
    유형 설명
    없음 실패할 경우 오류 메시지.

    다음 예는 검사 정의를 비활성화하는 방법을 보여줍니다.

    var checkJson = sn_agent.AccCheckDefsAPI.getCheck(activeCheckDefs[0].sys_id, true);
    if (!gs.nil(checkJson.error))
    	gs.error(checkJson.error);
    
    var updateJson = {active: "0"}; // deactivate the check definition
    sn_agent.AccCheckDefsAPI.updateCheck(checkJson.check.sys_id, updateJson);

    AccCheckDefsAPI - updateCheckParam(문자열 checkDefParamId, 객체 updateJson)

    지정된 검사 매개변수의 필드 값을 하나 이상 변경할 수 있습니다.

    표 7. 매개변수
    이름 유형 설명
    checkDefParamId (영문) 문자열 검사 매개변수 정의 [sn_agent_check_param_def] 테이블에 나열된 검사 매개변수의 Sys_id입니다.
    업데이트 JSON 객체 새 값으로 업데이트할 검사 매개변수 필드의 맵입니다. 검사 보안 매개변수 정의 필드 및 유형의 전체 목록은 데이터 사전을 참조하십시오.
    {
     "active": Boolean,
     "default_value": "String",
     "mandatory": Boolean,
     "name": "String"
    }
    updateJson.active 부울

    검사 매개변수가 활성 상태인지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.
    • true: 검사 매개 변수가 활성 상태입니다.
    • false: 검사 매개 변수가 비활성 상태입니다.
    updateJson.default_value 문자열 이 검사 매개변수의 기본값을 지정합니다.
    updateJson.mandatory 부울

    검사 매개변수가 필요한지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.
    • true: 검사 매개변수가 필요합니다.
    • false: check 매개 변수는 선택 사항입니다.
    updateJson.name 문자열 검사 매개변수의 이름입니다.
    표 8. 반환
    유형 설명
    없음 실패할 경우 오류 메시지.

    다음 예제에서는 검사 매개 변수를 활성화하는 방법을 보여 줍니다.

    var checkParmSysId = "cd922ce6dba530106f4810284b961966";
    var updateJson = {"active": "true"};
    sn_agent.AccCheckDefsAPI.updateCheckSecureParam(checkParmSysId, updateJson);

    AccCheckDefsAPI - updateCheckSecureParam(문자열 checkDefSecureParamId, 객체 updateJson)

    지정된 보안 검사 매개변수의 필드 값을 하나 이상 변경할 수 있습니다.

    표 9. 매개변수
    이름 유형 설명
    checkDef 보안 매개변수 문자열 보안 매개변수 정의 점검 [sn_agent_check_secure_param_def] 테이블에 나열된 보안 매개변수의 Sys_id입니다.
    업데이트 JSON 객체 새 값으로 업데이트할 검사 보안 매개변수 필드의 맵입니다. 검사 보안 매개변수 정의 필드 및 유형의 전체 목록은 데이터 사전을 참조하십시오.
    {
     "active": Boolean,
     "name": "String",
     "order": Number
    }
    updateJson.active 부울

    보안 매개변수가 활성 상태인지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.
    • true: 보안 매개 변수가 활성 상태입니다.
    • false: 보안 매개 변수가 비활성 상태입니다.
    updateJson.name 문자열 보안 매개변수의 이름입니다.
    updateJson.order 번호 매개변수가 검사 명령/스크립트로 전송되는 순서입니다.
    표 10. 반환
    유형 설명
    없음 실패할 경우 오류 메시지.

    다음 예제에서는 보안 검사 매개 변수를 활성화하는 방법을 보여 줍니다.

    var checkSecParmSysId = "<sys_id>";
    var updateJson = {"active": "true"};
    sn_agent.AccCheckDefsAPI.updateCheckSecureParam(checkSecParmSysId, updateJson);