我正在使用aws-flow与亚马逊的Simple Workflow Server进行交互,我希望将日志记录设置为外部源(PaperTrail)。
我已将$logger
设置为使用PaperTrail,然后将其传递到我用来开始执行的客户端;
client = Aws::SWF::Client.new(region: 'eu-west-1', logger: $logger)
client.start_workflow_execution({
domain: domain,
workflow_id: ...,
workflow_type: {
name: "...",
version: ...
},
task_list: {
name: "..."
}
})
这成功记录了客户端已启动,但未记录工作流或活动内部的操作。
通过阅读文档和this SO answer,您似乎需要在创建新活动时指定记录器,但我看不到如何执行此操作。
主要工作流使用activity_client
选择它需要的活动,并且调用的活动看起来像;
class MyActivity
extend AWS::Flow::Activities
activity :my_activity do {
default_task_list: '...',
version: ...,
default_task_schedule_to_start_timeout: 60,
default_task_start_to_close_timeout: 60,
exponential_retry: { maximum_attempts: 2 }
}
我无法在此设置中看到您可以添加记录器。
非常感谢任何帮助
答案 0 :(得分:0)
结果是aws-flow doesn't support logging。
在问题上有一些关于它的聊天,并且有PR似乎可以解决问题。
根据我的需要,我只是将项目分开(在撰写本文时尚未在2年内更新),并为我做了相关更改。