从 Cadence 工作流程和活动中记录消息的最佳方式是什么?
What’s the best way to log messages from Cadence workflows and activities?
在我的工作流程和活动中,我想记录一些消息用于调试目的。
我看到了cadence.GetLogger(ctx).Info()
函数,但不知道在哪里可以找到日志。
去客户端:
您可以在工作流代码中使用以下内容:
cadence.GetLogger(ctx).Info(...)
在activity代码中,您应该使用以下内容:
cadence.GetActivityLogger(ctx).Info(...)
默认情况下,记录器将写入控制台,这可能足以满足开发目的。但是,如果您在生产环境中也需要日志,则应该记录到一个文件中。以下是设置 Cadence Worker 的方法:
workerOptions := cadence.WorkerOptions{
Logger: myLogger,
}
worker := cadence.NewWorker(service, domain, taskList, workerOptions)
Cadence 客户端使用 zap as the logging framework. You can create the zap logger and specify the log file path per your needs. Check out the zap documentation 了解有关配置日志的更多信息。
Java 客户端
Java 客户端使用 slf4j
进行日志记录。您可以通过调用 Workflow.getLogger()
获取记录器实例,并像往常一样在 logback.xml
中配置它。
在我的工作流程和活动中,我想记录一些消息用于调试目的。
我看到了cadence.GetLogger(ctx).Info()
函数,但不知道在哪里可以找到日志。
去客户端:
您可以在工作流代码中使用以下内容:
cadence.GetLogger(ctx).Info(...)
在activity代码中,您应该使用以下内容:
cadence.GetActivityLogger(ctx).Info(...)
默认情况下,记录器将写入控制台,这可能足以满足开发目的。但是,如果您在生产环境中也需要日志,则应该记录到一个文件中。以下是设置 Cadence Worker 的方法:
workerOptions := cadence.WorkerOptions{
Logger: myLogger,
}
worker := cadence.NewWorker(service, domain, taskList, workerOptions)
Cadence 客户端使用 zap as the logging framework. You can create the zap logger and specify the log file path per your needs. Check out the zap documentation 了解有关配置日志的更多信息。
Java 客户端
Java 客户端使用 slf4j
进行日志记录。您可以通过调用 Workflow.getLogger()
获取记录器实例,并像往常一样在 logback.xml
中配置它。