Ошибка NIfi: процессор OPCUA.Сервер остановлен и не может обрабатывать запросы - PullRequest
0 голосов
/ 04 июня 2019

Я импортировал новый пакет OPCUA в Nifi. Здесь

И этот процессор хорошо читает больше суток, но затем я получаю эту ошибку:

2019-06-04 15:09:17,727 ERROR [Timer-Driven Process Thread-7] d.f.fit.processors.opcua.GetOPCData GetOPCData[id=1e5f35cf-3df7-1e7d-1521-5c8fe9fbd8f6] Failed to process session due to org.apache.nifi.processor.exception.ProcessException: java.util.concurrent.ExecutionException: UaServiceFaultException: status=Bad_ServerHalted, message=The server has stopped and cannot process any requests.: org.apache.nifi.processor.exception.ProcessException: java.util.concurrent.ExecutionException: UaServiceFaultException: status=Bad_ServerHalted, message=The server has stopped and cannot process any requests.
org.apache.nifi.processor.exception.ProcessException: java.util.concurrent.ExecutionException: UaServiceFaultException: status=Bad_ServerHalted, message=The server has stopped and cannot process any requests.
        at de.fraunhofer.fit.opcua.StandardOPCUAService.getValue(StandardOPCUAService.java:388)
        at sun.reflect.GeneratedMethodAccessor272.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:87)
        at com.sun.proxy.$Proxy89.getValue(Unknown Source)
        at de.fraunhofer.fit.processors.opcua.GetOPCData.onTrigger(GetOPCData.java:239)
        at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
        at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1162)
        at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:205)
        at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:117)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

Если я перезапущу StandardOPCUAService с помощью Nifi, я могу получитьданные снова.Как я могу решить эту проблему?Как я могу автоматически перезапустить сервис?

Спасибо.

1 Ответ

0 голосов
/ 04 июня 2019

Ошибка в коде - это то, с чем вам придется столкнуться авторам этого пакета; это не часть управляемого Apache NiFi ядра.

Вы можете автоматизировать перезапуск процессора с помощью NiFi REST API . Вы можете использовать Инструменты разработчика вашего браузера, чтобы «записывать» действия, которые вы будете выполнять с помощью пользовательского интерфейса, и просматривать сетевые вызовы, которые изменяют состояние объекта процессора. Затем используйте cron или другой синхронизированный подход, чтобы вызвать это действие (вы можете даже поместить его в InvokeHTTP процессор на холсте NiFi, если хотите).

...