将日志转发到IBM Cloud日志
平台日志是IBM Cloud平台上的各种服务向用户公开的日志。IBM Analytics Engine支持将来自IBM Analytics Engine服务的日志转发到您已启用以接收平台日志的IBM CloudLogs 实例。
-
平台日志是区域日志。
您可以从服务可用的区域中的 IBM Cloud 上的 IBM Analytics Engine 监视日志。
-
每个区域和每个IBM Cloud帐户只能配置一个IBM Cloud日志实例,以便在该位置收集平台日志。
您可以在一个位置拥有多个IBM Cloud日志实例。 但是,一个地点(区域)只能配置一个实例来接收来自 "IBM Cloud服务的日志,如 "IBM Cloud地点的 "IBM Analytics Engine。
此外,属于某个帐户的IBM Analytics Engine实例生成的日志会转发到同一IBM Cloud帐户下的IBM Cloud日志实例。
要检查配置为接收平台日志的IBM CloudLogs 服务,请参阅 Observability 面板。
启用平台日志记录的先决条件
要查看 IBM Analytics Engine 平台日志,必须使用 IBM Cloud 中的可观察性仪表板来配置平台日志记录。 请参阅 通过 "可观察性" 仪表板配置平台日志,以了解通过“可观察性”仪表板启用日志记录所需的步骤。
日志记录 API
通过“可观察性”仪表板启用平台日志记录后,请继续执行以下部分中的步骤,以了解如何使用 API 端点来启用日志记录,禁用日志记录以及查看日志记录配置。
日志记录 API 调用需要服务实例的 GUID。 如果未记下 GUID,请参阅 检索无服务器实例的 GUID。
现在,公开了两个日志记录 API 端点:
log_forwarding_config
logging
。不推荐使用此 API 端点,将很快停用此端点。 虽然您可以使用此端点,但应该开始使用log_forwarding_config
端点。
从 IBM Analytics Engine 启用日志转发
要启用将IBM Analytics Engine平台日志转发到IBM CloudLogs,请针对现有Analytics Engine实例调用以下 API。
可以使用两种方法来启用转发日志:
-
缺省值: 在这种情况下,您只会发出启用日志转发的请求,与缺省日志源 (
spark-driver
) 相关的日志将开始被转发。 您可以通过以下方式之一实现这一目标:- 通过使用
log_forwarding_config
API 端点: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}'
- 通过使用
logging
API 端点 (不推荐):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日志中用作搜索关键字,以缩小适用日志的搜索范围。 您可以通过以下方式之一实现这一目标:
- 通过使用
log_forwarding_config
API 端点: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>",...]} '
- 通过使用
logging
API 端点 (不推荐):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 CloudLogs 的功能,方法如下。
-
通过使用
log_forwarding_config
API 端点: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}'
-
通过使用
logging
API 端点 (不推荐):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_config
API 端点:curl -X GET https://api.us-south.ae.cloud.ibm.com/v3/analytics_engines/<instance_guid>/log_forwarding_config -H "Authorization: Bearer $TOKEN"
-
通过使用
logging
API 端点 (不推荐):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 应用程序标识:
5438585f-6413-4bb2-9251-8162d34f3dc3
- 为其启用日志转发的源:
spark-driver
和spark-executor
- 关联的标记:
prod
和us-south
下图显示了IBM Cloud日志仪表板中返回的搜索结果示例。 在图像底部,您可以看到在其中输入搜索查询的搜索输入字段。 在此示例中,输入了应用程序标识 5438585f-6413-4bb2-9251-8162d34f3dc3
和源 spark-driver
。
搜索示例:
-
要检索在特定 IBM Analytics Engine 实例中提交的所有 Spark 应用程序的日志,请在搜索窗口中传递实例标识:
4308f7a6-2cfd-4d7e-b7a7-678e71a27957
-
要访存特定 Spark 应用程序的日志,可以传递:
- IBM Analytics Engine 实例标识与 Spark 应用程序标识的组合:
4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3
- 仅应用程序标识:
5438585f-6413-4bb2-9251-8162d34f3dc3
- IBM Analytics Engine 实例标识与 Spark 应用程序标识的组合:
-
要搜索应用程序的 Spark 主日志,可以传递:
- IBM Analytics Engine 实例标识,Spark 应用程序标识和关键字
spark-driver
的组合:4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3 spark-driver
- 应用程序标识与关键字
spark-driver
的组合:5438585f-6413-4bb2-9251-8162d34f3dc3 spark-driver
- IBM Analytics Engine 实例标识,Spark 应用程序标识和关键字
-
要按多个日志源名称进行搜索,可以传递:
- IBM Analytics Engine 实例标识,Spark 应用程序标识和源名称的组合:
4308f7a6-2cfd-4d7e-b7a7-678e71a27957 5438585f-6413-4bb2-9251-8162d34f3dc3 (spark-driver OR spark-executor-2)
- 应用程序标识和日志源名称的组合:
5438585f-6413-4bb2-9251-8162d34f3dc3 (spark-driver OR spark-executor-2)
- IBM Analytics Engine 实例标识,Spark 应用程序标识和源名称的组合:
-
要获取与
us-south
区域和prod
环境中特定实例中运行的所有应用程序相关的日志,可以在搜索字段中输入以下内容:4308f7a6-2cfd-4d7e-b7a7-678e71a27957 "prod us-south"