Как лучше всего регистрировать сообщения о рабочих процессах и действиях Cadence?

В моих рабочих процессах и действиях я хотел бы регистрировать некоторые сообщения для целей отладки.

Я видел функцию cadence.GetLogger(ctx).Info(), но не знаю, где найти журналы.


person Emrah Seker    schedule 19.04.2020    source источник


Ответы (1)


Go Client:

В коде рабочего процесса можно использовать следующее:

cadence.GetLogger(ctx).Info(...)

В коде активности вы должны использовать следующее:

cadence.GetActivityLogger(ctx).Info(...)

По умолчанию регистратор будет писать в консоль, что может быть достаточно для целей разработки. Однако вы должны войти в файл, если вам также нужны журналы в производственной среде. Вот как настроить для этого своего работника каденции:

workerOptions := cadence.WorkerOptions{
 Logger: myLogger, 
} 
worker := cadence.NewWorker(service, domain, taskList, workerOptions)

Клиент Cadence использует zap в качестве среды ведения журнала. Вы можете создать zap logger и указать путь к файлу журнала в соответствии с вашими потребностями. Ознакомьтесь с zap-документацией, чтобы узнать больше о настройке журналов. .

Клиент Java

Клиент Java использует slf4j для ведения журнала. Вы можете получить экземпляр регистратора, вызвав Workflow.getLogger() и настроив его в logback.xml как обычно.

person Emrah Seker    schedule 19.04.2020