[英]How to specify source directory and entry point for a SageMaker training job using Boto3 SDK? The use case is start training via Lambda call
[英]boto3 how to get the logstream form a sagemaker transform job?
我能夠使用 boto3 完成這項工作,但它失敗了
import boto3
session = boto3.session.Session()
client = session.client('sagemaker')
descibe = client.describe_transform_job(TransformJobName="my_transform_job_name")
在用戶界面中,我可以看到 go 到日志的按鈕,如果對組名和日志流進行硬編碼,我可以使用 boto3 來檢索日志。
但是我怎樣才能從批量轉換作業中獲取日志 stream? 不應該是“.describe_transform_job”中帶有日志流或類似內容的字段嗎?
sagemaker 沒有提供直接的方法來做到這一點,這樣做的方法是也使用日志客戶端。
獲取與您的 batchtransform_job 對應的日志流
client_logs = boto3.client('logs') log_groups = client_logs.describe_log_streams(logGroupName="the_log_group_name", logStreamNamePrefix=transform_job_name) log_streams_names= [] for i in log_groups["logStreams"]: log_streams_names.append(i["logStreamName"])
這將給出一個“project_name/virtualMachine_id”列表,這是您的代碼運行的機器,具體取決於您設置的實例數量。
在您可以為每個 log_streams 運行之后
for i_stream_name in log_streams_names: client_logs.get_log_events("the_stream_log_name", "the_log_group_name")
現在您可以循環並打印日志 stream 事件的行 =)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.