FINERACT-1484: Micrometer Monitoring
This commit is contained in:
committed by
Aleksandar Vidakovic
parent
5c77242005
commit
e2cf138437
@@ -191,7 +191,8 @@ Now to run a new Fineract instance you can simply:
|
|||||||
1. `git clone https://github.com/apache/fineract.git ; cd fineract`
|
1. `git clone https://github.com/apache/fineract.git ; cd fineract`
|
||||||
1. for windows, use `git clone https://github.com/apache/fineract.git --config core.autocrlf=input ; cd fineract`
|
1. for windows, use `git clone https://github.com/apache/fineract.git --config core.autocrlf=input ; cd fineract`
|
||||||
1. `./gradlew :fineract-provider:jibDockerBuild -x test`
|
1. `./gradlew :fineract-provider:jibDockerBuild -x test`
|
||||||
1. `docker-compose up -d`
|
1. install the Loki log driver with `docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions`
|
||||||
|
1. `docker compose -f docker-compose-development.yml up -d`
|
||||||
1. fineract (back-end) is running at https://localhost:8443/fineract-provider/
|
1. fineract (back-end) is running at https://localhost:8443/fineract-provider/
|
||||||
1. wait for https://localhost:8443/fineract-provider/actuator/health to return `{"status":"UP"}`
|
1. wait for https://localhost:8443/fineract-provider/actuator/health to return `{"status":"UP"}`
|
||||||
1. you must go to https://localhost:8443 and remember to accept the self-signed SSL certificate of the API once in your browser, otherwise you get a message that is rather misleading from the UI.
|
1. you must go to https://localhost:8443 and remember to accept the self-signed SSL certificate of the API once in your browser, otherwise you get a message that is rather misleading from the UI.
|
||||||
@@ -206,6 +207,13 @@ _(Note that in previous versions, the `mysqlserver` environment variable used at
|
|||||||
`docker run` time did something similar; this has changed in [FINERACT-773](https://issues.apache.org/jira/browse/FINERACT-773)),
|
`docker run` time did something similar; this has changed in [FINERACT-773](https://issues.apache.org/jira/browse/FINERACT-773)),
|
||||||
and the `mysqlserver` environment variable is now no longer supported.)_
|
and the `mysqlserver` environment variable is now no longer supported.)_
|
||||||
|
|
||||||
|
If you need the Java Flight Recorder image then copy the file from the running fineract-development container:
|
||||||
|
|
||||||
|
```
|
||||||
|
docker container cp fineract-development:/tmp/fineract.jfr /tmp
|
||||||
|
```
|
||||||
|
|
||||||
|
NOTE: Download Azul Mission Control from here https://www.azul.com/products/components/azul-mission-control/ to analyze the Java Flight Recorder file.
|
||||||
|
|
||||||
Connection pool configuration
|
Connection pool configuration
|
||||||
=============================
|
=============================
|
||||||
|
|||||||
@@ -22,8 +22,11 @@ apply plugin: 'io.spring.dependency-management'
|
|||||||
// https://github.com/spring-gradle-plugins/dependency-management-plugin
|
// https://github.com/spring-gradle-plugins/dependency-management-plugin
|
||||||
dependencyManagement {
|
dependencyManagement {
|
||||||
imports {
|
imports {
|
||||||
|
mavenBom 'io.micrometer:micrometer-bom:1.11.5'
|
||||||
mavenBom 'org.springframework:spring-framework-bom:6.0.10'
|
mavenBom 'org.springframework:spring-framework-bom:6.0.10'
|
||||||
mavenBom 'org.springframework.boot:spring-boot-dependencies:3.1.1'
|
mavenBom 'org.springframework.boot:spring-boot-dependencies:3.1.1'
|
||||||
|
mavenBom 'io.awspring.cloud:spring-cloud-aws-dependencies:3.0.3'
|
||||||
|
mavenBom 'io.opentelemetry:opentelemetry-bom:1.31.0'
|
||||||
mavenBom 'org.jetbrains.kotlin:kotlin-bom:1.8.22'
|
mavenBom 'org.jetbrains.kotlin:kotlin-bom:1.8.22'
|
||||||
mavenBom 'org.junit:junit-bom:5.9.3'
|
mavenBom 'org.junit:junit-bom:5.9.3'
|
||||||
mavenBom 'com.fasterxml.jackson:jackson-bom:2.15.2'
|
mavenBom 'com.fasterxml.jackson:jackson-bom:2.15.2'
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
[default]
|
||||||
|
aws_access_key_id=localstack
|
||||||
|
aws_secret_access_key=localstack
|
||||||
|
region=us-east-1
|
||||||
|
output=json
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
activemq:
|
||||||
|
image: symptoma/activemq:5.18.3
|
||||||
|
ports:
|
||||||
|
- 6161:6161
|
||||||
|
- 61616:61616
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
fineract:
|
||||||
|
image: fineract:latest
|
||||||
|
volumes:
|
||||||
|
- ../aws/etc/credentials:/etc/aws/credentials
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
||||||
|
timeout: 10s
|
||||||
|
retries: 10
|
||||||
|
env_file:
|
||||||
|
- ../env/fineract-common.env
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
x-logging: &default-logging
|
||||||
|
driver: loki
|
||||||
|
options:
|
||||||
|
loki-url: 'http://localhost:3100/api/prom/push'
|
||||||
|
loki-pipeline-stages: |
|
||||||
|
- multiline:
|
||||||
|
firstline: '^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d{3}'
|
||||||
|
max_wait_time: 3s
|
||||||
|
- regex:
|
||||||
|
expression: '^(?P<date>\d{4}-\d{2}-\d{2}) (?P<time>\d{2}:\d{2}:\d{2}.\d{3}) (?P<message>(?s:.*))$$'
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
mariadb:
|
||||||
|
image: mariadb:11.0
|
||||||
|
volumes:
|
||||||
|
- ../mysql/conf.d/server_collation.cnf:/etc/mysql/conf.d/server_collation.cnf
|
||||||
|
- ../mysql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d:Z,ro
|
||||||
|
restart: always
|
||||||
|
env_file:
|
||||||
|
- ../env/mysql.env
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "healthcheck.sh", "--su-mysql", "--connect", "--innodb_initialized"]
|
||||||
|
timeout: 10s
|
||||||
|
retries: 10
|
||||||
|
ports:
|
||||||
|
- "3306:3306"
|
||||||
@@ -0,0 +1,72 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
x-logging: &default-logging
|
||||||
|
driver: loki
|
||||||
|
options:
|
||||||
|
loki-url: 'http://localhost:3100/api/prom/push'
|
||||||
|
loki-pipeline-stages: |
|
||||||
|
- multiline:
|
||||||
|
firstline: '^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d{3}'
|
||||||
|
max_wait_time: 3s
|
||||||
|
- regex:
|
||||||
|
expression: '^(?P<date>\d{4}-\d{2}-\d{2}) (?P<time>\d{2}:\d{2}:\d{2}.\d{3}) (?P<message>(?s:.*))$$'
|
||||||
|
|
||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
loki:
|
||||||
|
image: grafana/loki:2.9.2
|
||||||
|
command: -config.file=/etc/loki/local-config.yaml
|
||||||
|
ports:
|
||||||
|
- "3100:3100"
|
||||||
|
|
||||||
|
prometheus:
|
||||||
|
image: prom/prometheus:v2.47.2
|
||||||
|
command: '--config.file=/etc/prometheus/prometheus.yml'
|
||||||
|
ports:
|
||||||
|
- "9090:9090"
|
||||||
|
volumes:
|
||||||
|
- ../prometheus/etc:/etc/prometheus
|
||||||
|
logging: *default-logging
|
||||||
|
|
||||||
|
grafana:
|
||||||
|
image: grafana/grafana-oss:10.2.0
|
||||||
|
ports:
|
||||||
|
- "3000:3000"
|
||||||
|
volumes:
|
||||||
|
- ../grafana/datasources:/etc/grafana/provisioning/datasources
|
||||||
|
- ../grafana/etc/dashboards.yml:/etc/grafana/provisioning/dashboards/dashboards.yaml
|
||||||
|
- ../grafana/dashboards:/var/lib/grafana/dashboards
|
||||||
|
logging: *default-logging
|
||||||
|
|
||||||
|
tempo:
|
||||||
|
image: grafana/tempo:2.2.4
|
||||||
|
# command: [ "--target=all", "--storage.trace.backend=local", "--storage.trace.local.path=/tmp/tempo", "--auth.enabled=false" ]
|
||||||
|
command: [ "-config.file=/etc/tempo.yml" ]
|
||||||
|
ports:
|
||||||
|
- "14268:14268" # jaeger ingest
|
||||||
|
- "3200:3200" # tempo
|
||||||
|
- "9095:9095" # tempo grpc
|
||||||
|
- "4317:4317" # otlp grpc
|
||||||
|
- "4318:4318" # otlp http
|
||||||
|
- "9411:9411" # zipkin
|
||||||
|
volumes:
|
||||||
|
- ../tempo/etc/tempo.yml:/etc/tempo.yml
|
||||||
|
- /tmp/tempo:/tmp/tempo
|
||||||
|
logging: *default-logging
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
postgresql:
|
||||||
|
image: postgres:16.0
|
||||||
|
volumes:
|
||||||
|
- ../postgresql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d/:Z,ro
|
||||||
|
restart: always
|
||||||
|
env_file:
|
||||||
|
- ../env/postgresql.env
|
||||||
|
healthcheck:
|
||||||
|
test: [ "CMD", "pg_isready", "-q", "-d", "postgres", "-U", "root" ]
|
||||||
|
timeout: 10s
|
||||||
|
retries: 10
|
||||||
|
ports:
|
||||||
|
- "5432:5432"
|
||||||
Vendored
+21
@@ -0,0 +1,21 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=true
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_BROKER_URL=tcp://activemq:61616
|
||||||
Vendored
+30
@@ -0,0 +1,30 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# TODO: remove AWS_ENDPOINT_URL and use FINERACT_AWS_ENDPOINT
|
||||||
|
AWS_EC2_METADATA_DISABLED=true
|
||||||
|
AWS_ENDPOINT_URL=http://localstack:4666
|
||||||
|
#FINERACT_AWS_ENDPOINT=http://localstack:4666
|
||||||
|
FINERACT_AWS_REGION_STATIC=us-east-1
|
||||||
|
FINERACT_AWS_CREDENTIALS_INSTANCE_PROFILE=false
|
||||||
|
#FINERACT_AWS_CREDENTIALS_ACCESS_KEY=localstack
|
||||||
|
#FINERACT_AWS_CREDENTIALS_SECRET_KEY=localstack
|
||||||
|
FINERACT_AWS_CREDENTIALS_PROFILE_NAME=default
|
||||||
|
FINERACT_AWS_CREDENTIALS_PROFILE_PATH=/etc/aws/credentials
|
||||||
|
FINERACT_AUTOCONFIGURE_EXCLUDE=
|
||||||
Vendored
+23
@@ -0,0 +1,23 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_MANAGEMENT_CLOUDWATCH_ENABLED=true
|
||||||
|
FINERACT_MANAGEMENT_CLOUDWATCH_NAMESPACE=fineract
|
||||||
|
FINERACT_MANAGEMENT_CLOUDWATCH_REGION=us-east-1
|
||||||
|
FINERACT_MANAGEMENT_CLOUDWATCH_STEP=1m
|
||||||
Vendored
+21
@@ -0,0 +1,21 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# see here for more details related to JFR: https://access.redhat.com/documentation/en-us/red_hat_build_of_openjdk/8/html/using_jdk_flight_recorder_with_red_hat_build_of_openjdk/configure-jfr-options
|
||||||
|
JAVA_TOOL_OPTIONS="-Xmx2G -Xms2G -XX:TieredStopAtLevel=1 -XX:+UseContainerSupport -XX:+UseStringDeduplication -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5000 -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -XX:StartFlightRecording=delay=20s,duration=60s,disk=true,name=fineract,dumponexit=true,filename=/tmp/fineract.jfr,settings=profile -Xlog:jfr=info"
|
||||||
+50
@@ -0,0 +1,50 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# ... following variables are optional; "application.properties" contains reasonable defaults (same as here)
|
||||||
|
FINERACT_HIKARI_MINIMUM_IDLE=3
|
||||||
|
FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
||||||
|
FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
||||||
|
FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
||||||
|
FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
||||||
|
FINERACT_HIKARI_AUTO_COMMIT=true
|
||||||
|
FINERACT_SERVER_SSL_ENABLED=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
||||||
|
FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
||||||
|
FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
||||||
|
FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
||||||
|
FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
||||||
|
FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
||||||
|
FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
||||||
|
FINERACT_MANAGEMENT_ENDPOINT_WEB_EXPOSURE_INCLUDE=health,info,prometheus
|
||||||
|
FINERACT_MANAGEMENT_METRICS_TAGS_APPLICATION=fineract
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_SPRING_EVENTS_ENABLED=false
|
||||||
|
SPRING_PROFILES_ACTIVE=test,diagnostics
|
||||||
|
OTEL_SERVICE_NAME=fineract
|
||||||
|
JAVA_TOOL_OPTIONS="-Xmx1G -XX:TieredStopAtLevel=1 -XX:+UseContainerSupport -XX:+UseStringDeduplication"
|
||||||
+25
@@ -0,0 +1,25 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_NODE_ID=1
|
||||||
|
FINERACT_MODE_BATCH_MANAGER_ENABLED=true
|
||||||
|
FINERACT_MODE_BATCH_WORKER_ENABLED=false
|
||||||
|
LOAN_COB_CHUNK_SIZE=10
|
||||||
|
LOAN_COB_PARTITION_SIZE=10
|
||||||
|
OTEL_SERVICE_NAME=fineract-manager
|
||||||
+29
@@ -0,0 +1,29 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# NOTE: env vars prefixed "FINERACT_HIKARI_*" are used to configure the database connection pool
|
||||||
|
FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.mariadb.jdbc.Driver
|
||||||
|
FINERACT_HIKARI_JDBC_URL=jdbc:mariadb://db:3306/fineract_tenants
|
||||||
|
FINERACT_HIKARI_USERNAME=root
|
||||||
|
FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
||||||
|
# NOTE: env vars prefixed "FINERACT_DEFAULT_TENANTDB_*" are used to create the default tenant database
|
||||||
|
FINERACT_DEFAULT_TENANTDB_HOSTNAME=db
|
||||||
|
FINERACT_DEFAULT_TENANTDB_PORT=3306
|
||||||
|
FINERACT_DEFAULT_TENANTDB_UID=root
|
||||||
|
FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
||||||
+29
@@ -0,0 +1,29 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# NOTE: env vars prefixed "FINERACT_HIKARI_*" are used to configure the database connection pool
|
||||||
|
FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
||||||
|
FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://db:5432/fineract_tenants
|
||||||
|
FINERACT_HIKARI_USERNAME=postgres
|
||||||
|
FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
||||||
|
# NOTE: env vars prefixed "FINERACT_DEFAULT_TENANTDB_*" are used to create the default tenant database
|
||||||
|
FINERACT_DEFAULT_TENANTDB_HOSTNAME=db
|
||||||
|
FINERACT_DEFAULT_TENANTDB_PORT=5432
|
||||||
|
FINERACT_DEFAULT_TENANTDB_UID=postgres
|
||||||
|
FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
||||||
+23
@@ -0,0 +1,23 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_NODE_ID=2
|
||||||
|
FINERACT_MODE_BATCH_MANAGER_ENABLED=false
|
||||||
|
FINERACT_MODE_BATCH_WORKER_ENABLED=true
|
||||||
|
OTEL_SERVICE_NAME=fineract-worker
|
||||||
Vendored
+20
@@ -0,0 +1,20 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_NODE_ID=1
|
||||||
+34
@@ -0,0 +1,34 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=false
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ENABLED=true
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_BOOTSTRAP_SERVERS=b-3-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-2-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-1-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ADMIN_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_PRODUCER_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_CONSUMER_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_NAME=job-topic
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_REPLICAS=2
|
||||||
|
FINERACT_EXTERNAL_EVENTS_ENABLED=true
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_ENABLED=true
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_BOOTSTRAP_SERVERS=b-3-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-2-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-1-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_ADMIN_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_PRODUCER_EXTRA_PROPERTIES:linger.ms=10|batch.size=16384|security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_NAME=external-events
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_REPLICAS=2
|
||||||
Vendored
+27
@@ -0,0 +1,27 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=false
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ENABLED=true
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_BOOTSTRAP_SERVERS=kafka:9092
|
||||||
|
FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_NAME=job-topic
|
||||||
|
FINERACT_EXTERNAL_EVENTS_ENABLED=true
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_ENABLED=true
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_BOOTSTRAP_SERVERS=kafka:9092
|
||||||
|
FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_NAME=external-events
|
||||||
Vendored
+27
@@ -0,0 +1,27 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
KAFKA_CFG_NODE_ID=0
|
||||||
|
KAFKA_CFG_PROCESS_ROLES=controller,broker
|
||||||
|
KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
|
||||||
|
KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
|
||||||
|
KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka:9093
|
||||||
|
KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
|
||||||
|
ALLOW_PLAINTEXT_LISTENER=yes
|
||||||
|
KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092
|
||||||
Vendored
+20
@@ -0,0 +1,20 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
MYSQL_ROOT_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
||||||
Vendored
+22
@@ -0,0 +1,22 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_MANAGEMENT_OLTP_ENABLED=true
|
||||||
|
FINERACT_MANAGEMENT_OLTP_METRICS_EXPORT_URL=http://tempo:4318/v1/traces
|
||||||
|
FINERACT_MANAGEMENT_OLTP_METRICS_EXPORT_AGGREGATION_TEMPORALITY=cumulative
|
||||||
Vendored
+25
@@ -0,0 +1,25 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
POSTGRES_USER=root
|
||||||
|
POSTGRES_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
||||||
|
FINERACT_DB_USER=postgres
|
||||||
|
FINERACT_DB_PASS=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
||||||
|
FINERACT_TENANTS_DB_NAME=fineract_tenants
|
||||||
|
FINERACT_TENANT_DEFAULT_DB_NAME=fineract_default
|
||||||
Vendored
+20
@@ -0,0 +1,20 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_MANAGEMENT_PROMETHEUS_ENABLED=true
|
||||||
Vendored
+21
@@ -0,0 +1,21 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
FINERACT_MANAGEMENT_TRACIING_ENABLED=true
|
||||||
|
FINERACT_MANAGEMENT_METRICS_DISTRIBUTION_HTTP_SERVER_REQUESTS=true
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,95 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
apiVersion: 1
|
||||||
|
|
||||||
|
# list of datasources that should be deleted from the database
|
||||||
|
deleteDatasources:
|
||||||
|
- name: Prometheus
|
||||||
|
orgId: 1
|
||||||
|
|
||||||
|
# list of datasources to insert/update depending on
|
||||||
|
# what's available in the database
|
||||||
|
datasources:
|
||||||
|
# <string, required> name of the datasource. Required
|
||||||
|
- uid: prometheus
|
||||||
|
orgId: 1
|
||||||
|
name: Prometheus
|
||||||
|
type: prometheus
|
||||||
|
typeName: Prometheus
|
||||||
|
access: proxy
|
||||||
|
url: http://prometheus:9090
|
||||||
|
password: ''
|
||||||
|
user: ''
|
||||||
|
database: ''
|
||||||
|
basicAuth: false
|
||||||
|
isDefault: true
|
||||||
|
jsonData:
|
||||||
|
exemplarTraceIdDestinations:
|
||||||
|
- datasourceUid: tempo
|
||||||
|
name: trace_id
|
||||||
|
httpMethod: POST
|
||||||
|
readOnly: false
|
||||||
|
editable: true
|
||||||
|
- uid: tempo
|
||||||
|
orgId: 1
|
||||||
|
name: Tempo
|
||||||
|
type: tempo
|
||||||
|
typeName: Tempo
|
||||||
|
access: proxy
|
||||||
|
url: http://tempo:3200
|
||||||
|
password: ''
|
||||||
|
user: ''
|
||||||
|
database: ''
|
||||||
|
basicAuth: false
|
||||||
|
isDefault: false
|
||||||
|
jsonData:
|
||||||
|
nodeGraph:
|
||||||
|
enabled: true
|
||||||
|
search:
|
||||||
|
hide: false
|
||||||
|
tracesToLogs:
|
||||||
|
datasourceUid: loki
|
||||||
|
filterBySpanID: false
|
||||||
|
filterByTraceID: true
|
||||||
|
mapTagNamesEnabled: false
|
||||||
|
tags:
|
||||||
|
- compose_service
|
||||||
|
readOnly: false
|
||||||
|
editable: true
|
||||||
|
- uid: loki
|
||||||
|
orgId: 1
|
||||||
|
name: Loki
|
||||||
|
type: loki
|
||||||
|
typeName: Loki
|
||||||
|
access: proxy
|
||||||
|
url: http://loki:3100
|
||||||
|
password: ''
|
||||||
|
user: ''
|
||||||
|
database: ''
|
||||||
|
basicAuth: false
|
||||||
|
isDefault: false
|
||||||
|
jsonData:
|
||||||
|
derivedFields:
|
||||||
|
- datasourceUid: tempo
|
||||||
|
matcherRegex: (?:trace_id)=(\w+)
|
||||||
|
name: TraceID
|
||||||
|
url: $${__value.raw}
|
||||||
|
readOnly: false
|
||||||
|
editable: true
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
apiVersion: 1
|
||||||
|
providers:
|
||||||
|
- name: 'Dashboards'
|
||||||
|
orgId: 1
|
||||||
|
folder: ''
|
||||||
|
type: 'file'
|
||||||
|
disableDeletion: true
|
||||||
|
editable: true
|
||||||
|
options:
|
||||||
|
path: '/var/lib/grafana/dashboards'
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
global:
|
||||||
|
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
|
||||||
|
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
|
||||||
|
# scrape_timeout is set to the global default (10s).
|
||||||
|
|
||||||
|
# Alertmanager configuration
|
||||||
|
alerting:
|
||||||
|
alertmanagers:
|
||||||
|
- static_configs:
|
||||||
|
- targets:
|
||||||
|
# - alertmanager:9093
|
||||||
|
|
||||||
|
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
|
||||||
|
rule_files:
|
||||||
|
# - "first_rules.yml"
|
||||||
|
# - "second_rules.yml"
|
||||||
|
|
||||||
|
# A scrape configuration containing exactly one endpoint to scrape:
|
||||||
|
# Here it's Prometheus itself.
|
||||||
|
scrape_configs:
|
||||||
|
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
|
||||||
|
- job_name: "prometheus"
|
||||||
|
|
||||||
|
# metrics_path defaults to '/metrics'
|
||||||
|
# scheme defaults to 'http'.
|
||||||
|
|
||||||
|
static_configs:
|
||||||
|
- targets: ["localhost:9090"]
|
||||||
|
|
||||||
|
- job_name: "fineract-server"
|
||||||
|
|
||||||
|
# Override the global default and scrape targets from this job every 5 seconds.
|
||||||
|
scrape_interval: 5s
|
||||||
|
metrics_path: "/actuator/prometheus"
|
||||||
|
scheme: "https"
|
||||||
|
|
||||||
|
static_configs:
|
||||||
|
- targets: ["fineract-server:8443"]
|
||||||
@@ -0,0 +1,74 @@
|
|||||||
|
#
|
||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
server:
|
||||||
|
http_listen_port: 3200
|
||||||
|
|
||||||
|
query_frontend:
|
||||||
|
search:
|
||||||
|
duration_slo: 5s
|
||||||
|
throughput_bytes_slo: 1.073741824e+09
|
||||||
|
trace_by_id:
|
||||||
|
duration_slo: 5s
|
||||||
|
|
||||||
|
distributor:
|
||||||
|
receivers: # this configuration will listen on all ports and protocols that tempo is capable of.
|
||||||
|
jaeger: # the receives all come from the OpenTelemetry collector. more configuration information can
|
||||||
|
protocols: # be found there: https://github.com/open-telemetry/opentelemetry-collector/tree/main/receiver
|
||||||
|
thrift_http: #
|
||||||
|
grpc: # for a production deployment you should only enable the receivers you need!
|
||||||
|
thrift_binary:
|
||||||
|
thrift_compact:
|
||||||
|
zipkin:
|
||||||
|
otlp:
|
||||||
|
protocols:
|
||||||
|
http:
|
||||||
|
grpc:
|
||||||
|
opencensus:
|
||||||
|
|
||||||
|
ingester:
|
||||||
|
max_block_duration: 5m # cut the headblock when this much time passes. this is being set for demo purposes and should probably be left alone normally
|
||||||
|
|
||||||
|
compactor:
|
||||||
|
compaction:
|
||||||
|
block_retention: 1h # overall Tempo trace retention. set for demo purposes
|
||||||
|
|
||||||
|
metrics_generator:
|
||||||
|
registry:
|
||||||
|
external_labels:
|
||||||
|
source: tempo
|
||||||
|
cluster: docker-compose
|
||||||
|
storage:
|
||||||
|
path: /tmp/tempo/generator/wal
|
||||||
|
remote_write:
|
||||||
|
- url: http://prometheus:9090/api/v1/write
|
||||||
|
send_exemplars: true
|
||||||
|
|
||||||
|
storage:
|
||||||
|
trace:
|
||||||
|
backend: local # backend configuration to use
|
||||||
|
wal:
|
||||||
|
path: /tmp/tempo/wal # where to store the wal locally
|
||||||
|
local:
|
||||||
|
path: /tmp/tempo/blocks
|
||||||
|
|
||||||
|
#overrides:
|
||||||
|
# defaults:
|
||||||
|
# metrics_generator:
|
||||||
|
# processors: [service-graphs, span-metrics] # enables metrics generator
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
version: '3.7'
|
version: "3.8"
|
||||||
services:
|
services:
|
||||||
# Frontend service
|
# Frontend service
|
||||||
community-app:
|
community-app:
|
||||||
|
|||||||
@@ -0,0 +1,89 @@
|
|||||||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
# or more contributor license agreements. See the NOTICE file
|
||||||
|
# distributed with this work for additional information
|
||||||
|
# regarding copyright ownership. The ASF licenses this file
|
||||||
|
# to you under the Apache License, Version 2.0 (the
|
||||||
|
# "License"); you may not use this file except in compliance
|
||||||
|
# with the License. You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
x-logging: &default-logging
|
||||||
|
driver: loki
|
||||||
|
options:
|
||||||
|
loki-url: 'http://localhost:3100/api/prom/push'
|
||||||
|
loki-pipeline-stages: |
|
||||||
|
- multiline:
|
||||||
|
firstline: '^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d{3}'
|
||||||
|
max_wait_time: 3s
|
||||||
|
- regex:
|
||||||
|
expression: '^(?P<date>\d{4}-\d{2}-\d{2}) (?P<time>\d{2}:\d{2}:\d{2}.\d{3}) (?P<message>(?s:.*))$$'
|
||||||
|
|
||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
loki:
|
||||||
|
extends:
|
||||||
|
file: ./config/docker/compose/observability.yml
|
||||||
|
service: loki
|
||||||
|
|
||||||
|
prometheus:
|
||||||
|
extends:
|
||||||
|
file: ./config/docker/compose/observability.yml
|
||||||
|
service: prometheus
|
||||||
|
depends_on:
|
||||||
|
- loki
|
||||||
|
|
||||||
|
grafana:
|
||||||
|
extends:
|
||||||
|
file: ./config/docker/compose/observability.yml
|
||||||
|
service: grafana
|
||||||
|
depends_on:
|
||||||
|
- loki
|
||||||
|
|
||||||
|
tempo:
|
||||||
|
extends:
|
||||||
|
file: ./config/docker/compose/observability.yml
|
||||||
|
service: tempo
|
||||||
|
depends_on:
|
||||||
|
- loki
|
||||||
|
|
||||||
|
db:
|
||||||
|
extends:
|
||||||
|
file: ./config/docker/compose/mariadb.yml
|
||||||
|
service: mariadb
|
||||||
|
depends_on:
|
||||||
|
- loki
|
||||||
|
logging: *default-logging
|
||||||
|
|
||||||
|
fineract:
|
||||||
|
container_name: fineract-development
|
||||||
|
extends:
|
||||||
|
file: ./config/docker/compose/fineract.yml
|
||||||
|
service: fineract
|
||||||
|
ports:
|
||||||
|
- "8443:8443"
|
||||||
|
- "5000:5000"
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_healthy
|
||||||
|
loki:
|
||||||
|
condition: service_started
|
||||||
|
env_file:
|
||||||
|
- ./config/docker/env/aws.env
|
||||||
|
- ./config/docker/env/fineract-mariadb.env
|
||||||
|
- ./config/docker/env/fineract.env
|
||||||
|
- ./config/docker/env/tracing.env
|
||||||
|
- ./config/docker/env/oltp.env
|
||||||
|
- ./config/docker/env/prometheus.env
|
||||||
|
# - ./config/docker/env/cloudwatch.env
|
||||||
|
- ./config/docker/env/debug.env
|
||||||
|
logging: *default-logging
|
||||||
@@ -16,142 +16,46 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
# You can replace and test a more recent version of docker compose
|
version: "3.8"
|
||||||
version: '3.7'
|
|
||||||
services:
|
services:
|
||||||
activemq:
|
activemq:
|
||||||
image: symptoma/activemq:5.18.3
|
extends:
|
||||||
ports:
|
file: ./config/docker/compose/activemq.yml
|
||||||
- 6161:6161
|
service: activemq
|
||||||
- 61616:61616
|
|
||||||
# Backend service
|
db:
|
||||||
fineractpostgresql:
|
extends:
|
||||||
image: postgres:16.0
|
file: ./config/docker/compose/postgresql.yml
|
||||||
volumes:
|
service: postgresql
|
||||||
- ./fineract-db/docker/postgresql:/docker-entrypoint-initdb.d/:Z,ro
|
|
||||||
restart: always
|
|
||||||
environment:
|
|
||||||
POSTGRES_USER: root
|
|
||||||
POSTGRES_PASSWORD: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
FINERACT_DB_USER: postgres
|
|
||||||
FINERACT_DB_PASS: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
FINERACT_TENANTS_DB_NAME: fineract_tenants
|
|
||||||
FINERACT_TENANT_DEFAULT_DB_NAME: fineract_default
|
|
||||||
healthcheck:
|
|
||||||
test: [ "CMD", "pg_isready", "-q", "-d", "postgres", "-U", "root" ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
|
||||||
- "5432:5432"
|
|
||||||
fineract-manager:
|
fineract-manager:
|
||||||
image: fineract:latest
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/fineract.yml
|
||||||
- ./fineract-provider/build/data:/data
|
service: fineract
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- 8443:8443
|
- "8443:8443"
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractpostgresql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
- FINERACT_NODE_ID=1
|
- ./config/docker/env/fineract-postgresql.env
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
- ./config/docker/env/fineract-manager.env
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
- ./config/docker/env/activemq.env
|
||||||
- FINERACT_HIKARI_USERNAME=postgres
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_SERVER_SSL_ENABLED=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractpostgresql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=5432
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=postgres
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_SPRING_EVENTS_ENABLED=false
|
|
||||||
- FINERACT_MODE_BATCH_MANAGER_ENABLED=true
|
|
||||||
- FINERACT_MODE_BATCH_WORKER_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_BROKER_URL=tcp://activemq:61616
|
|
||||||
- LOAN_COB_CHUNK_SIZE=10
|
|
||||||
- LOAN_COB_PARTITION_SIZE=10
|
|
||||||
- SPRING_PROFILES_ACTIVE=test,diagnostics
|
|
||||||
fineract-worker:
|
fineract-worker:
|
||||||
image: fineract:latest
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/fineract.yml
|
||||||
- ./fineract-provider/build/data:/data
|
service: fineract
|
||||||
deploy:
|
deploy:
|
||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 2
|
replicas: 2
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- "8444-8445:8443"
|
- "8444-8445:8443"
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractpostgresql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
- FINERACT_NODE_ID=2
|
- ./config/docker/env/fineract-postgresql.env
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
- ./config/docker/env/fineract-worker.env
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
- ./config/docker/env/activemq.env
|
||||||
- FINERACT_HIKARI_USERNAME=postgres
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_SERVER_SSL_ENABLED=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractpostgresql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=5432
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=postgres
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_SPRING_EVENTS_ENABLED=false
|
|
||||||
- FINERACT_MODE_BATCH_MANAGER_ENABLED=false
|
|
||||||
- FINERACT_MODE_BATCH_WORKER_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_BROKER_URL=tcp://activemq:61616
|
|
||||||
|
|||||||
@@ -16,167 +16,42 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
# You can replace and test a more recent version of docker compose
|
version: "3.8"
|
||||||
version: '3.7'
|
|
||||||
services:
|
services:
|
||||||
# Backend service
|
|
||||||
fineractpostgresql:
|
db:
|
||||||
image: postgres:16.0
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/postgresql.yml
|
||||||
- ./fineract-db/docker/postgresql:/docker-entrypoint-initdb.d/:Z,ro
|
service: postgresql
|
||||||
environment:
|
|
||||||
POSTGRES_USER: root
|
|
||||||
POSTGRES_PASSWORD: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
FINERACT_DB_USER: postgres
|
|
||||||
FINERACT_DB_PASS: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
FINERACT_TENANTS_DB_NAME: fineract_tenants
|
|
||||||
FINERACT_TENANT_DEFAULT_DB_NAME: fineract_default
|
|
||||||
healthcheck:
|
|
||||||
test: [ "CMD", "pg_isready", "-q", "-d", "postgres", "-U", "root" ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
|
||||||
- "5432:5432"
|
|
||||||
fineract-manager:
|
fineract-manager:
|
||||||
image: fineract:latest
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/fineract.yml
|
||||||
- ./fineract-provider/build/data:/data
|
service: fineract
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- 8443:8443
|
- "8443:8443"
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractpostgresql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
- AWS_ACCESS_KEY_ID=
|
- ./config/docker/env/aws.env
|
||||||
- AWS_SECRET_ACCESS_KEY=
|
- ./config/docker/env/fineract-manager.env
|
||||||
- FINERACT_NODE_ID=1
|
- ./config/docker/env/kafka-client-msk.env
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
|
||||||
- FINERACT_HIKARI_USERNAME=postgres
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_SERVER_SSL_ENABLED=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractpostgresql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=5432
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=postgres
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_SPRING_EVENTS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_BOOTSTRAP_SERVERS=b-3-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-2-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-1-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ADMIN_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_PRODUCER_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_CONSUMER_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_NAME=job-topic
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_REPLICAS=2
|
|
||||||
- FINERACT_MODE_BATCH_MANAGER_ENABLED=true
|
|
||||||
- FINERACT_MODE_BATCH_WORKER_ENABLED=false
|
|
||||||
- LOAN_COB_CHUNK_SIZE=10
|
|
||||||
- LOAN_COB_PARTITION_SIZE=10
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_BOOTSTRAP_SERVERS=b-3-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-2-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-1-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_ADMIN_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_PRODUCER_EXTRA_PROPERTIES:linger.ms=10|batch.size=16384|security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_NAME=external-events
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_REPLICAS=2
|
|
||||||
- SPRING_PROFILES_ACTIVE=test,diagnostics
|
|
||||||
fineract-worker:
|
fineract-worker:
|
||||||
image: fineract:latest
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/fineract.yml
|
||||||
- ./fineract-provider/build/data:/data
|
service: fineract
|
||||||
deploy:
|
deploy:
|
||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 2
|
replicas: 2
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- "8444-8445:8443"
|
- "8444-8445:8443"
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractpostgresql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
- AWS_ACCESS_KEY_ID=
|
- ./config/docker/env/aws.env
|
||||||
- AWS_SECRET_ACCESS_KEY=
|
- ./config/docker/env/fineract-worker.env
|
||||||
- FINERACT_NODE_ID=1
|
- ./config/docker/env/kafka-client-msk.env
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
|
||||||
- FINERACT_HIKARI_USERNAME=postgres
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_SERVER_SSL_ENABLED=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractpostgresql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=5432
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=postgres
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
- FINERACT_MODE_BATCH_MANAGER_ENABLED=false
|
|
||||||
- FINERACT_MODE_BATCH_WORKER_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_SPRING_EVENTS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_BOOTSTRAP_SERVERS=b-3-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-2-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-1-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ADMIN_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_PRODUCER_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_CONSUMER_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_NAME=job-topic
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_REPLICAS=2
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_BOOTSTRAP_SERVERS=b-3-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-2-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198,b-1-public.democluster1.am2oyx.c4.kafka.eu-central-1.amazonaws.com:9198
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_ADMIN_EXTRA_PROPERTIES=security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_PRODUCER_EXTRA_PROPERTIES:linger.ms=10|batch.size=16384|security.protocol=SASL_SSL|sasl.mechanism=AWS_MSK_IAM|sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;|sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_NAME=external-events
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_REPLICAS=2
|
|
||||||
- SPRING_PROFILES_ACTIVE=test,diagnostics
|
|
||||||
|
|||||||
@@ -23,155 +23,41 @@ services:
|
|||||||
image: 'bitnami/kafka:3.5.1-debian-11-r7'
|
image: 'bitnami/kafka:3.5.1-debian-11-r7'
|
||||||
ports:
|
ports:
|
||||||
- '9092:9092'
|
- '9092:9092'
|
||||||
environment:
|
env_file:
|
||||||
- KAFKA_CFG_NODE_ID=0
|
- ./config/docker/env/kafka-server.env
|
||||||
- KAFKA_CFG_PROCESS_ROLES=controller,broker
|
|
||||||
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
|
db:
|
||||||
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
|
extends:
|
||||||
- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=0@kafka:9093
|
file: ./config/docker/compose/postgresql.yml
|
||||||
- KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
|
service: postgresql
|
||||||
- ALLOW_PLAINTEXT_LISTENER=yes
|
|
||||||
- KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092
|
|
||||||
# Backend service
|
|
||||||
fineractpostgresql:
|
|
||||||
image: postgres:16.0
|
|
||||||
volumes:
|
|
||||||
- ./fineract-db/docker/postgresql:/docker-entrypoint-initdb.d/:Z,ro
|
|
||||||
environment:
|
|
||||||
POSTGRES_USER: root
|
|
||||||
POSTGRES_PASSWORD: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
FINERACT_DB_USER: postgres
|
|
||||||
FINERACT_DB_PASS: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
FINERACT_TENANTS_DB_NAME: fineract_tenants
|
|
||||||
FINERACT_TENANT_DEFAULT_DB_NAME: fineract_default
|
|
||||||
healthcheck:
|
|
||||||
test: [ "CMD", "pg_isready", "-q", "-d", "postgres", "-U", "root" ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
|
||||||
- "5432:5432"
|
|
||||||
fineract-manager:
|
fineract-manager:
|
||||||
image: fineract:latest
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/fineract.yml
|
||||||
- ./fineract-provider/build/data:/data
|
service: fineract
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- 8443:8443
|
- "8443:8443"
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractpostgresql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
- FINERACT_NODE_ID=1
|
- ./config/docker/env/fineract-postgresql.env
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
- ./config/docker/env/fineract-manager.env
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
- ./config/docker/env/kafka-client.env
|
||||||
- FINERACT_HIKARI_USERNAME=postgres
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_SERVER_SSL_ENABLED=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractpostgresql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=5432
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=postgres
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_SPRING_EVENTS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_BOOTSTRAP_SERVERS=kafka:9092
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_NAME=job-topic
|
|
||||||
- FINERACT_MODE_BATCH_MANAGER_ENABLED=true
|
|
||||||
- FINERACT_MODE_BATCH_WORKER_ENABLED=false
|
|
||||||
- LOAN_COB_CHUNK_SIZE=10
|
|
||||||
- LOAN_COB_PARTITION_SIZE=10
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_BOOTSTRAP_SERVERS=kafka:9092
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_NAME=external-events
|
|
||||||
- SPRING_PROFILES_ACTIVE=test,diagnostics
|
|
||||||
fineract-worker:
|
fineract-worker:
|
||||||
image: fineract:latest
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/fineract.yml
|
||||||
- ./fineract-provider/build/data:/data
|
service: fineract
|
||||||
deploy:
|
deploy:
|
||||||
mode: replicated
|
mode: replicated
|
||||||
replicas: 2
|
replicas: 2
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- "8444-8445:8443"
|
- "8444-8445:8443"
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractpostgresql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
- FINERACT_NODE_ID=1
|
- ./config/docker/env/fineract-postgresql.env
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
- ./config/docker/env/fineract-worker.env
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
- ./config/docker/env/kafka-client.env
|
||||||
- FINERACT_HIKARI_USERNAME=postgres
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_SERVER_SSL_ENABLED=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractpostgresql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=5432
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=postgres
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
- FINERACT_MODE_BATCH_MANAGER_ENABLED=false
|
|
||||||
- FINERACT_MODE_BATCH_WORKER_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_JMS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_SPRING_EVENTS_ENABLED=false
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_BOOTSTRAP_SERVERS=kafka:9092
|
|
||||||
- FINERACT_REMOTE_JOB_MESSAGE_HANDLER_KAFKA_TOPIC_NAME=job-topic
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_ENABLED=true
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_BOOTSTRAP_SERVERS=kafka:9092
|
|
||||||
- FINERACT_EXTERNAL_EVENTS_KAFKA_TOPIC_NAME=external-events
|
|
||||||
- SPRING_PROFILES_ACTIVE=test,diagnostics
|
|
||||||
|
|||||||
@@ -16,81 +16,24 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
# You can replace and test a more recent version of docker compose
|
version: "3.8"
|
||||||
version: '3.7'
|
|
||||||
services:
|
services:
|
||||||
# Backend service
|
|
||||||
fineractpostgresql:
|
db:
|
||||||
image: postgres:16.0
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/postgresql.yml
|
||||||
- ./fineract-db/docker/postgresql:/docker-entrypoint-initdb.d/:Z,ro
|
service: postgresql
|
||||||
restart: always
|
|
||||||
environment:
|
fineract:
|
||||||
POSTGRES_USER: root
|
extends:
|
||||||
POSTGRES_PASSWORD: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
file: ./config/docker/compose/fineract.yml
|
||||||
FINERACT_DB_USER: postgres
|
service: fineract
|
||||||
FINERACT_DB_PASS: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
FINERACT_TENANTS_DB_NAME: fineract_tenants
|
|
||||||
FINERACT_TENANT_DEFAULT_DB_NAME: fineract_default
|
|
||||||
healthcheck:
|
|
||||||
test: [ "CMD", "pg_isready", "-q", "-d", "postgres", "-U", "root" ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- "5432:5432"
|
- "8443:8443"
|
||||||
fineract-server:
|
|
||||||
image: fineract:latest
|
|
||||||
volumes:
|
|
||||||
- ./fineract-provider/build/data:/data
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
|
||||||
- 8443:8443
|
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractpostgresql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
# TODO: env vars prefixed with "fineract_tenants_*" will be removed with one of the next releases
|
- ./config/docker/env/fineract-postgresql.env
|
||||||
#- fineract_tenants_driver=org.postgresql.Driver
|
- ./config/docker/env/fineract.env
|
||||||
#- fineract_tenants_url=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
|
||||||
#- fineract_tenants_uid=postgres
|
|
||||||
#- fineract_tenants_pwd=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
# NOTE: node aware scheduler
|
|
||||||
- FINERACT_NODE_ID=1
|
|
||||||
# NOTE: env vars prefixed "FINERACT_HIKARI_*" are used to configure the database connection pool
|
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.postgresql.Driver
|
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:postgresql://fineractpostgresql:5432/fineract_tenants
|
|
||||||
- FINERACT_HIKARI_USERNAME=postgres
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
# ... following variables are optional; "application.properties" contains reasonable defaults (same as here)
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
# NOTE: env vars prefixed "FINERACT_DEFAULT_TENANTDB_*" are used to create the default tenant database
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractpostgresql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=5432
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=postgres
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
|
|||||||
+17
-70
@@ -16,77 +16,24 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
# You can replace and test a more recent version of docker compose
|
version: "3.8"
|
||||||
version: '3.7'
|
|
||||||
services:
|
services:
|
||||||
# Backend service
|
|
||||||
fineractmysql:
|
db:
|
||||||
image: mariadb:11.0
|
extends:
|
||||||
volumes:
|
file: ./config/docker/compose/mariadb.yml
|
||||||
- ./fineract-db/server_collation.cnf:/etc/mysql/conf.d/server_collation.cnf
|
service: mariadb
|
||||||
- ./fineract-db/docker:/docker-entrypoint-initdb.d:Z,ro
|
|
||||||
restart: always
|
fineract:
|
||||||
environment:
|
extends:
|
||||||
MYSQL_ROOT_PASSWORD: skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
file: ./config/docker/compose/fineract.yml
|
||||||
healthcheck:
|
service: fineract
|
||||||
test: ["CMD", "healthcheck.sh", "--su-mysql", "--connect", "--innodb_initialized"]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
ports:
|
||||||
- "3306:3306"
|
- "8443:8443"
|
||||||
fineract-server:
|
|
||||||
image: fineract:latest
|
|
||||||
volumes:
|
|
||||||
- ./fineract-provider/build/data:/data
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", 'sh', '-c', 'echo -e "Checking for the availability of Fineract server deployment"; while ! nc -z "fineract-server" 8443; do sleep 1; printf "-"; done; echo -e " >> Fineract server has started";' ]
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
ports:
|
|
||||||
- 8443:8443
|
|
||||||
depends_on:
|
depends_on:
|
||||||
fineractmysql:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
environment:
|
env_file:
|
||||||
# TODO: env vars prefixed with "fineract_tenants_*" will be removed with one of the next releases
|
- ./config/docker/env/fineract-mariadb.env
|
||||||
#- fineract_tenants_driver=org.mariadb.jdbc.Driver
|
- ./config/docker/env/fineract.env
|
||||||
#- fineract_tenants_url=jdbc:mariadb://fineractmysql:3306/fineract_tenants
|
|
||||||
#- fineract_tenants_uid=root
|
|
||||||
#- fineract_tenants_pwd=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
# NOTE: node aware scheduler
|
|
||||||
- FINERACT_NODE_ID=1
|
|
||||||
# NOTE: env vars prefixed "FINERACT_HIKARI_*" are used to configure the database connection pool
|
|
||||||
- FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME=org.mariadb.jdbc.Driver
|
|
||||||
- FINERACT_HIKARI_JDBC_URL=jdbc:mariadb://fineractmysql:3306/fineract_tenants
|
|
||||||
- FINERACT_HIKARI_USERNAME=root
|
|
||||||
- FINERACT_HIKARI_PASSWORD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
# ... following variables are optional; "application.properties" contains reasonable defaults (same as here)
|
|
||||||
- FINERACT_HIKARI_MINIMUM_IDLE=3
|
|
||||||
- FINERACT_HIKARI_MAXIMUM_POOL_SIZE=10
|
|
||||||
- FINERACT_HIKARI_IDLE_TIMEOUT=60000
|
|
||||||
- FINERACT_HIKARI_CONNECTION_TIMEOUT=20000
|
|
||||||
- FINERACT_HIKARI_TEST_QUERY=SELECT 1
|
|
||||||
- FINERACT_HIKARI_AUTO_COMMIT=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SIZE=250
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_PREP_STMT_CACHE_SQL_LIMIT=2048
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_SERVER_PREP_STMTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_USE_LOCAL_SESSION_STATE=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_REWRITE_BATCHED_STATEMENTS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_RESULT_SET_METADATA=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_CACHE_SERVER_CONFIGURATION=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_ELIDE_SET_AUTO_COMMITS=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_MAINTAIN_TIME_STATS=false
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_LOG_SLOW_QUERIES=true
|
|
||||||
- FINERACT_HIKARI_DS_PROPERTIES_DUMP_QUERIES_IN_EXCEPTION=true
|
|
||||||
# NOTE: env vars prefixed "FINERACT_DEFAULT_TENANTDB_*" are used to create the default tenant database
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_HOSTNAME=fineractmysql
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PORT=3306
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_UID=root
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_PWD=skdcnwauicn2ucnaecasdsajdnizucawencascdca
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_CONN_PARAMS=
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_TIMEZONE=Asia/Kolkata
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_IDENTIFIER=default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_NAME=fineract_default
|
|
||||||
- FINERACT_DEFAULT_TENANTDB_DESCRIPTION=Default Demo Tenant
|
|
||||||
- JAVA_TOOL_OPTIONS="-Xmx1G"
|
|
||||||
|
|||||||
+1
-1
@@ -21,7 +21,7 @@ package org.apache.fineract.infrastructure.event.external.exception;
|
|||||||
public class ExternalEventConfigurationNotFoundException extends RuntimeException {
|
public class ExternalEventConfigurationNotFoundException extends RuntimeException {
|
||||||
|
|
||||||
public ExternalEventConfigurationNotFoundException() {
|
public ExternalEventConfigurationNotFoundException() {
|
||||||
super("All external events are not configured");
|
super("No external events configured");
|
||||||
}
|
}
|
||||||
|
|
||||||
public ExternalEventConfigurationNotFoundException(final String externalEventType) {
|
public ExternalEventConfigurationNotFoundException(final String externalEventType) {
|
||||||
|
|||||||
@@ -46,6 +46,12 @@ dependencies {
|
|||||||
'org.springframework.integration:spring-integration-kafka',
|
'org.springframework.integration:spring-integration-kafka',
|
||||||
'org.springframework.kafka:spring-kafka',
|
'org.springframework.kafka:spring-kafka',
|
||||||
|
|
||||||
|
'io.micrometer:micrometer-registry-prometheus',
|
||||||
|
'io.micrometer:micrometer-registry-otlp',
|
||||||
|
'io.micrometer:micrometer-registry-cloudwatch2',
|
||||||
|
|
||||||
|
'io.awspring.cloud:spring-cloud-aws-starter',
|
||||||
|
|
||||||
'org.apache.avro:avro',
|
'org.apache.avro:avro',
|
||||||
'jakarta.ws.rs:jakarta.ws.rs-api',
|
'jakarta.ws.rs:jakarta.ws.rs-api',
|
||||||
'org.glassfish.jersey.media:jersey-media-multipart',
|
'org.glassfish.jersey.media:jersey-media-multipart',
|
||||||
|
|||||||
@@ -173,6 +173,7 @@ fineract.module.investor.enabled=${FINERACT_MODULE_INVESTOR_ENABLED:true}
|
|||||||
|
|
||||||
# Logging pattern for the console
|
# Logging pattern for the console
|
||||||
logging.pattern.console=${CONSOLE_LOG_PATTERN:%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(%replace([%X{correlationId}]){'\\[\\]', ''}) %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:%wEx}}
|
logging.pattern.console=${CONSOLE_LOG_PATTERN:%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(%replace([%X{correlationId}]){'\\[\\]', ''}) %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:%wEx}}
|
||||||
|
logging.pattern.level=%5p [${spring.application.name:},%X{traceId:-},%X{spanId:-}]
|
||||||
|
|
||||||
management.health.jms.enabled=${FINERACT_MANAGEMENT_HEALTH_JMS_ENABLED:false}
|
management.health.jms.enabled=${FINERACT_MANAGEMENT_HEALTH_JMS_ENABLED:false}
|
||||||
|
|
||||||
@@ -189,7 +190,39 @@ management.endpoints.web.cors.allowed-headers=*
|
|||||||
|
|
||||||
# FINERACT-883
|
# FINERACT-883
|
||||||
management.info.git.mode=FULL
|
management.info.git.mode=FULL
|
||||||
management.endpoints.web.exposure.include=${FINERACT_MANAGEMENT_ENDPOINT_WEB_EXPOSURE_INCLUDE:health,info}
|
management.endpoints.web.exposure.include=${FINERACT_MANAGEMENT_ENDPOINT_WEB_EXPOSURE_INCLUDE:health,info,prometheus}
|
||||||
|
|
||||||
|
management.tracing.enabled=${FINERACT_MANAGEMENT_TRACIING_ENABLED:false}
|
||||||
|
|
||||||
|
management.metrics.tags.application=${FINERACT_MANAGEMENT_METRICS_TAGS_APPLICATION:fineract}
|
||||||
|
management.metrics.distribution.percentiles-histogram.http.server.requests=${FINERACT_MANAGEMENT_METRICS_DISTRIBUTION_HTTP_SERVER_REQUESTS:false}
|
||||||
|
|
||||||
|
management.otlp.metrics.export.enabled=${FINERACT_MANAGEMENT_OLTP_ENABLED:false}
|
||||||
|
management.otlp.metrics.export.url=${FINERACT_MANAGEMENT_OLTP_METRICS_EXPORT_URL:http://tempo:4318/v1/traces}
|
||||||
|
management.otlp.metrics.export.aggregationTemporality=${FINERACT_MANAGEMENT_OLTP_METRICS_EXPORT_AGGREGATION_TEMPORALITY:cumulative}
|
||||||
|
|
||||||
|
management.prometheus.metrics.export.enabled=${FINERACT_MANAGEMENT_PROMETHEUS_ENABLED:false}
|
||||||
|
# TODO: show pushgateway example
|
||||||
|
# management.prometheus.metrics.export.pushgateway.enabled=false
|
||||||
|
|
||||||
|
spring.cloud.aws.cloudwatch.enabled=${FINERACT_MANAGEMENT_CLOUDWATCH_ENABLED:false}
|
||||||
|
#spring.cloud.aws.cloudwatch.region=${FINERACT_MANAGEMENT_CLOUDWATCH_REGION:us-east-1}
|
||||||
|
|
||||||
|
management.metrics.export.cloudwatch.enabled=${FINERACT_MANAGEMENT_CLOUDWATCH_ENABLED:false}
|
||||||
|
management.metrics.export.cloudwatch.namespace=${FINERACT_MANAGEMENT_CLOUDWATCH_NAMESPACE:fineract}
|
||||||
|
management.metrics.export.cloudwatch.step=${FINERACT_MANAGEMENT_CLOUDWATCH_STEP:1m}
|
||||||
|
|
||||||
|
spring.autoconfigure.exclude=${FINERACT_AUTOCONFIGURE_EXCLUDE:io.awspring.cloud.autoconfigure.core.AwsAutoConfiguration,\
|
||||||
|
io.awspring.cloud.autoconfigure.core.CredentialsProviderAutoConfiguration}
|
||||||
|
|
||||||
|
spring.cloud.aws.endpoint=${FINERACT_AWS_ENDPOINT:}
|
||||||
|
spring.cloud.aws.region.static=${FINERACT_AWS_REGION_STATIC:us-east-1}
|
||||||
|
spring.cloud.aws.credentials.access-key=${FINERACT_AWS_CREDENTIALS_ACCESS_KEY:}
|
||||||
|
spring.cloud.aws.credentials.secret-key=${FINERACT_AWS_CREDENTIALS_SECRET_KEY:}
|
||||||
|
spring.cloud.aws.credentials.instance-profile=${FINERACT_AWS_CREDENTIALS_INSTANCE_PROFILE:false}
|
||||||
|
spring.cloud.aws.credentials.profile.name=${FINERACT_AWS_CREDENTIALS_PROFILE_NAME:}
|
||||||
|
spring.cloud.aws.credentials.profile.path=${FINERACT_AWS_CREDENTIALS_PROFILE_PATH:}
|
||||||
|
|
||||||
# FINERACT-914
|
# FINERACT-914
|
||||||
server.forward-headers-strategy=framework
|
server.forward-headers-strategy=framework
|
||||||
server.port=${FINERACT_SERVER_PORT:8443}
|
server.port=${FINERACT_SERVER_PORT:8443}
|
||||||
|
|||||||
+1
-1
@@ -133,7 +133,7 @@ public class ExternalEventConfigurationValidationServiceTest {
|
|||||||
() -> underTest.afterPropertiesSet());
|
() -> underTest.afterPropertiesSet());
|
||||||
|
|
||||||
// then
|
// then
|
||||||
String expectedMessage = "All external events are not configured";
|
String expectedMessage = "No external events configured";
|
||||||
String actualMessage = exceptionThrown.getMessage();
|
String actualMessage = exceptionThrown.getMessage();
|
||||||
|
|
||||||
assertTrue(actualMessage.contains(expectedMessage));
|
assertTrue(actualMessage.contains(expectedMessage));
|
||||||
|
|||||||
Reference in New Issue
Block a user