generated from arafkarsh/ms-springboot-324-java-22-jakarta-ee-10
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathapplication.properties
189 lines (189 loc) · 8.84 KB
/
application.properties
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
# =======================================================================
# Ai-GenAI Service Properties
# =======================================================================
build.number=258
build.date=Wed Jan 8 00:15:14 IST 2025
# ------------------------------------------------------------------------
# Spring Profile
# ------------------------------------------------------------------------
spring.profiles.default=dev
# =======================================================================
# Service Name & API Details - Version, Path
# =======================================================================
service.org=orgname
service.name=Ai-GenAI
service.api.name=ai-service
service.api.prefix=api
service.api.version=v1
service.api.error.prefix=17
service.container=ai-service
service.api.repository=https://github.com/arafkarsh/ms-springboot-324-ai
service.api.path=/${service.api.name}/${service.api.prefix}/${service.api.version}
service.url=http://www.arafkarsh.com/
service.license=Apache 2 License
service.license.url=https://github.com/arafkarsh/ms-springboot-324-ai?tab=Apache-2.0-1-ov-file
# =======================================================================
# Ai Server Properties
# =======================================================================
server.port=19090
server.version=0.3.4
server.restart=false
server.resources.url=${service.url}${service.api.path}
server.api.url.print=true
# =======================================================================
# LangChain4J Properties
# =======================================================================
#langchain4j.open-ai.model=gpt-3.5-turbo-0125
langchain4j.open-ai.model=gpt-4o-2024-05-13
langchain4j.ollama.url=http://localhost:11434/api/generate/
langchain4j.ollama.model=llama3
langchain4j.cohere-api-key=${COHERE_API_KEY}
langchain4j.open-ai.chat-model.api-key=${OPENAI_API_KEY}
langchain4j.anthropic.api.key=${ANTHROPIC_API_KEY}
langchain4j.open-ai.chat-model.log-requests = true
langchain4j.open-ai.chat-model.log-responses = true
logging.level.dev.langchain4j = DEBUG
logging.level.dev.ai4j.openai4j = DEBUG
# ------------------------------------------------------------------------
# Security & JWT Token (Type 1 = secret key, 2 = public / private key)
# ------------------------------------------------------------------------
server.crypto.public.key=publicKey.pem
server.crypto.private.key=privateKey.pem
server.token.issuer=${service.org}
# Type 1 = Secret, Type 2 = Public / Private Key
server.token.type=1
server.token.test=true
# Token Expiry Times - Security Policy will reject High Expiry Time
server.token.auth.expiry=600000
server.token.refresh.expiry=3600000
server.token.key=<([1234567890SecretKey!!To??Encrypt##Data@12345%6790])>
server.secure.data.key=<([1234567890SecretKEY!!TO??Encrypt##DATA@12345%6790])>
# ------------------------------------------------------------------------
# Keycloak Details for OAuth 2 Authentication
# ------------------------------------------------------------------------
server.keycloak.url=http://localhost:8080/realms/Fusion-Air/protocol/openid-connect/token
server.keycloak.certs=http://localhost:8080/realms/Fusion-Air/protocol/openid-connect/certs
server.keycloak.clientId=fusion-air-user-service
server.keycloak.secret=2AGe7XxP8evCmhdjD3cmgpE23y0g6PGU
server.keycloak.grantType=password
server.keycloak.publicKey=publicKey.KeyCloak.pem
server.keycloak.issuer=http://localhost:8080/realms/Fusion-Air
server.keycloak.enabled=false
# ------------------------------------------------------------------------
# Host Details
# ------------------------------------------------------------------------
server.host=localhost
server.host.dev=http://localhost:${server.port}
server.host.dev.desc=Development Server
server.host.uat=https://uat.${service.org}.com
server.host.uat.desc=UAT Server
server.host.prod=https://prod.${service.org}.com
server.host.prod.desc=Production Server
server.error.whitelabel.enabled=true
# Service Properties Details
# ------------------------------------------------------------------------
spring.codec.max-in-memory-size=3MB
app.property.product=fusion.air.product
app.property.product.list=/create, /status, /all/secured, /search/product, /search/price, /search/active, /deactivate, /activate, /update, /update/price, /update/details, /delete
app.property.list=element1, element2, element3
app.property.map={key1:'val1', key2 : 'val2', key3 : 'val3'}
# ------------------------------------------------------------------------
# Log Details
# ------------------------------------------------------------------------
# Log Groups
logging.group.tomcat=org.apache.catalina, org.apache.coyote, org.apache.tomcat
# Logging Levels for various components
logging.level.org.springframework.boot.web.servlet=INFO
logging.level.org.springframework.web.servlet.DispatcherServlet=INFO
logging.level.org.springframework.security.web.FilterChainProxy=INFO
# Spring Default Groups
logging.level.web=INFO
logging.level.sql=INFO
logging.level.tomcat=INFO
# Root level logging
logging.level.root=INFO
# Specify the logback configuration file
logging.config=classpath:logback-spring.xml
# Supported Log Format plain / json
logging.format=plain
# Log file paths and rolling policy
logging.path=/tmp/logs/${service.api.name}
# Log File Name. File Extension .log or .json is added dynamically based on logging format.
logging.file.name=${service.api.name}.v${server.version}
# Log File Pattern for Size and Time based File Roll Over Name
logging.pattern.rolling-file-name=${logging.path}/${logging.file.name}-%d{yyyy-MM-dd}-%i
# Max Single File Size = 30 MB
logging.file.max-size=10MB
# Retention and total size cap for logs
# Keep Log Files for 100 Days with Max Cap at 3 GB
logging.file.max-history=100
logging.file.total-size-cap=3GB
# =======================================================================
# Text Encryption
# =======================================================================
# Ensure this matches your environment variable
jasypt.encryptor.password=${JASYPT_ENCRYPTOR_PASSWORD}
# Match the algorithm
jasypt.encryptor.algorithm=PBEWithHmacSHA512AndAES_256
jasypt.encryptor.iv-generator-classname=org.jasypt.iv.RandomIvGenerator
jasypt.encryptor.salt-generator-classname=org.jasypt.salt.RandomSaltGenerator
# =======================================================================
# Database Properties
# =======================================================================
db.server=mem
db.port=5432
db.name=ai_324
db.schema=ms_schema
db.vendor=H2
# To Store the Data in File
#spring.datasource.url=jdbc:h2:file:/data/demo
spring.datasource.url=jdbc:h2:${db.server}:${db.name};DB_CLOSE_ON_EXIT=FALSE
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=ENC(lA6JCEpK7+wuHDpB1A41DOUfn6L74DQxaazXLTjyQHY5/X6CONfUEyDt6erWifrN)
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
spring.datasource.hikari.connection-test-query=SELECT 1
# =======================================================================
# JPA / Hibernate Properties
# ------------------------------------------------------------------------
spring.jpa.show-sql=true
spring.jpa.defer-datasource-initialization=true
#spring.sql.init.data-locations=data-trans.sql
# Hibernate ddl auto (create, create-drop, validate, update)
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.properties.hibernate.validator.apply_to_ddl=false
#spring.jpa.properties.hibernate.check_nullability=true
# =======================================================================
# Open API Properties
# For More Info: https://springdoc.org/#Introduction
# springdoc.api-docs.path=/api-docs
# =======================================================================
springdoc.api-docs.path=${service.api.path}
springdoc.swagger-ui.path=${service.api.path}/swagger-ui.html
springdoc.swagger-ui.tryItOutEnabled=true
springdoc.swagger-ui.filter=true
springdoc.swagger-ui.use-root-path=true
springdoc.swagger-ui.disable-swagger-default-url=true
server.forward-headers-strategy=framework
springdoc.cache.disabled=true
springdoc.writer-with-default-pretty-printer=true
#springdoc.swagger-ui.configUrl=${service.api.path}/swagger-config/swagger-config.json
# Disabling the api-docs endpoint
springdoc.api-docs.enabled=true
# Disabling the swagger-ui
#springdoc.swagger-ui.enabled=true
springdoc.swagger-ui.operationsSorter=method
#For sorting tags alphabetically
springdoc.swagger-ui.tagsSorter=alpha
springdoc.show-actuator=true
# Packages to include
# springdoc.packagesToScan=io.fusion.water, io.fusion.fire
# Paths to include
# springdoc.pathsToMatch=/v1, /api/health/**
# To expose the swagger-ui, on the management port
#springdoc.use-management-port=true
# This property enables the openapi and swaggerui endpoints to be exposed
# beneath the actuator base path.
# management.endpoints.web.exposure.include=openapi, swaggerui
# =======================================================================