Вам нужно будет отредактировать эту строку в скрипте nifi-registry.sh
, чтобы включить удаленную отладку
run_nifi_registry_cmd="'${JAVA}' -cp '${BOOTSTRAP_CLASSPATH}' -Xms12m -Xmx24m ${BOOTSTRAP_DIR_PARAMS} org.apache.nifi.registry.bootstrap.RunNiFiRegistry $@"
Это только у меня, или этот объем памяти действительно мал?
Например, в Кафке есть этот раздел скрипта запуска
# Set Debug options if enabled
if [ "x$KAFKA_DEBUG" != "x" ]; then
# Use default ports
DEFAULT_JAVA_DEBUG_PORT="5005"
if [ -z "$JAVA_DEBUG_PORT" ]; then
JAVA_DEBUG_PORT="$DEFAULT_JAVA_DEBUG_PORT"
fi
# Use the defaults if JAVA_DEBUG_OPTS was not set
DEFAULT_JAVA_DEBUG_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=${DEBUG_SUSPEND_FLAG:-n},address=$JAVA_DEBUG_PORT"
if [ -z "$JAVA_DEBUG_OPTS" ]; then
JAVA_DEBUG_OPTS="$DEFAULT_JAVA_DEBUG_OPTS"
fi
echo "Enabling Java debug options: $JAVA_DEBUG_OPTS"
KAFKA_OPTS="$JAVA_DEBUG_OPTS $KAFKA_OPTS"
fi
Затем он запускается в конечном итоге ${JAVA} ... ${KAFKA_OPTS}
, и если вы остановите сервер Kafka и запустите его с
export KAFKA_DEBUG=y; kafka-server-start ...
Затем вы можете подключить удаленный отладчик к порту 5005 по умолчанию
Я понимаю, что вы используете реестр NiFi, а не Kafka, но в основном вам нужно добавить аргументы в JVM и перезагрузить его. Вы не можете просто присоединиться к работающему Реестру и пройтись по исходному коду.
Удаленная отладка приложения Java