예제: Log Management REST API
이 예제는 클라우드 조작 Log Management REST API를 사용하여 클라우드 등록의 워크플로우 서버에서 로그를 요청하고 검색하는 방법을 보여줍니다.
이 예제는 로그 요청 목록 가져오기, 사용 가능한 로그 유형 검색, 로그 요청과 다운로드 및 마지막으로 로그 요청과 연관 로그 파일 삭제에 대해 다룹니다.
- 시작하기 전에
- 모든 API 호출의
IBM-CSRF-TOKEN 헤더에 유효한 CSRF(Cross Site Forgery Request) 토큰이 있어야 합니다.
POST /instance/services/csrf_token
을 사용하여 CSRF 토큰을 확보하십시오. 자세한 정보는 CSRF (Cross Site Request Forgery) 방지를 참조하십시오. - 구독에서 로그 검색 요청 목록 표시
- 다음 호출을 사용하여 요청을 검색합니다.
개발 환경 등 환경별로 요청을 필터링하고 페이징을 포함할 수 있습니다.GET /instance/services/logs
GET /instance/services/logs/?environment=dev&offset=5&size=10
- 사용 가능한 로그 유형 검색
- 몇 가지 다른 유형의 로그가 지원됩니다. 구독에서
사용할 수 있는 로그 유형 목록을 가져오려면 다음 호출을 사용하십시오.
해당 목록에는 각 로그 유형에 대한 번역 사용 표시 이름 및 사용 가능한 특성 목록이 포함됩니다.GET /instance/services/log_types
- 환경에 대한 특정 로그 유형 요청
- 다음 호출을 사용하여 로그를 요청합니다.
로그 요청의 세부사항은 호출의 요청 본문에서 JSON 오브젝트로 전달됩니다. 예를 들어, 개발 환경의 애플리케이션 클러스터에서 로그를 요청하려면 호출 본문에 환경 및 로그 유형이 포함되어야 합니다.POST /instance/services/logs
로그 유형에 지원되는 특성에 따라 JSON 오브젝트에서 해당 특성을 설정하여 호출 본문에 더 많은 필터 기준을 추가할 수 있습니다. 예를 들어, 2019년 8월 16일 오후 1시 7분과 오후 1시 17분 사이에 로깅된 모든 이벤트가 포함된 애플리케이션 클러스터 로그를 로그 레벨 all로 요청하려면 다음 호출을 사용하십시오.POST /instance/services/logs ... { "environment": "dev", "log_type": "AppCluster" }
응답에는 로그 ID 및 로그 요청의 상태 및 세부사항이 포함됩니다. 로그 ID를 사용하여 상태, 로그 요청의 세부사항 및 로그 파일을 검색할 수 있습니다. 로그 유형에 지원되지 않는 특성을 지정하면 API에서 오류를 리턴합니다. 모든 지원되는 특성이 포함되지 않으면 누락된 특성에 기본값이 사용됩니다.POST /instance/services/logs ... { "environment": "dev", "log_type": "AppCluster", "start_time": "2019-08-16T13:17:22.421Z", "duration": 10, "min_log_level": "all" }
- 요청된 로그 검색
- log_id 매개변수를 GET 호출에 추가하여 로그 검색 요청의 상태를 확인하십시오.
리턴된 로그 요청에 "사용 가능" 상태가 포함된 경우 다음 호출을 컨텐츠 유형 "application/zip"과 함께 사용하여 로그가 포함된 .zip 파일을 검색할 수 있습니다.GET /instance/services/logs/8015
GET /instance/services/logs/8015/file
- 로그 요청 및 연관된 로그 파일 삭제
- 다음 호출을 사용하여 로그 요청 및 로그 파일을 삭제하십시오.
DELETE /instance/services/logs/8015