IBM Cloud 로그에 로그 전달하기
플랫폼 로그는 IBM Cloud 플랫폼의 다양한 서비스에서 사용자에게 노출되는 로그입니다. { IBM Analytics Engine 플랫폼 로그를 수신하도록 설정한 IBM Analytics Engine 서비스에서 IBM Cloud Logs 인스턴스로 로그 포워딩을 지원합니다.
-
플랫폼 로그는 지역적입니다.
서비스가 사용 가능한 지역의 IBM Cloud에서 IBM Analytics Engine의 로그를 모니터할 수 있습니다.
-
해당 위치에서 플랫폼 로그를 수집하도록 지역 및 IBM Cloud 계정당 하나의 IBM Cloud 로그 인스턴스만 구성할 수 있습니다.
한 위치에서 여러 개의 IBM Cloud Logs 인스턴스를 보유할 수 있습니다. 하지만 해당 IBM Cloud 위치에 있는 IBM Analytics Engine과 같은 IBM Cloud 서비스에서 로그를 수신하도록 하나의 위치(지역)에 있는 하나의 인스턴스만 구성할 수 있습니다.
또한 계정에 속한 IBM Analytics Engine 인스턴스에서 생성되는 로그는 동일한 IBM Cloud 계정 아래의 IBM Cloud Logs 인스턴스로 전달됩니다.
플랫폼 로그를 수신하도록 구성된 IBM Cloud Logs 서비스를 확인하려면 Observability 대시보드를 참조하세요.
플랫폼 로깅을 사용하기 위한 전제조건
IBM Analytics Engine 플랫폼 로그를 보려면 IBM Cloud에서 관찰 가능성 대시보드를 사용하여 플랫폼 로깅을 구성해야 합니다. 관찰 가능성 대시보드를 통해 로깅을 사용으로 설정하기 위해 수행해야 하는 단계는 관찰 가능성 대시보드를 통해 플랫폼 로그 구성 을 참조하십시오.
로깅 API
관찰 가능성 대시보드를 통해 플랫폼 로깅을 사용으로 설정한 후 다음 섹션의 단계를 진행하여 API 엔드포인트를 사용하여 로깅을 사용으로 설정하고, 로깅을 사용 안함으로 설정하고, 로깅 구성을 보는 방법을 학습하십시오.
로깅 API 호출에는 서비스 인스턴스의 GUID가 필요합니다. GUID를 기록하지 않은 경우 서버리스 인스턴스의 GUID 검색을 참조하십시오.
이제 두 개의 로깅 API 엔드포인트가 노출됩니다.
log_forwarding_configlogging이 API 엔드포인트는 더 이상 사용되지 않으며 곧 중단됩니다. 이 엔드포인트를 사용할 수 있지만log_forwarding_config엔드포인트 사용을 시작해야 합니다.
IBM Analytics Engine에서 로그 전달 사용
IBM Analytics Engine 플랫폼 로그를 IBM Cloud 로그에 전달하려면 기존 Analytics Engine 인스턴스에 대해 다음 API를 호출하세요.
로그 전달을 사용으로 설정하는 데 사용할 수 있는 두 가지 방법이 있습니다.
-
기본값: 이 경우 로그 전달을 사용으로 설정하기 위한 요청만 넣으면 기본 로그 소스 (
spark-driver) 와 관련된 로그가 전달되기 시작합니다. 다음 중 한 방법을 사용할 수 있습니다.log_forwarding_configAPI 엔드포인트를 사용하여 다음을 수행하십시오.curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enabled":true}'loggingAPI 엔드포인트를 사용하여 (더 이상 사용되지 않음):curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enable":true}
-
사용자 정의됨: 이 옵션을 사용하면 로그 전달 구성을 더 많이 제어할 수 있습니다. 예를 들어, 전달하려는 로그의 소스를 지정할 수 있습니다. 또한 일부 태그를 로그와 연결하도록 선택할 수 있으며, 나중에 IBM Cloud Logs에서 검색 키워드로 사용하여 해당 로그의 검색 범위를 좁힐 수 있습니다. 다음 중 한 방법을 사용할 수 있습니다.
log_forwarding_configAPI 엔드포인트를 사용하여 다음을 수행하십시오.curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d ' {"enabled":true,"sources": ["spark-driver", "spark-executor"],"tags": ["<tag_1>", "<tag_2>",...]} 'loggingAPI 엔드포인트를 사용하여 (더 이상 사용되지 않음):curl -X PUT https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d ' {"enable":true,"components": ["spark-driver", "spark-executor"],"tags": ["<tag_1>", "<tag_2>",...]} '
IBM Analytics Engine에서 플랫폼 로깅 사용 안함
다음 방법 중 하나를 사용하여 IBM Analytics Engine 플랫폼 로그를 IBM Cloud 로그에 전달하지 않도록 설정합니다.
-
log_forwarding_configAPI 엔드포인트를 사용하여 다음을 수행하십시오.curl -X PATCH https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enabled":false}' -
loggingAPI 엔드포인트를 사용하여 (더 이상 사용되지 않음):curl -X PATCH https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN" -H "content-type: application/json" -d '{"enable":false}'
IBM Analytics Engine 인스턴스의 로그 전달 구성 보기
다음 방법 중 하나로 IBM Analytics Engine 인스턴스의 현재 로깅 구성을 보십시오.
-
log_forwarding_configAPI 엔드포인트를 사용하여 다음을 수행하십시오.curl -X GET https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN" -
loggingAPI 엔드포인트를 사용하여 (더 이상 사용되지 않음):curl -X GET https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/logging -H "Authorization: Bearer $TOKEN"
IBM Cloud 로그 대시보드의 IBM Analytics Engine 로그 검색 예시
다음과 같이 IBM Analytics Engine 과 관련된 플랫폼 로그의 검색 범위를 좁힐 수 있습니다.
- IBM Cloud 로그 대시보드에서 '
Sources'을 클릭하고 'ibmanalyticsengine'를 선택하면 IBM Analytics Engine 로그를 가져올 수 있습니다. - 검색 범위를 더 좁히기 위해 검색 창에서 Spark 애플리케이션과 관련된 키워드를 입력하고 검색할 수 있습니다.
검색 예제
이 절에서는 로그를 검색하는 방법에 대한 예제를 나열합니다. 예제에서는 모두 다음 샘플 값을 사용합니다.
- IBM Analytics Engine 인스턴스 ID:
4308f7a6-2cfd-4d7e-b7a7-678e71a27957 - Spark 애플리케이션 ID:
5438585f-6413-4bb2-9251-8162d34f3dc3 - 로그 전달이 사용 가능한 소스:
spark-driver및spark-executor - 연관된 태그:
prod및us-south
다음 이미지는 IBM Cloud 로그 대시보드에서 반환된 검색 결과의 예를 보여줍니다. 이미지의 맨 아래에서 검색 조회를 입력하는 검색 입력 필드를 볼 수 있습니다. 예제에서는 애플리케이션 ID 5438585f-6413-4bb2-9251-8162d34f3dc3 및 소스 spark-driver 가 입력되었습니다.
검색 예제:
-
특정 IBM Analytics Engine 인스턴스에서 제출된 모든 Spark 애플리케이션에 대한 로그를 검색하려면 검색 창에서 인스턴스 ID를 전달하십시오.
4308f7a6-2cfd-4d7e-b7a7-678e71a27957 -
특정 Spark 애플리케이션에 대한 로그를 페치하기 위해 다음을 전달할 수 있습니다.
- IBM Analytics Engine 인스턴스 ID와 Spark 애플리케이션 ID의 조합:
4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3 - 애플리케이션 ID만:
5438585f-6413-4bb2-9251-8162d34f3dc3
- IBM Analytics Engine 인스턴스 ID와 Spark 애플리케이션 ID의 조합:
-
애플리케이션의 Spark 마스터 로그를 검색하기 위해 다음을 전달할 수 있습니다.
- IBM Analytics Engine 인스턴스 ID, Spark 애플리케이션 ID및 키워드
spark-driver의 조합:4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3 spark-driver - 애플리케이션 ID와 키워드
spark-driver의 조합:5438585f-6413-4bb2-9251-8162d34f3dc3 spark-driver
- IBM Analytics Engine 인스턴스 ID, Spark 애플리케이션 ID및 키워드
-
여러 로그 소스 이름으로 검색하려면 다음을 전달할 수 있습니다.
- IBM Analytics Engine 인스턴스 ID, Spark 애플리케이션 ID및 소스 이름의 조합:
4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3 (spark-driver OR spark-executor-2) - 애플리케이션 ID와 로그 소스 이름의 조합:
5438585f-6413-4bb2-9251-8162d34f3dc3 (spark-driver OR spark-executor-2)
- IBM Analytics Engine 인스턴스 ID, Spark 애플리케이션 ID및 소스 이름의 조합:
-
us-south리젼 및prod환경 내의 특정 인스턴스에서 실행 중인 모든 애플리케이션과 관련된 로그를 가져오기 위해 검색 필드에 다음을 입력할 수 있습니다.4308f7a6-2cfd-4d7e-b7a7-678e71a27957 "prod us-south"