검색 CLI 명령

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기24분
  • 패턴 디자이너 개선 사항 애플리케이션의 디스커버리 명령줄 인터페이스(CLI)에서 사용할 수 있는 명령 목록입니다.

    스토어에서 앱 요청

    ServiceNow Store 웹 사이트를 방문하면 사용 가능한 모든 앱을 확인하고 스토어에 요청을 제출하는 방법에 대한 정보를 참조할 수 있습니다. 출시된 모든 앱의 누적 릴리스 정보는 ServiceNow Store 버전 기록 릴리스 정보를 참조하십시오.

    discovery-insights

    검색 구성 및 패턴에 대한 상세 정보를 검색합니다. 상세 정보에는 사용자 지정 패턴 정보, 인스턴스 상세 정보 및 플러그인 상세 정보가 포함됩니다.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery discovery-insights
    예제
    다음 명령을 실행하여 검색 구성 및 패턴에 대한 상세 정보를 검색합니다.
    snc discovery discovery-insights
    이 명령은 다음 표의 정보를 포함하는 JSON 객체(기본 형식)를 반환합니다.
    표 1. discovery-insights 명령에서 반환된 JSON 객체
    객체 세부사항
    customizedPatterns
    • patternName: 사용자 지정된 패턴의 이름
    • source: 사용자 지정된 변경 내용이 포함된 위치(예: Default)
    instanceDetails
    • buildDate: 인스턴스 빌드 날짜(형식: MM-DD-YYYY_HHMM)
    • buildName: 인스턴스 빌드의 이름
    pluginDetails 검색 구성과 관련이 있거나 CLI 실행에 필요한 플러그인입니다.
    값 반환
    ✔ Discovery diagnostics successfully completed.
    {
       "customizedPattern": [
          {
             "patternName": "A10",
             "source": "Default"
          },
          {
             "patternName": ".NET Application",
             "source": "Default"
          }
       ],
       "instanceDetails": {
          "buildDate": "09-16-2023_2010",
          "buildName": "utah-p0"
       },
       "pluginDetails": {
          "CMDB CI Class Models": "1.48",
          "Discovery and Service Mapping Patterns": "1.8.0",
          "Pattern Designer Enhancements": "3.1.0",
          "Visibility Content": "6.13.0"
       }
    }

    get-discovery-credentials

    검색 자격 증명 목록을 검색합니다.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery get-discovery-credentials [arguments]
    인수:
    --testableonly: 테스트할 수 있는 자격 증명만 포함합니다. 가능한 값은 true 또는 false입니다.
    예제
    다음 명령을 실행하여 검색 자격 증명 목록을 검색합니다.
    snc discovery get-discovery-credentials
    다음 인수와 함께 명령을 실행하여 테스트 가능한 검색 자격 증명만 나열합니다.
    snc discovery get-discovery-credentials --testableonly="true"
    값 반환
    ✔ Get only testable credentials [ssh, snmpv3, snmp, ssh_private_key, windows, vmware, jdbc, jms]: true
    ✔ Discovery credentials details retrieved
    {
       "credentials": [
          {
             "active": true,
             "name": "shCred",
             "type": "ssh",
             "updated": "2023-10-16 10:57:27"
          },
          {
             "active": true,
             "name": "WindowsCred",
             "type": "windows",
             "updated": "2023-10-10 12:18:17"
          },
          {
             "active": true,
             "name": "Azure",
             "type": "azure",
             "updated": "2022-10-19 05:57:21"
          },
          {
             "active": true,
             "name": "public",
             "type": "snmp",
             "updated": "2023-09-28 07:40:35"
          },
          {
             "active": true,
             "name": "Windows MID Server Service Account",
             "type": "windows",
             "updated": "2023-10-16 10:57:23"
          },
          …
       ]
    }

    get-discovery-logs

    다음과 같은 유연한 옵션을 사용하여 검색 로그를 검색합니다.
    • 상태 필터링
    • 장치 포함
    • ECC(External Communication Channel) 큐 로그
    • 패턴 로그
    • 출력 형식 옵션
    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery get-discovery-logs [arguments]
    인수
    표 2. get-discovery-logs 명령에 대한 인수
    인수 설명
    --status-id 로그를 필터링할 때 기준으로 사용할 검색 상태 번호입니다.
    --devices 장치별 로그를 포함합니다. 가능한 값은 true 또는 false입니다.
    --ecc-queue-logs 연결된 ECC 큐 로그를 포함합니다. 가능한 값은 true 또는 false입니다.
    --pattern-logs 패턴 실행 로그를 포함합니다. 가능한 값은 true 또는 false입니다.
    --pattern-log-level 패턴 로그를 필터링할 때 기준으로 사용할 최대 심각도 수준입니다. 사용 가능한 옵션은 다음과 같습니다.
    • DEBUG: DEBUG 로그 메시지만 포함(기본값)
    • ERROR: ERROR 및 DEBUG 메시지 포함
    • WARN: WARN, ERROR 및 DEBUG 메시지 포함
    • INFO: 모든 메시지 포함
    --log-limit 1-100 사이에서 반환할 최대 로그 레코드 수입니다(기본값: 100). ECC 큐 및 패턴 로그에만 적용됩니다.
    --output-format 로그의 출력 형식입니다. 지원되는 형식은 JSON(기본 형식) 또는 테이블입니다.
    예제
    다음 명령을 실행하여 검색 로그를 검색합니다.
    snc discovery get-discovery-logs [options]
    인수를 한 번에 하나씩 또는 단일 명령으로 포함하여 로그 검색을 사용자 지정합니다.
    • 한 번에 하나의 인수와 함께 명령을 실행하려면 다음을 수행합니다.
      snc discovery get-discovery-logs
      Discovery status number: DIS0010013
      Include Devices: true
      Include ECC Queue logs: true
      Include pattern execution logs: true
      Pattern max log level (INFO, WARN, ERROR, DEBUG): DEBUG
      Maximum number of log records to return: 100
      Output format [supported: json(default), table]: json
    • 명령을 단일 명령으로 실행하려면 다음을 수행합니다.
      snc discovery get-discovery-logs --status-id="DIS0010013" --ecc-queue-logs="true" --devices="true" --pattern-logs="true" --output-format="json"
    반환할 최대 로그 기록 수가 많으면 테이블 출력 형식을 사용하는 것이 좋습니다.
    값 반환
    ✔ Discovery Status details retrieved
    {
       "Devices": [
          {
             "CMDBCI": "",
             "ClassificationProbe": "Windows - Classify",
             "Completed": "4",
             "CompletedActivity": "Updated CI",
             "Created": "2023-10-17 09:25:33",
             "CurrentActivity": null,
             "Issues": "0",
             "ScanStatus": "Completed 4",
             "Started": "4",
             "Status": "DIS0010136"
          }
       ],
       "DiscoveryLogs": [
          {
             "CI": "",
             "Created": "2023-10-17 09:25:24",
             "Device": "",
             "ECCQueueInput": "",
             "Level": "0",
             "Message": "Discovery started",
             "Source": "Discovery",
             "Status": "DIS0010136"
          },
          {
             "CI": "",
             "Created": "2023-10-17 09:26:49",
             "Device": "192.168.1.100",
             "ECCQueueInput": "HorizontalDiscoveryProbe",
             "Level": "0",
             "Message": "Exploring CI Pattern, Pattern name: Windows OS - Servers",
             "Source": "DiscoverySensor",
             "Status": "DIS0010136"
          },
          {
             "CI": "",
             "Created": "2023-10-17 09:27:01",
             "Device": "192.168.1.100",
             "ECCQueueInput": "",
             "Level": "0",
             "Message": "Discovery completed",
             "Source": "Discovery",
             "Status": "DIS0010136"
          }
       ],
       "DiscoveryStatus": [
          {
             "Completed": "5",
             "Created": "2023-10-17 09:25:24",
             "Description": "Discover Now",
             "Discover": "CIs",
             "Duration": "1970-01-01 00:01:37",
             "Number": "DIS0010136",
             "Schedule": "WinServer",
             "Started": "5",
             "State": "Completed",
             "Updated": "2023-10-17 09:27:08"
          }
       ],
    …
    }

    get-midservers

    상태 및 확인 상세 정보를 포함하여 MID 서버에 대한 자세한 정보를 검색합니다. 필요한 경우 출력에 MID 서버 문제 로그를 포함할 수 있습니다.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery get-midservers [arguments]
    인수

    --include-issues: 각 MID 서버에 문제 로그를 포함합니다. 가능한 값은 true 또는 false입니다(기본값: true).

    예제
    다음 명령을 실행하여 MID 서버에 대한 상세 정보를 검색합니다.
    snc discovery get-midservers
    다음 인수와 함께 명령을 실행하여 MID 서버 및 해당 문제 로그의 목록을 검색합니다.
    snc discovery get-midservers --include-issues=true
    값 반환
    ✔ MID Server details were fetched successfully.
    {
       "mid_servers": [
          {
             "home_directory": "C:\\Users\\admin\\Desktop\\midInstallationFolder\\agent",
             "host_name": "LocalLab",
             "host_os_version": "10.0.xxxx",
             "ip_address": "192.168.0.1",
             "issues": [],
             "last_refreshed": "2023-10-01 00:00:00",
             "name": "WindowsMidServer",
             "started": "2023-10-01 00:01:01",
             "status": "Up",
             "sys_id": "cb8d1625c3fdb110c72691477d01312e",
             "unresolved_issues": "0",
             "validated": "true",
             "validated_at": "2023-10-01 00:01:01"
          }
       ]
    }

    get-pattern-commands

    이름 또는 sys_id로 식별되는 지정된 검색 패턴과 연결된 명령의 전체 목록을 검색합니다.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery get-pattern-commands [arguments]
    인수

    --pattern: 패턴 이름 또는 sys_id

    예제
    패턴 이름 또는 sys_id로 명령을 실행하여 지정된 패턴과 연결된 명령의 목록을 검색합니다.
    • Windows OS - Servers라는 패턴 이름을 입력하여 명령을 실행합니다.
      snc discovery get-pattern-commands --pattern="Windows OS - Servers"
    • 670e55a4db702200c06776231f961942라는 패턴 sys_id를 입력하여 명령을 실행합니다.
      snc discovery get-pattern-commands --pattern="670e55a4db702200c06776231f961942"
    값 반환
    ✔ Commands fetched successfully. 
    [
       {
          "Command": "\"\\root\\CIMV2\" \"SELECT Caption,IPAddress,MACAddress,DHCPEnabled,Index,InterfaceIndex,IPEnabled FROM Win32_NetworkAdapterConfiguration\"",
          "Command Type": "wmi",
          "sys_id": "2e677c4ec3adb1106618b10ad0013185"
       },
       {
          "Command": "\"\\root\\CIMV2\" \"SELECT Index,InterfaceIndex,Name,Manufacturer,NetConnectionID FROM Win32_NetworkAdapter\"",
          "Command Type": "wmi",
          "sys_id": "6a677c4ec3adb1106618b10ad0013185"
       },
       {
          "Command": "powershell -command \\Get-NetRoute -AddressFamily IPv6\\",
          "Command Type": "shell",
          "sys_id": "a6677c4ec3adb1106618b10ad0013185"
       },
       {
          "Command": "\"\\root\\CIMV2\" \"SELECT Destination,Mask,NextHop, InterfaceIndex FROM Win32_IP4RouteTable\"",
          "Command Type": "wmi",
          "sys_id": "e2677c4ec3adb1106618b10ad0013185"
       },
       {
          "Command": "\"\\root\\CIMV2\" \"SELECT DefaultIPGateway FROM Win32_NetworkAdapterConfiguration\"",
          "Command Type": "wmi",
          "sys_id": "e6677c4ec3adb1106618b10ad00131ab"
       },
    …
    ]

    get-patterns

    사용 가능한 검색 패턴의 전체 목록을 검색합니다.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery get-patterns
    예제
    다음 명령을 실행하여 사용 가능한 검색 패턴의 목록을 검색합니다.
    snc discovery get-patterns
    값 반환
    ✔ Details of Discovery Patterns successfully retrieved.
    [
       {
          "active": true,
          "ci_type": "cmdb_ci_appl_dot_net",
          "name": ".NET Application",
          "pattern_type": "1 - Application"
       },
       {
          "active": true,
          "ci_type": "cmdb_ci_lb_service",
          "name": "A10",
          "pattern_type": "1 - Application"
       },
       {
          "active": true,
          "ci_type": "cmdb_ci_lb_a10",
          "name": "A10 Load Balancer",
          "pattern_type": "3 - Infrastructure"
       },
       {
          "active": true,
          "ci_type": "cmdb_ci_lb_a10",
          "name": "A10 Load Balancer SSH",
          "pattern_type": "3 - Infrastructure"
       },
       {
          "active": true,
          "ci_type": "cmdb_ci_appl_generic",
          "name": "A10 SSH Hosting Formatting",
          "pattern_type": "2 - Shared library"
       },
       …
    ]

    midserver-action

    MID 서버에서 중지, 재개 또는 다시 시작과 같은 다양한 작업을 실행합니다.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery midserver-action [arguments]
    인수
    표 3. midserver-action 명령에 대한 인수
    인수 설명
    -m 또는 --mid-server MID 서버의 이름 또는 sys_id
    -a 또는 --action MID 서버에서 수행할 작업입니다. 사용 가능한 옵션은 다음과 같습니다.
    • invalidate
    • resume
    • stop
    • pause
    • autoUpgrade
    • upgrade
    • restart
    • file_discovery_refresh
    • grab_logs
    • 확인
    예제
    다음 명령을 사용하여 MID 서버에 대한 작업을 수행합니다.
    snc discovery midserver-action [options]
    다음 명령을 실행하여 MID 서버 WinMidServer를 다시 시작합니다.
    snc discovery midserver-action --mid-server="WinMidServer" --action="restart"
    값 반환
    ✔ Successfully submitted mid-server action
    {
       "Action": "restart",
       "MidServer": "cb8d1625c3fdb110c72691477d01312e",
       "Output": "Mid server restart in-progress."
    }
    
    ✔ Mid server action executed successfully
    restart executed successfully.

    quick-discovery

    지정된 CI(구성 항목) 또는 IP 주소에 대해 빠른 검색을 실행합니다.

    주:
    콜백 재시도 횟수가 최대 한도를 초과하면 다음과 같은 오류 메시지가 표시될 수 있습니다.
    ✗ Discovery Failed.
    {
    "CurrentActivity": "",
    "DiscoveryStatus": {},
    "State": "Active"
    }
    이 메시지는 콜백 재시도 횟수를 초과했지만 검색 실패 후 검색이 백그라운드에서 계속 실행 중임을 나타냅니다. snc discovery get-discovery-logs 명령을 실행하거나 ServiceNow® 인스턴스에서 검색 상태에 대한 업데이트를 확인하여 검색 로그를 확인합니다.
    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery quick-discovery [arguments]
    인수
    표 4. quick-discovery 명령에 대한 인수
    인수 설명
    --type 대상 호스트 유형은 IP 또는 CI입니다.
    --target 대상 호스트의 상세 정보입니다.
    • IP: IP 주소
    • CI: 사용 가능한 옵션은 다음과 같습니다.
      • 이름
      • Sys_id
      • 일련 번호
    --error-logs-only 오류 로그만 포함합니다. 가능한 값은 true 또는 false입니다(기본값: true).
    예제
    지정된 기준을 사용하여 대상 엔터티에 대해 빠른 검색을 실행합니다.
    snc discovery quick-discovery
    • 다음 명령과 인수를 실행하여 IP 주소 192.168.1.100에 대해 빠른 검색을 실행합니다.
      snc discovery quick-discovery --type="ip" --target="192.168.1.100"
    • 이름, sys_id 또는 일련 번호로 명령을 실행하여 지정된 CI에 대해 빠른 검색을 실행합니다.
      • CI 이름 ecommerce001에 대해 빠른 검색을 실행하려면 다음을 입력하십시오.
        snc discovery quick-discovery --type="ci" --target="ecommerce001"
      • CI sys_id d0e8761137201000deeabfc8bcbe5da7에 대해 빠른 검색을 실행하려면 다음을 입력하십시오.
        snc discovery quick-discovery --type="ci" --target="d0e8761137201000deeabfc8bcbe5da7"
      • CI 일련 번호 L3BB911에 대해 빠른 검색을 실행하려면 다음을 입력하십시오.
        snc discovery quick-discovery --type="ci" --target="L3BB911"
    값 반환
    snc discovery quick-discovery --type="ip" --target="192.168.1.100"
    ✔ Discovery job submitted
    Status Number: DIS0010054
    ✔ Discovery is complete
    {
       "DiscoveryLogs": [],
       "DiscoveryStatus": [
          {
             "Completed": "5",
             "Created": "2023-10-17 10:59:52",
             "Description": "Discover CI",
             "Discover": "CIs",
             "Duration": "1970-01-01 00:01:41",
             "Number": DIS0010054,
             "Schedule": "",
             "Started": "5",
             "State": "Completed",
             "Updated": "2023-10-17 11:02:06"
          }
       ],
       "State": "Completed"
    }

    run-command

    지정된 자격 증명, 대상 및 MID 서버를 사용하여 원격 장치에 대한 명령을 실행합니다.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery run-command [arguments]
    인수
    표 5. run-command 명령에 대한 인수
    인수 설명
    --command 실행할 명령입니다.
    --command-type 수행할 작업 유형입니다.
    --credential 명령 실행 시 사용할 자격 증명입니다.
    --midserver 대상과 통신하는 데 사용되는 MID 서버의 이름입니다.
    --os-server 명령을 실행할 서버 운영 체제(서버 OS)를 나타내는 CI 클래스입니다. 예를 들어 Linux 서버의 경우 cmdb_ci_linux_server를 입력합니다.
    --target 명령을 실행할 호스트 IP 주소입니다.
    예제
    WMI(Windows Management Instrumentation) 쿼리가 \root\CIMV2 네임스페이스의 Win32_ComputerSystemProduct 클래스에서 UUIDIdentifyingNumber 속성을 검색하도록 시스템에 요청하도록 하려면 다음 명령을 실행합니다.
    snc discovery run-command --command="\"\\root\\CIMV2\" \"SELECT UUID,IdentifyingNumber FROM Win32_ComputerSystemProduct\"" --command-type="wmi" --credential="WinCred" --midserver="WinMidServer" --os-server="cmdb_ci_win_server" --target="192.168.1.1"
    값 반환
    ✔ The command is sent for execution.
    {
    "eccQueueOutputSysId": "9a3c55a3c33db910c72691477d0131cd"
    }
    
    ✔ Command Executed Successfully...
    {
    "result": {
    "IdentifyingNumber": "VMware-00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00",
    "Name": "VMware Virtual Platform",
    "Object Reference": null,
    "UUID": "61410042-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
    "Version": "None",
    "__CLASS": "Win32_ComputerSystemProduct",
    "internal_classname": "Win32_ComputerSystemProduct",
    "internal_namespace": "root/cimv2"
    }
    }

    test-discovery-credential

    지정된 MID 서버를 사용하여 지정된 대상 시스템에 대한 검색 자격 증명을 확인합니다. 이 명령은 네트워크 검색 작업에 대한 자격 증명 준비 상태만 확인합니다. 검색 자격 증명 또는 대상 시스템에 영향을 주거나 관련 구성을 수정하지는 않습니다.

    중요사항:

    이 명령을 사용하려면 특정 XML 파일을 모듈 액세스 정책 목록으로 가져와야 합니다. 자세한 내용은 Now Support 지식베이스검색 CLI [KB1553142] 문서를 참조하십시오.

    명령 그룹
    상위 그룹: discovery
    필요한 역할
    discovery_admin
    디스커버리와 관련된 서비스를 사용하는 경우 해당 서비스에 필요한 역할이 있어야 합니다.
    명령 구조
    snc discovery test-discovery-credential [arguments]
    인수
    표 6. test-discovery-credential에 대한 인수
    인수 설명
    --dbname 이 자격 증명을 테스트할 데이터베이스의 이름입니다.
    --dbtype 이 자격 증명을 테스트할 데이터베이스 유형입니다. 사용 가능한 옵션은 다음과 같습니다.
    • MSSQL—for Microsoft SQL Server
    • MySQL
    • Oracle
    --Icf InitialContext를 만드는 데 사용되는 JNDI(Java Naming and Directory Interface) 클래스의 이름입니다. JNDI 클래스의 이름에는 먼저 패키지 이름과 클래스 이름이 포함되어야 합니다. 예를 들어 ActiveMQ JNDI 클래스에 연결하려면 org.apache.activemq.jndi.ActiveMQInitialContextFactory를 입력합니다.
    --midserver 이 테스트에 사용할 MID 서버의 이름입니다. Windows 자격 증명을 테스트하려면 Windows MID 서버를 사용해야 합니다.
    --name 자격 증명의 이름입니다.
    --port 이 테스트에 사용할 대상의 포트입니다. 시스템은 이 필드를 선택된 자격 증명 유형의 기본 포트로 미리 채웁니다.
    --target 이러한 자격 증명이 실행되는 대상 호스트입니다. 이 값은 호스트 URL이 될 수 있는 VMware를 제외한 모든 자격 증명 유형의 IP 주소여야 합니다.
    예제
    다음 명령을 실행하여 MID 서버 WinMidServer에 대해 검색 자격 증명 WinCred를 테스트합니다.
    snc discovery test-discovery-credential --name="WinCred" --target="192.168.1.1" --midserver="WinMidServer"
    이 명령은 다음 조건이 충족될 경우 성공 메시지를 반환합니다.
    • 자격 증명이 유효한 경우
    • 대상 시스템에 성공적으로 연결된 경우
    • 지정된 MID 서버가 작동하는 경우
    이러한 조건이 충족되지 않으면 문제를 자세히 설명하는 오류 메시지가 표시됩니다.
    값 반환
    ✔ Discovery credentials tested successfully
    Credential Test Id [ecc-sys-id]: "2b36e40ec3727990c72691477d0131c6"
    ✔ The credential test is complete
    {
       "output": "Test Succeeded"
    }

    디스커버리 CLI에 대한 자세한 내용은 Now Support 지식베이스검색 CLI [KB1553142] 문서를 참조하십시오.