Adds micrometer-registry-prometheus and exposes /api/v1/prometheus endpoint (unauthenticated for scraping). ServerMetrics component provides business metrics beyond default JVM/HTTP: Gauges: agents by state, SSE connections, buffer depths (execution, processor, log, metrics), accumulator pending exchanges. Counters: ingestion drops (buffer_full, no_agent, no_identity), agent transitions (went_stale, went_dead, recovered), deployment outcomes (running, failed, degraded), auth failures (invalid_token, revoked, oidc_rejected). Timers: ClickHouse flush duration by type, deployment duration. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
107 lines
3.7 KiB
YAML
107 lines
3.7 KiB
YAML
server:
|
|
port: 8081
|
|
|
|
spring:
|
|
servlet:
|
|
multipart:
|
|
max-file-size: 200MB
|
|
max-request-size: 200MB
|
|
datasource:
|
|
url: ${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/cameleer3?currentSchema=tenant_${cameleer.server.tenant.id}}
|
|
username: ${SPRING_DATASOURCE_USERNAME:cameleer}
|
|
password: ${SPRING_DATASOURCE_PASSWORD:cameleer_dev}
|
|
driver-class-name: org.postgresql.Driver
|
|
flyway:
|
|
enabled: true
|
|
locations: classpath:db/migration
|
|
create-schemas: true
|
|
mvc:
|
|
async:
|
|
request-timeout: -1
|
|
jackson:
|
|
serialization:
|
|
write-dates-as-timestamps: false
|
|
deserialization:
|
|
fail-on-unknown-properties: false
|
|
|
|
cameleer:
|
|
server:
|
|
tenant:
|
|
id: ${CAMELEER_SERVER_TENANT_ID:default}
|
|
agentregistry:
|
|
heartbeatintervalms: 30000
|
|
stalethresholdms: 90000
|
|
deadthresholdms: 300000
|
|
pingintervalms: 15000
|
|
commandexpiryms: 60000
|
|
lifecyclecheckintervalms: 10000
|
|
ingestion:
|
|
buffercapacity: 50000
|
|
batchsize: 5000
|
|
flushintervalms: 5000
|
|
bodysizelimit: ${CAMELEER_SERVER_INGESTION_BODYSIZELIMIT:16384}
|
|
runtime:
|
|
enabled: ${CAMELEER_SERVER_RUNTIME_ENABLED:true}
|
|
jarstoragepath: ${CAMELEER_SERVER_RUNTIME_JARSTORAGEPATH:/data/jars}
|
|
baseimage: ${CAMELEER_SERVER_RUNTIME_BASEIMAGE:cameleer-runtime-base:latest}
|
|
dockernetwork: ${CAMELEER_SERVER_RUNTIME_DOCKERNETWORK:cameleer}
|
|
agenthealthport: 9464
|
|
healthchecktimeout: 60
|
|
container:
|
|
memorylimit: ${CAMELEER_SERVER_RUNTIME_CONTAINER_MEMORYLIMIT:512m}
|
|
cpushares: ${CAMELEER_SERVER_RUNTIME_CONTAINER_CPUSHARES:512}
|
|
routingmode: ${CAMELEER_SERVER_RUNTIME_ROUTINGMODE:path}
|
|
routingdomain: ${CAMELEER_SERVER_RUNTIME_ROUTINGDOMAIN:localhost}
|
|
serverurl: ${CAMELEER_SERVER_RUNTIME_SERVERURL:}
|
|
jardockervolume: ${CAMELEER_SERVER_RUNTIME_JARDOCKERVOLUME:}
|
|
indexer:
|
|
debouncems: ${CAMELEER_SERVER_INDEXER_DEBOUNCEMS:2000}
|
|
queuesize: ${CAMELEER_SERVER_INDEXER_QUEUESIZE:10000}
|
|
catalog:
|
|
discoveryttldays: ${CAMELEER_SERVER_CATALOG_DISCOVERYTTLDAYS:7}
|
|
license:
|
|
token: ${CAMELEER_SERVER_LICENSE_TOKEN:}
|
|
file: ${CAMELEER_SERVER_LICENSE_FILE:}
|
|
publickey: ${CAMELEER_SERVER_LICENSE_PUBLICKEY:}
|
|
security:
|
|
accesstokenexpiryms: 3600000
|
|
refreshtokenexpiryms: 604800000
|
|
bootstraptoken: ${CAMELEER_SERVER_SECURITY_BOOTSTRAPTOKEN:}
|
|
bootstraptokenprevious: ${CAMELEER_SERVER_SECURITY_BOOTSTRAPTOKENPREVIOUS:}
|
|
uiuser: ${CAMELEER_SERVER_SECURITY_UIUSER:admin}
|
|
uipassword: ${CAMELEER_SERVER_SECURITY_UIPASSWORD:admin}
|
|
uiorigin: ${CAMELEER_SERVER_SECURITY_UIORIGIN:http://localhost:5173}
|
|
jwtsecret: ${CAMELEER_SERVER_SECURITY_JWTSECRET:}
|
|
corsallowedorigins: ${CAMELEER_SERVER_SECURITY_CORSALLOWEDORIGINS:}
|
|
infrastructureendpoints: ${CAMELEER_SERVER_SECURITY_INFRASTRUCTUREENDPOINTS:true}
|
|
oidc:
|
|
issueruri: ${CAMELEER_SERVER_SECURITY_OIDC_ISSUERURI:}
|
|
jwkseturi: ${CAMELEER_SERVER_SECURITY_OIDC_JWKSETURI:}
|
|
audience: ${CAMELEER_SERVER_SECURITY_OIDC_AUDIENCE:}
|
|
tlsskipverify: ${CAMELEER_SERVER_SECURITY_OIDC_TLSSKIPVERIFY:false}
|
|
clickhouse:
|
|
url: ${CAMELEER_SERVER_CLICKHOUSE_URL:jdbc:clickhouse://localhost:8123/cameleer}
|
|
username: ${CAMELEER_SERVER_CLICKHOUSE_USERNAME:default}
|
|
password: ${CAMELEER_SERVER_CLICKHOUSE_PASSWORD:}
|
|
|
|
springdoc:
|
|
api-docs:
|
|
path: /api/v1/api-docs
|
|
swagger-ui:
|
|
path: /api/v1/swagger-ui
|
|
|
|
logging:
|
|
level:
|
|
com.clickhouse: INFO
|
|
org.apache.hc.client5: WARN
|
|
|
|
management:
|
|
endpoints:
|
|
web:
|
|
base-path: /api/v1
|
|
exposure:
|
|
include: health,prometheus
|
|
endpoint:
|
|
health:
|
|
show-details: always
|