mirror of
https://github.com/NationalSecurityAgency/datawave.git
synced 2026-11-10 17:31:14 -10:00
222 lines
6.3 KiB
YAML
222 lines
6.3 KiB
YAML
spring:
|
|
cache:
|
|
type: caffeine
|
|
caffeine:
|
|
spec: maximumSize=1000,expireAfterWrite=5m
|
|
rabbitmq:
|
|
publisher-confirm-type: correlated
|
|
publisher-returns: true
|
|
cloud:
|
|
stream:
|
|
rabbit:
|
|
bindings:
|
|
annotationSource-out-0:
|
|
producer:
|
|
useConfirmHeader: true
|
|
logAnnotationSink-in-0:
|
|
consumer:
|
|
autoBindDlq: true
|
|
accumuloAnnotationSink-in-0:
|
|
consumer:
|
|
autoBindDlq: true
|
|
dumpAnnotationSink-in-0:
|
|
consumer:
|
|
autoBindDlq: true
|
|
bindQueue: false
|
|
bindings:
|
|
annotationSource-out-0:
|
|
destination: 'annotation'
|
|
content-type: application/x-protobuf
|
|
producer:
|
|
errorChannelEnabled: true
|
|
logAnnotationSink-in-0:
|
|
destination: 'annotation'
|
|
content-type: application/x-protobuf
|
|
group: 'log'
|
|
accumuloAnnotationSink-in-0:
|
|
destination: 'annotation'
|
|
content-type: application/x-protobuf
|
|
group: 'accumulo'
|
|
dumpAnnotationSink-in-0:
|
|
destination: 'annotation'
|
|
content-type: application/x-protobuf
|
|
group: 'dump'
|
|
consumer:
|
|
concurrency: 5
|
|
jackson:
|
|
default-property-inclusion: non-null
|
|
deserialization:
|
|
fail-on-unknown-properties: false
|
|
hazelcast:
|
|
client:
|
|
# Annotation has no distributed cache state; all roles use local caches.
|
|
enabled: false
|
|
|
|
annotation:
|
|
# Activate exactly one of api, writer, or combined.
|
|
# The matching Config Server overlay is required.
|
|
system-from: "datawave-annotation-service"
|
|
|
|
health:
|
|
rabbit:
|
|
enabled: true
|
|
attemptRecovery: true
|
|
fixMissing: true
|
|
fixInvalid: true
|
|
# Both roles require the persistence route, even while no writer is running.
|
|
# Keep these lists aligned with the required stream destinations/groups.
|
|
# Deployment overrides replace lists; include every required route.
|
|
queues:
|
|
- name: 'annotation.accumulo'
|
|
durable: true
|
|
exclusive: false
|
|
autoDelete: false
|
|
arguments:
|
|
'x-dead-letter-exchange': 'DLX'
|
|
'x-dead-letter-routing-key': 'annotation.accumulo'
|
|
- name: 'annotation.accumulo.dlq'
|
|
durable: true
|
|
exclusive: false
|
|
autoDelete: false
|
|
exchanges:
|
|
- name: 'annotation'
|
|
type: 'topic'
|
|
durable: true
|
|
autoDelete: false
|
|
internal: false
|
|
delayed: false
|
|
- name: 'DLX'
|
|
type: 'direct'
|
|
durable: true
|
|
autoDelete: false
|
|
internal: false
|
|
delayed: false
|
|
bindings:
|
|
- destination: 'annotation.accumulo'
|
|
destinationType: 'queue'
|
|
source: 'annotation'
|
|
routingKey: '#'
|
|
- destination: 'annotation.accumulo.dlq'
|
|
destinationType: 'queue'
|
|
source: 'DLX'
|
|
routingKey: 'annotation.accumulo'
|
|
cluster:
|
|
expectedNodes: 1
|
|
failIfNodeMissing: true
|
|
numChecksBeforeFailure: 3
|
|
management:
|
|
scheme: 'http'
|
|
host: 'rabbitmq'
|
|
port: 15672
|
|
uri: '/api/'
|
|
|
|
annotationAckEnabled: true
|
|
# The maximum amount of queries we support before reporting Unready
|
|
maxConnections: 40
|
|
# By default, query content cloud - set cluster specific config overrides
|
|
annotationTableName: 'datawave.annotation'
|
|
annotationSourceTableName: 'datawave.annotationSource'
|
|
connPoolName: 'WAREHOUSE'
|
|
priority: 'NORMAL'
|
|
enableInternalIdLookup: 'true'
|
|
lookup:
|
|
datawave-query-host: "webservice:8443"
|
|
datawave-response-classes:
|
|
- "datawave.webservice.result.GenericResponse"
|
|
- "datawave.webservice.result.VoidResponse"
|
|
- "datawave.webservice.result.DefaultEventQueryResponse"
|
|
annotation-unknown-fields-ignores: true
|
|
writers:
|
|
log:
|
|
enabled: false
|
|
accumulo:
|
|
enabled: true
|
|
health:
|
|
enabled: true
|
|
accumuloConfig:
|
|
zookeepers: '${accumulo.zookeepers}'
|
|
instanceName: '${accumulo.instanceName}'
|
|
username: '${accumulo.username}'
|
|
password: '${accumulo.password}'
|
|
file:
|
|
# Direct API fallback on publish failure; disabled automatically in the writer role.
|
|
enabled: true
|
|
pathUri: 'file:///annotation'
|
|
dump:
|
|
# Queue-driven file output in writer/combined mode; provision its queue (bindQueue: false).
|
|
enabled: false
|
|
pathUri: 'file:///annotation-dump'
|
|
|
|
datawave:
|
|
swagger:
|
|
title: "Annotation Service"
|
|
description: "REST API provided by the Annotation Service"
|
|
metadata:
|
|
all-metadata-auths:
|
|
- PRIVATE,PUBLIC
|
|
type-substitutions:
|
|
"[datawave.data.type.DateType]": "datawave.data.type.RawDateType"
|
|
connection:
|
|
factory:
|
|
defaultPoolName: "WAREHOUSE"
|
|
pools:
|
|
"WAREHOUSE":
|
|
zookeepers: '${accumulo.zookeepers}'
|
|
instance: '${accumulo.instanceName}'
|
|
username: '${accumulo.username}'
|
|
password: '${accumulo.password}'
|
|
lowPriorityPoolSize: 40
|
|
normalPriorityPoolSize: 40
|
|
highPriorityPoolSize: 40
|
|
adminPriorityPoolSize: 40
|
|
|
|
server:
|
|
ssl:
|
|
client-auth: NEED
|
|
|
|
# Authorization requires a client certificate - this will be used when running from the dev
|
|
#server:
|
|
# port: 8748
|
|
# non-secure-port: 8780
|
|
# servlet:
|
|
# context-path: /annotation
|
|
# outbound-ssl:
|
|
# key-store: ${server.ssl.key-store}
|
|
# key-store-password: ${server.ssl.key-store-password}
|
|
# key-store-type: ${server.ssl.key-store-type}
|
|
# trust-store: ${server.ssl.trust-store}
|
|
# trust-store-password: ${server.ssl.trust-store-password}
|
|
# trust-store-type: ${server.ssl.trust-store-type}
|
|
#
|
|
#management:
|
|
# endpoints:
|
|
# web:
|
|
# base-path: "/mgmt"
|
|
#
|
|
#app:
|
|
# packages: datawave.microservice
|
|
|
|
swagger:
|
|
doc:
|
|
packages: datawave.microservice.annotation
|
|
|
|
springdoc:
|
|
api-docs:
|
|
path: /apidocs
|
|
show-actuator: true
|
|
writer-with-default-pretty-printer: true
|
|
swagger-ui:
|
|
docExpansion: 'none'
|
|
operationsSorter: 'method'
|
|
tagsSorter: 'alpha'
|
|
|
|
logging:
|
|
level:
|
|
root: INFO
|
|
datawave.microservice.annotation: DEBUG
|
|
datawave.microservice.annotation.health.rabbit: TRACE
|
|
org.apache.zookeeper: INFO
|
|
org.apache.accumulo: ERROR
|
|
org.springframework.messaging: INFO
|
|
org.springframework.amqp: INFO
|