Я ищу, чтобы реализовать запрос/отклик в Spray. Теперь у меня есть пара дополнительных переменных, которые я хочу включить в мой журнал, такие как пользователь (если разрешен) и transactionId, который является всего лишь UUID, который будет использоваться при регистрации различных команд и запросов, чтобы все они могли быть связаны.Scala Спрей, определяющий исключения при регистрации
Теперь, если выбрано исключение, я перехожу в пользовательский ExceptionHandler. Это имеет отношение только к RequestContext, а не к каким-либо дополнительным свойствам, с которыми я хотел бы зарегистрироваться.
Есть ли какой-либо уникальный отступы, доступные в контексте, или каким-либо способом передать дополнительные значения в ExceptionHandler?
Один из способов сделать это, чтобы определить обработчик исключений на уровне, где у вас есть вся эта информация доступна. – jrudolph
'handleException (handler (user, transactionId))' и т. Д. – jrudolph
Это полностью работает и, в отличие от ведения журнала, вложенные обработчики исключений переопределяют предыдущие обработчики, поэтому я могу сделать: обеспечить (UUID.randomUUID) {transactionId => handleException (restExceptionHandler (transactionId) { customAuthDirective() {user => handleException (restExceptionHandler (transactionId, пользователь)) Так что ура для этого! –