У меня есть akka camel-ftp
потребитель. Я хотел бы обрабатывать все исключения в коде (например, Authentification Exception или файл на ftp не может быть прочитан). Я вижу только стек из таблицы и не могу его обработать. Возможно, лучше использовать scalaz-camel
.Akka Scala Camel. Обработка исключений
Кроме того, я хотел бы знать, когда все файлы обрабатываются и Actor простаивает недо следующего чтение Папки FTP
class FtpWorkerActor() extends Consumer with ActorLogging {
override def receive: Actor.Receive = {
case msg: CamelMessage => /* handle files */
case v: Any => /*never riched. but i need to understand if I have authentification issues etc*/
}
override def endpointUri: String = {
val initDelay = 1000 // 1 second
val otherOptions = s"disconnect=true&throwExceptionOnConnectFailed=true&filter=#datFileFilter&delay=$processingDelay&initialDelay=$initDelay"
s"ftp://[email protected]$ftpSourcePath?username=$username&password=$pass&$otherOptions"
}
}
Здравствуйте @ sap1ens. Спасибо за ответ. Я добавил 'переопределить VAL supervisorStrategy = OneForOneStrategy (maxNrOfRetries = 2, withinTimeRange = 1 минута) { случай v: GenericFileOperationFailedException => log.warning (v.getMessage) Переначала случай _ Исключение ⇒ Перезагрузка } ' к менеджер актер. но это не сработает. Я вижу в журнале GenericFileOperationFailedException, помеченный как предупреждение (а не ошибка) верблюдом ftp. не могли бы вы поделиться более подробной информацией –