diff --git a/Dockerfile b/Dockerfile
index 9bae098..ac4c8bb 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM eclipse-temurin:17-jre-alpine
+FROM eclipse-temurin:21-jre-alpine
MAINTAINER ru.nbch
VOLUME /opt/app/logs/app
@@ -8,7 +8,8 @@ VOLUME /opt/app/reports
WORKDIR /opt/app
COPY maven/elastic-apm-agent-1.45.0.jar /opt/app/elastic-apm-agent.jar
-COPY maven/credit-tracker.jar /opt/app/credit-tracker.jar
+COPY maven/credit-tracker-main.jar /opt/app/credit-tracker-main.jar
+COPY maven/credit-tracker-monitoring.jar /opt/app/credit-tracker-monitoring.jar
COPY maven/start-credit-tracker.sh /opt/app/start-credit-tracker.sh
COPY maven/credit-tracker.properties /opt/app/credit-tracker.properties
COPY maven/monitoring-request.xsd /opt/app/monitoring-request.xsd
@@ -20,4 +21,3 @@ RUN apk add --no-cache ca-certificates \
RUN apk add gcompat bash
RUN chmod +x /opt/app/start-credit-tracker.sh
-ENTRYPOINT ["/opt/app/start-credit-tracker.sh"]
diff --git a/docker_compose/credit_tracker_config.env b/docker_compose/credit_tracker_config.env
index ee8f9ad..9eed6b5 100644
--- a/docker_compose/credit_tracker_config.env
+++ b/docker_compose/credit_tracker_config.env
@@ -1,14 +1,15 @@
#commons
-APP_VERSION=1.20
-REGISTRY_URL=rh8-vm3.nbki.msk:5000
-JMX_PORT=
+APP_VERSION=2.0
+REGISTRY_URL=10.230.238.56:5000
+JMX_MAIN_PORT=11001
+JMX_MONITORING_PORT=11002
JMX_HOSTNAME=
#volumes
-REPORT_DIR=D:\folder_name\signals
-LOGS_DIR=D:\folder_name\signals\logs\app
-JSON_LOGS_DIR=D:\folder_name\signals\logs\json
-ACCESS_LOGS_DIR=D:\folder_name\signals\logs\access
+REPORT_DIR=/opt/credit_tracker_docker/reports
+LOGS_DIR=/opt/credit_tracker_docker/logs
+JSON_LOGS_DIR=/opt/credit_tracker_docker/logs/json
+ACCESS_LOGS_DIR=/opt/credit_tracker_docker/logs/access
#APM settings
APM_SERVICE_NAME=credit-tracker
diff --git a/docker_compose/docker-compose.yml b/docker_compose/docker-compose.yml
index 7c6a16a..dd67781 100644
--- a/docker_compose/docker-compose.yml
+++ b/docker_compose/docker-compose.yml
@@ -11,13 +11,14 @@ services:
ports:
- "${HOST_PORT}:${SERVER_PORT}"
environment:
+ - APP_JAR=main
- TZ=Europe/Moscow
- - APM_SERVICE_NAME=${APM_SERVICE_NAME}
+ - APM_SERVICE_NAME=${APM_SERVICE_NAME}-${APP_JAR}
- APM_SERVER_URLS=${APM_SERVER_URLS}
- APM_ENVIRONMENT=${APM_ENVIRONMENT}
- APM_SERVICE_NODE_NAME=${APM_SERVICE_NODE_NAME}
- APM_SERVICE_VERSION=${APP_VERSION}
- - JMX_PORT=${JMX_PORT}
+ - JMX_PORT=${JMX_MAIN_PORT}
- JMX_HOSTNAME=${JMX_HOSTNAME}
- SERVER_PORT=${SERVER_PORT}
- DB_URL_INDIC=${DB_URL_INDIC}
@@ -60,4 +61,65 @@ services:
- SIGNALS_USER=${SIGNALS_USER}
- MONITORING_INTERVAL=${MONITORING_INTERVAL}
- UPDATE_FLAGS_INTERVAL=${UPDATE_FLAGS_INTERVAL}
- - DAYS_TO_UPDATE_FLAGS=${DAYS_TO_UPDATE_FLAGS}
\ No newline at end of file
+ - DAYS_TO_UPDATE_FLAGS=${DAYS_TO_UPDATE_FLAGS}
+ command: ["/opt/app/start-credit-tracker.sh"]
+
+ credit-tracker-monitoring:
+ image: ${REGISTRY_URL}/credit-tracker:${APP_VERSION}
+ container_name: credit-tracker-monitoring
+ restart: always
+ volumes:
+ - ${LOGS_DIR}:/opt/app/logs/app
+ - ${JSON_LOGS_DIR}:/opt/app/logs/json
+ environment:
+ - APP_JAR=monitoring
+ - TZ=Europe/Moscow
+ - APM_SERVICE_NAME=${APM_SERVICE_NAME}-${APP_JAR}
+ - APM_SERVER_URLS=${APM_SERVER_URLS}
+ - APM_ENVIRONMENT=${APM_ENVIRONMENT}
+ - APM_SERVICE_NODE_NAME=${APM_SERVICE_NODE_NAME}
+ - APM_SERVICE_VERSION=${APP_VERSION}
+ - JMX_PORT=${JMX_MONITORING_PORT}
+ - JMX_HOSTNAME=${JMX_HOSTNAME}
+ - DB_URL_INDIC=${DB_URL_INDIC}
+ - USERNAME_INDIC=${USERNAME_INDIC}
+ - PASSWORD_INDIC=${PASSWORD_INDIC}
+ - MAXIMUM_POOL_SIZE_INDIC=${MAXIMUM_POOL_SIZE_INDIC}
+ - MINIMUM_IDLE_INDIC=${MINIMUM_IDLE_INDIC}
+ - CONNECTION_TIMEOUT_INDIC=${CONNECTION_TIMEOUT_INDIC}
+ - VALIDATION_TIMEOUT_INDIC=${VALIDATION_TIMEOUT_INDIC}
+ - IDLE_TIMEOUT_INDIC=${IDLE_TIMEOUT_INDIC}
+ - MAX_LIFETIME_INDIC=${MAX_LIFETIME_INDIC}
+ - KEEPALIVE_TIME_INDIC=${KEEPALIVE_TIME_INDIC}
+ - LEAK_DETECTION_THRESHOLD_INDIC=${LEAK_DETECTION_THRESHOLD_INDIC}
+ - DB_URL_SIGNAL=${DB_URL_SIGNAL}
+ - USERNAME_SIGNAL=${USERNAME_SIGNAL}
+ - PASSWORD_SIGNAL=${PASSWORD_SIGNAL}
+ - MAXIMUM_POOL_SIZE_SIGNAL=${MAXIMUM_POOL_SIZE_SIGNAL}
+ - MINIMUM_IDLE_SIGNAL=${MINIMUM_IDLE_SIGNAL}
+ - CONNECTION_TIMEOUT_SIGNAL=${CONNECTION_TIMEOUT_SIGNAL}
+ - VALIDATION_TIMEOUT_SIGNAL=${VALIDATION_TIMEOUT_SIGNAL}
+ - IDLE_TIMEOUT_SIGNAL=${IDLE_TIMEOUT_SIGNAL}
+ - MAX_LIFETIME_SIGNAL=${MAX_LIFETIME_SIGNAL}
+ - KEEPALIVE_TIME_SIGNAL=${KEEPALIVE_TIME_SIGNAL}
+ - LEAK_DETECTION_THRESHOLD_SIGNAL=${LEAK_DETECTION_THRESHOLD_SIGNAL}
+ - DB_URL_SCORING=${DB_URL_SCORING}
+ - USERNAME_SCORING=${USERNAME_SCORING}
+ - PASSWORD_SCORING=${PASSWORD_SCORING}
+ - MAXIMUM_POOL_SIZE_SCORING=${MAXIMUM_POOL_SIZE_SCORING}
+ - MINIMUM_IDLE_SCORING=${MINIMUM_IDLE_SCORING}
+ - CONNECTION_TIMEOUT_SCORING=${CONNECTION_TIMEOUT_SCORING}
+ - VALIDATION_TIMEOUT_SCORING=${VALIDATION_TIMEOUT_SCORING}
+ - IDLE_TIMEOUT_SCORING=${IDLE_TIMEOUT_SCORING}
+ - MAX_LIFETIME_SCORING=${MAX_LIFETIME_SCORING}
+ - KEEPALIVE_TIME_SCORING=${KEEPALIVE_TIME_SCORING}
+ - LEAK_DETECTION_THRESHOLD_SCORING=${LEAK_DETECTION_THRESHOLD_SCORING}
+ - ACCEPTED_XML_SIZE=${ACCEPTED_XML_SIZE}
+ - ACCEPTED_ARCHIVE_SIZE=${ACCEPTED_ARCHIVE_SIZE}
+ - SIGNALS_ROOT_URI=${SIGNALS_ROOT_URI}
+ - SIGNALS_TOKEN=${SIGNALS_TOKEN}
+ - SIGNALS_USER=${SIGNALS_USER}
+ - MONITORING_INTERVAL=${MONITORING_INTERVAL}
+ - UPDATE_FLAGS_INTERVAL=${UPDATE_FLAGS_INTERVAL}
+ - DAYS_TO_UPDATE_FLAGS=${DAYS_TO_UPDATE_FLAGS}
+ command: ["/opt/app/start-credit-tracker.sh"]
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 3338c8e..d6966c7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,6 +19,8 @@
git_info
git.properties
10.230.238.56:5000
+ main
+ monitoring
@@ -168,7 +170,13 @@
- ${project.build.directory}/${project.build.finalName}.jar
+ ${project.build.directory}/${project.build.finalName}-${jar.main.name}.jar
+
+ .
+
+
+
+ ${project.build.directory}/${project.build.finalName}-${jar.monitoring.name}.jar
.
@@ -252,7 +260,7 @@
ru.nbch.credit_tracker.service.mode.common.CTMainApplication
- main
+ ${jar.main.name}
true
@@ -271,7 +279,7 @@
ru.nbch.credit_tracker.service.mode.monitoring.CTMonitoringApplication
- monitoring
+ ${jar.monitoring.name}
true
diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml
index e0f5bce..3c2d7ee 100644
--- a/src/main/resources/logback.xml
+++ b/src/main/resources/logback.xml
@@ -1,8 +1,8 @@
-
-
+
+
diff --git a/src/main/resources/sql/v2.21.ddl b/src/main/resources/sql/v2.21.ddl
index 99cac7e..2cdcaa8 100644
--- a/src/main/resources/sql/v2.21.ddl
+++ b/src/main/resources/sql/v2.21.ddl
@@ -45,16 +45,16 @@ update signals_user_packages set external_package_name = concat(substring(member
INSERT
INTO signals_phones_map
(fid, phone, flag_90_12, flag_debt5000, calculated_at, searched_at)
-SELECT distinct on (phone_l) fid::int,
- phone_l,
- flag_90_12,
- flag_debt5000,
- calculated_at,
+SELECT distinct on (phone_l) spfm.fid::int,
+ spfm.phone_l,
+ spfm.flag_90_12,
+ spfm.flag_debt5000,
+ spfm.calculated_at,
'2025-01-01'
FROM signals_phone_fid_map spfm
join signals_user_packages sup on spfm.package_id = sup.id
where spfm.fid is not null
and sup.status = 'ON_MONITORING'
-order by phone_l, calculated_at desc;
+order by spfm.phone_l, spfm.calculated_at desc;
insert into app_version values ('2.0')
\ No newline at end of file
diff --git a/start-credit-tracker.sh b/start-credit-tracker.sh
index 9f262d8..0a7ae51 100644
--- a/start-credit-tracker.sh
+++ b/start-credit-tracker.sh
@@ -2,6 +2,7 @@
export APP_JMX_PORT="${JMX_PORT:-11001}"
export APP_JMX_HOSTNAME="${JMX_HOSTNAME:-localhost}"
+export APP_JAR_FILE="${APP_JAR}"
echo "Запуск Credit Tracker"
exec java \
@@ -27,4 +28,5 @@ exec java \
-Dcom.sun.management.jmxremote.port="$APP_JMX_PORT" \
-Dcom.sun.management.jmxremote.rmi.port="$APP_JMX_PORT" \
-Djava.rmi.server.hostname="$APP_JMX_HOSTNAME" \
- -jar credit-tracker.jar
+ -DAPP_JAR="${APP_JAR_FILE}"
+ -jar credit-tracker-"$APP_JAR_FILE".jar