Для esbAnalytics не существует расширения: распаковать

Я пытаюсь распаковать входящие события с помощью приложения siddhi на потоковом процессоре WSO2. В более ранней версии (например, DAS) было расширение siddhi esbAnalytics: распаковать, но если я использую это расширение в SP, возникает ошибка «Расширение не существует для esbAnalytics: распаковать»

from FlowEntry#esbAnalytics:decompress(meta_compressed, meta_tenantId, flowData, messageId)
select messageFlowId, host, hashCode, componentName, componentType, componentIndex, componentId,  startTime, endTime, duration, beforePayload, afterPayload, contextPropertyMap, transportPropertyMap, children, entryPoint, entryPointHashcode, faultCount,metaTenantId, _timestamp
group by messageFlowId
insert into TestOutputFlowEntry;

Есть ли способ использовать esbAnalytics: распаковать на SP или каким-либо другим способом распаковать входящее событие flowEntry? Заранее спасибо.


person Dominik Zatloukal    schedule 08.02.2018    source источник


Ответы (3)


esbAnalytic: декомпрессия - это пользовательское расширение, написанное на Siddhi 3. Чтобы использовать его в SP, его необходимо перенести на Siddhi 4, так как есть изменения API.

Попробуйте руководство по написанию пользовательского расширения, чтобы порт это. Кроме того, Siddhi 4 идентифицирует расширения с помощью аннотаций, это закомментировано в сгенерированном коде для простоты использования. Добавьте следующее в расширенный потоковый процессор, как в математическое расширение

@Extension(
    name = "decompress",
    namespace = "esbAnalytics",
    description = "decompress function",
    examples = {
            @Example(
                    syntax = "FlowEntry" +
                            "#esbAnalytics:decompress(meta_compressed, meta_tenantId, flowData, messageId)\n",
                    description = "the above syntax can be used"
            )
    }
)

После написания расширения поместите банку в каталог {SP_HOME} / lib, чтобы использовать его в приложении Siddhi.

person Niveathika    schedule 08.02.2018
comment
Спасибо за ответ. Что именно вы имеете в виду под изменениями API? - person Dominik Zatloukal; 09.02.2018
comment
Он расширяет класс Siddhi Stream Processor, который можно использовать для обработки событий. Методы, доступные в классе, были изменены, чтобы включить дополнительные функции. - person Niveathika; 09.02.2018
comment
На самом деле я портировал это расширение на Siddhi 4 и внес все необходимые изменения, построил файл jar и поместил его в каталог lib, но по-прежнему возникает та же ошибка. Расширение не существует для esbAnalytics: распаковать. Есть ли какие-то правила относительно имени этого файла jar или чего-то еще, что можно сделать не так? - person Dominik Zatloukal; 13.02.2018
comment
Siddhi 4 определяет расширения на основе аннотации на уровне класса, я отредактировал ответ, чтобы включить эту информацию. - person Niveathika; 14.02.2018
comment
Еще раз спасибо за ответ. После того, как я добавил эту аннотацию к расширению, построил ее и поместил в каталог lib, та же ошибка появляется снова. Также я попытался использовать расширение, которое уже поставляется с SP, в частности reorder: kslack, но снова выдается ошибка «Нет расширения». Вроде баг SP? РЕДАКТИРОВАТЬ: если я попробую другое расширение, например приблизительный: count - вроде все нормально, ошибка исчезла. Но переупорядочите расширение и мой собственный доп. не работает, и ошибка по-прежнему появляется. - person Dominik Zatloukal; 14.02.2018
comment
Да, я тоже наблюдаю такое же поведение. У меня возникла проблема (github.com/wso2-extensions/siddhi- Execution-reorder / issues / 24) в репозитории siddhi-execution-reorder, чтобы отслеживать это. Обновит это после решения проблемы Спасибо за сообщение. - person Niveathika; 14.02.2018
comment
Привет, это исправлено в последней версии, добавьте {maven-resources} в плагин пакета ‹Include-Resources›, чтобы решить эту проблему. См. Здесь (github.com/wso2 -extensions / siddhi-execution-reorder / blob / master /) - person Niveathika; 15.02.2018
comment
Наконец, он работает без ошибки расширения! Большое спасибо! - person Dominik Zatloukal; 15.02.2018

На самом деле я портировал это расширение на Siddhi 4 и внес все необходимые изменения, построил файл jar и поместил его в каталог lib, но по-прежнему возникает та же ошибка «Расширение для esbAnalytics не существует: распаковать». Есть ли какие-то правила относительно имени этого файла jar или чего-то еще, что можно сделать не так?

person Dominik Zatloukal    schedule 12.02.2018

Вышеупомянутое расширение было выпущено по умолчанию в WSO2 Stream Processor 4.3.0 и далее.

person Niveathika    schedule 08.11.2018