Service Configuration

The service configuration is maintained in the file 'application.yaml' in the config folder

# Inventory Manager Config

projectrootdir: ./
datasource: datasources.yml
datasourcetables: datasource_tables.yml
targetDataStore: target_datastore.yml
outputFolder: /opt/invmgr/output

server:
  applicationConnectors:
    - type: http
      port: 8090
    - type: https
      port: 8898
      keyStorePath: .keystore
      keyStorePassword: <password>
      validateCerts: false
      validatePeers: false
  adminConnectors:
    - type: http
      port: 8081
    - type: https
      port: 8889
      keyStorePath: .keystore
      keyStorePassword: <password>
      validateCerts: false

  #If want to use our own exception mappers
  registerDefaultExceptionMappers: false

  #Disable the requestLog on console
  requestLog:
    appenders:
      - type: file
        currentLogFilename: /var/log/pipeline/request.log
        archivedLogFilenamePattern: /var/log/pipeline/request-%i.log.gz
        threshold: ALL
        maxFileSize: 10MB
        archivedFileCount: 5

login: appuser
password: <password>
inventorySchedule: inventory-schedule.yml

database:
  driverClass: org.postgresql.Driver
  user: dbuser
  password: <password>
  url: jdbc:postgresql://localhost:5432/invmgrdb

apiURL: https://
apiKey: <API Key>


logging:
  level: INFO
  loggers:
    io.invariant:
      level: DEBUG
      additive: false
      appenders:
        - type: file
          threshold: ALL
          maxFileSize: 20MB
          currentLogFilename: /var/log/pipeline/invariant-invmgr/invmgr.log
          archivedLogFilenamePattern: /var/log/pipeline/invariant-invmgr/invmgr-%i.log.gz
          archivedFileCount: 5
    org.hibernate:
      level: ERROR
      additive: false
      appenders:
        - type: file
          currentLogFilename: /var/log/pipeline/invariant-invmgr/sql.log
          archivedLogFilenamePattern: /var/log/pipeline/invariant-invmgr/sql-%d.log.gz
          archivedFileCount: 5

The application connector ports are used to bind the service and provide the endpoint for clients.

The "projectrootdir" specifies the location to locate the other configuration files. The other files should be in that folder or in a relative path to the root directory.

projectrootdir: ./
datasource: datasources.yml
datasourceTables: datasource_tables.yml
targetDataStore: target_datastore.yml
outputFolder: /opt/invmgr/output

The "datasource" yaml file contains the connection information for the source databases.

The "datasource tables" yaml file contains the list of tables with the audit columns and other metadata required for processing.

The "target datastore" yaml file is used to define the configuration settings for the target store which is usually a Hive store.

The "output folder" points to the directory where the generated artifacts are written out.

Last updated