Как настроить Apama с поддержкой плагинов Python - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь использовать плагины Python в Apama.К сожалению, я всегда получаю следующее сообщение об ошибке при запуске коррелятора.

Не удалось инициализировать коррелятор: не удалось инициализировать плагин Python.Установите для AP_PYTHONHOME местоположение python

Если я протестирую его локально, приложение будет работать нормально.Но как только я переключаюсь на производственную систему и пытаюсь вызвать приложение Python через файл .mon, возникает эта ошибка.

Может кто-нибудь сказать мне, почему он не может инициализировать Python?

Apama настроен и запущен с помощью следующей команды.

/correlator --config /opt/apama-rules/deploy --applicationLogLevel DEBUG -l /usr/apama/properties/apama/license/icense.xml
2019-01-31 13:39:27.479 ##### [140402990063488] - There are 2 CPU(s)
2019-01-31 13:39:27.479 ##### [140402990063488] - Correlator command line: ./correlator --config /opt/apama-rules/deploy --applicationLogLevel DEBUG -l /usr/apama/properties/apama/license/ApamaServerLicense.xml
2019-01-31 13:39:27.479 ##### [140402990063488] - Current Working Directory: /opt/Apama/bin
2019-01-31 13:39:27.479 ##### [140402990063488] - PATH: /opt/Apama/bin:/jre/bin:/bin:/jre/../bin:/sbin:/usr/sbin:/bin:/usr/bin
2019-01-31 13:39:27.479 ##### [140402990063488] - LD_LIBRARY_PATH: /opt/apama-rules/deploy/lib:/apamawork_10.3/lib:/opt/Apama/lib:/jre/lib/amd64/server:/jre/lib/amd64
2019-01-31 13:39:27.480 ##### [140402990063488] - Current UTC time: 2019-01-31 12:39:27, local timezone: TZ not set so using system default
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - port                     = 15903
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - output queue size        = 10000
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - output queue batch size  = 100
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - output queue mode        = blocking
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - environment variable     = APAMA_PLATFORM=amd64-rhel7
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - environment variable     = AP_PYTHONHOME=/opt/Apama/third_party/python/lib/python3.6/site-packages
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - environment variable     = APAMA_LIBRARY_VERSION=10.3
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - environment variable     = APAMA_JRE=/jre
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - environment variable     = APAMA_ENVSET=10.3:/opt/Apama:amd64-rhel7
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - environment variable     = APAMA_WORK=/apamawork_10.3
2019-01-31 13:39:27.480 ##### [140402990063488] - Input value - environment variable     = APAMA_HOME=/opt/Apama
2019-01-31 13:39:27.480 ##### [140402990063488] - Using memory allocator                 = TBB scalable allocator
[...]
2019-01-31 13:39:27.717 ERROR [140402990063488] - Failed to initialize correlator: Could not initialise the Python plugin. Set AP_PYTHONHOME to the location of python

Ответы [ 5 ]

0 голосов
/ 01 февраля 2019

Хорошо, проблема в том, что версия Python по умолчанию связана с 2.7. Я изменил версию на версию 3. alias python = '/ usr / bin / python3'.

0 голосов
/ 31 января 2019

Были и другие хорошие ответы (они не позволят мне добавить комментарий), но я отмечу, что если у вас полная установка (сообщество или иное) или образ докера, вам не нужноустановить AP_PYTHONHOME на всех.Если Python находится внутри установки Apama, он будет расположен автоматически.

Если вы используете базовую установку, вам нужно будет указать собственную установку Python и указать AP_PYTHONHOME.Документация для этого может быть найдена в этом сообщении в блоге: http://www.apamacommunity.com/using-python-plug-ins-with-the-apama-core-installation/

0 голосов
/ 31 января 2019

Чтобы коррелятор мог найти библиотеку python для загрузки, переменная окружения AP_PYTHONHOME должна быть установлена ​​в местоположение python, а не в расположение пакетов сайта python.Попробуйте установить AP_PYTHONHOME в / opt / Apama / third_party / python (при условии, что именно там установлен ваш питон).Я отмечу, что полезно иметь пакеты python для сайтов на вашей PYTHONPATH.

0 голосов
/ 31 января 2019

Глядя на переменные окружения, у вас есть: AP_PYTHONHOME = / opt / Apama / third_party / python / lib / python3.6 / site-packages

Я был бы удивлен, если это правильный каталог: Iдумаю, что вы хотите AP_PYTHONHOME = / opt / Apama / third_party / python

0 голосов
/ 31 января 2019

Убедитесь, что вы экспортировали переменную env AP_PYTHONHOME = / путь к python /.Например,

export AP_PYTHONHOME = / usr / local / python / 3.6.6

должен быть установлен в вашем профиле bash.AP_PYTHONHOME - это родительский каталог, заданный параметром --prefix во время установки python.

...