합성 모니터링 개발자 가이드
합성 모니터링 API를 사용하여 한 번의 작업으로 여러 합성 모니터를 생성합니다.
이 개발자 가이드에서는 API를 사용하여 Synthetic monitoring Postman 또는 터미널에서 모니터를 대량 생성하는 방법에 대한 정보를 제공합니다.
API를 사용하여 합성 모니터를 대량으로 임포트 및 생성
SyntheticsAsyncBulkCreate API를 통해 원시 JSON 또는 CSV 파일을 가져와 동시에 여러 합성 모니터를 생성합니다.
시작하기 전에
- 유효한 ServiceNow 인스턴스 자격 증명
- HTTP 엔드포인트에 대한 액세스
- 기본 URL: https://<your-instance>.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create
- 필수 필드를 포함하는 모니터 데이터로 준비된 원시 JSON 또는 CSV 파일:
- 모니터 이름
- HTTP 엔드포인트 sys_id
- 상위 서비스 sys_id
- 위치 sys_id
- 지원 그룹의 시스템 ID
- 간격(빈도)
- 메서드("GET", "POST", "PUT", "DELETE", "PATCH", "HEAD")
- 어설션 필드
다음 도구 중 하나: 터미널(curl 명령 사용), Postman 또는 스크립팅 환경.
이 태스크 정보
- 모니터 데이터 파일을 업로드하여 작업 ID를 작성합니다.
- 모니터 생성 상태를 검증하기 위해 작업 상태를 확인합니다.
- curl 명령을 사용하는 터미널
- Postman 애플리케이션
- 사용자 지정 스크립트
- 기본 인증:
curl -u "username:password" - OAuth 토큰:
curl -H "인증: 전달자 <your-oauth-token>"
프로시저
- 원시 JSON 또는 CSV 형식으로 모니터 데이터 파일을 준비합니다.
- 원하는 방법(터미널, Postman 또는 스크립트)을 선택합니다.
- 대량 임포트 API 엔드포인트를 호출하여 파일을 업로드하고 작업 ID를 생성합니다.
- 상태 확인 URL을 사용하여 모니터 생성 상태를 확인합니다.
- 성공적인 모니터 생성 또는 오류 상세 정보에 대한 응답을 검토합니다.
- 올바른 데이터로 소스 파일을 업데이트하고(오류가 있는 경우) 다시 제출합니다.
결과
- 처리 상태(처리/완료)
- 모니터를 작성했습니다.
- 오류 상세 정보(필수 필드 누락, 잘못된 sys_ids 등)가 있는 실패한 모니터
터미널을 사용하여 모니터를 대량으로 생성
터미널에서 curl 명령을 사용하여 SyntheticsAsyncBulkCreate API를 통해 JSON 또는 CSV 파일을 가져와 여러 합성 모니터를 동시에 생성합니다.
시작하기 전에
- 유효한 ServiceNow 인스턴스 자격 증명
- HTTP 엔드포인트에 대한 액세스
- 기본 URL: https://<your-instance>.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create
- 필수 필드를 포함하는 모니터 데이터로 준비된 원시 JSON 또는 CSV 파일:
- 모니터 이름
- HTTP 엔드포인트 sys_id
- 상위 서비스 sys_id
- 위치 sys_id
- 지원 그룹의 시스템 ID
- 간격(빈도)
- 메서드("GET", "POST", "PUT", "DELETE", "PATCH", "HEAD")
- 어설션 필드
이 태스크 정보
SyntheticsAsyncBulkCreate API는 터미널을 통해 액세스할 때 2단계 프로세스를 사용합니다. 먼저 curl 명령을 사용하여 모니터 데이터 파일을 업로드하여 작업 ID를 생성합니다. 그런 다음 작업 상태를 확인하여 모니터 생성을 확인합니다. API는 기록을 비동기식으로 처리하고 성공적인 생성 및 오류에 대한 자세한 피드백을 제공합니다.
JSON 또는 CSV 파일을 업로드하는지 여부에 따라 다른 curl 명령이 필요합니다.
프로시저
결과
모니터는 ServiceNow 인스턴스에 생성됩니다. 성공적으로 생성된 모니터는 즉시 사용할 수 있습니다. 실패한 모니터는 특정 오류 정보와 함께 보고되므로 데이터를 수정하고 다시 제출할 수 있습니다.
전체 워크플로우 예
1단계: JSON 파일 업로드
curl -X POST "https://myinstance.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-u "admin:password123" \
-d @monitor_data.json
응답:
{
"result": {
"job_id": "xyz789abc123",
"status": "processing",
"status_check_url": "https://myinstance.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create/status/xyz789abc123"
}
}
2단계: 상태 확인
curl -X GET "https://myinstance.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create/status/xyz789abc123" \
-H "Accept: application/json" \
-u "admin:password123"
최종 응답:
{
"result": {
"job_id": "xyz789abc123",
"status": "complete",
"total_records": 5,
"successful_records": 5,
"failed_records": 0
}
}
다음에 수행할 작업
성공적으로 생성되면 다음으로 이동하여 ServiceNow UI에서 모니터를 확인합니다. . 필요에 따라 추가 모니터 설정 및 일정을 구성할 수 있습니다.
Postman을 사용하여 모니터를 대량 생성
Postman을 사용하여 SyntheticsAsyncBulkCreate API를 통해 JSON 또는 CSV 파일을 가져와 동시에 여러 합성 모니터를 생성합니다.
시작하기 전에
- 유효한 ServiceNow 인스턴스 자격 증명
- HTTP 엔드포인트에 대한 액세스
- 기본 URL: https://<your-instance>.service-now.com/api/sn_sow_synthetics/v1/synthetics_async_bulk_create
- 필수 필드를 포함하는 모니터 데이터로 준비된 원시 JSON 또는 CSV 파일:
- 모니터 이름
- HTTP 엔드포인트 sys_id
- 상위 서비스 sys_id
- 위치 sys_id
- 지원 그룹의 시스템 ID
- 간격(빈도)
- 메서드("GET", "POST", "PUT", "DELETE", "PATCH", "HEAD")
- 어설션 필드
이 태스크 정보
SyntheticsAsyncBulkCreate API는 Postman을 통해 액세스할 때 2단계 프로세스를 사용합니다. 먼저 POST 요청을 생성하여 모니터 데이터 파일을 업로드하고 작업 ID를 생성합니다. 그런 다음 상태 검사 URL을 사용하여 모니터 생성을 확인합니다. Postman은 API를 테스트하고 형식이 지정된 응답을 볼 수 있는 사용자 친화적인 인터페이스를 제공합니다.
동일한 Postman 구성이 JSON 및 CSV 파일 모두에 대해 작동하며 파일 형식 선택만 다릅니다.
프로시저
결과
모니터는 ServiceNow 인스턴스에 생성됩니다. 성공적으로 생성된 모니터는 즉시 사용할 수 있습니다. 실패한 모니터는 Postman의 응답 뷰어에서 쉽게 검토할 수 있는 구조화된 JSON 형식으로 특정 오류 세부 정보와 함께 보고됩니다.
전체 워크플로우 예
1단계: POST 요청 구성
- 메서드: POST
- URL: https://myinstance.service-now.com/api/now/synthetic/monitor/bulk/import
- 권한 부여: 기본 인증(사용자 이름: admin, 암호: ********)
- 본문: 이진수, 파일 선택됨: monitor_data.json
- 헤더: 콘텐츠 유형: application/json, 수락: application/json
응답 수신:
{
"result": {
"job_id": "xyz789abc123",
"status": "processing",
"status_check_url": "https://myinstance.service-now.com/api/now/synthetic/monitor/bulk/status/xyz789abc123"
}
}
2단계: 상태 확인을 위한 GET 요청 구성
- 메서드: GET
- URL: https://myinstance.service-now.com/api/now/synthetic/monitor/bulk/status/xyz789abc123
- 권한 부여: 기본 인증(작업 공간에서 상속됨)
최종 응답:
{
"result": {
"job_id": "xyz789abc123",
"status": "complete",
"total_records": 5,
"successful_records": 5,
"failed_records": 0
}
}
다음에 수행할 작업
- Postman 요청을 나중에 사용하고 쉽게 다시 제출할 수 있도록 컬렉션에 저장합니다.
- 합성 모니터링 > 모니터로 이동하여 ServiceNow UI에서 모니터를 확인합니다.
- 필요에 따라 일정, 알림 및 임계치와 같은 추가 모니터 설정을 구성합니다.
CSV 파일을 JSON 형식으로 변환
CSV 파일을 JSON 형식으로 변환하여 합성 모니터를 생성합니다.
CSV 파일을 JSON 형식으로 변환
| 운영 체제 | Curl 명령 |
|---|---|
| macOS | jq -Rs '{csv_content: .}' filename.csv |
| Windows Powershell |
|
출력은 터미널에서 사용할 수 있는 JSON 형식으로 래핑된 CSV 콘텐츠입니다. { "csv_content": "이름,방법,설명,간격,cmdb_ci,...\n\"Monitors1\",\"GET\",\"CHECK1\",5,... " }
응답 상태는 작업 ID와 생성된 모니터의 상태를 제공합니다. 오류가 발견되면 파일을 수정하고 동일한 명령을 실행하여 모니터 생성을 완료합니다.