Infrastructure prerequisites

The Audit service requires the following components to be set up before it can be started:

  • Docker engine - version 17.06 or higher
  • Kafka - version 2.8 or higher
  • Elasticsearch - version 7.11.0 or higher

Dependencies

The Audit service is built as a Docker image and runs on top of Kafka and Elasticsearch. Therefore, these services must be set up and running before starting the Audit service.

Configuration

Configuring Kafka

To configure the Kafka server for the Audit service, set the following environment variables:

  • SPRING_KAFKA_BOOTSTRAP_SERVERS - address of the Kafka server, it should be in the format “host:port”
  • SPRING_KAFKA_CONSUMER_GROUP_ID - the consumer group ID to be used for the audit logs
  • KAFKA_CONSUMER_THREADS - the number of Kafka consumer threads to be used for processing audit logs
  • KAFKA_TOPIC_AUDIT_IN - the topic key for receiving audit logs

Configuring Elasticsearch

To configure Elasticsearch, set the following environment variables:

  • SPRING_ELASTICSEARCH_REST_URIS - the URL(s) of one or more Elasticsearch nodes to connect to (no protocol needed)
  • SPRING_ELASTICSEARCH_REST_DISABLESSL - a boolean value that determines whether SSL should be disabled for Elasticsearch connections
  • SPRING_ELASTICSEARCH_REST_USERNAME - the username to use for basic authentication when connecting to Elasticsearch
  • SPRING_ELASTICSEARCH_REST_PASSWORD - the password to use for basic authentication when connecting to Elasticsearch
  • SPRING_ELASTICSEARCH_INDEX_SETTINGS_DATASTREAM - (used if ES is used across all dev environments) - the index settings for the datastreams that will be created in Elasticsearch

Configuring logging

To control the log levels, set the following environment variables:

  • LOGGING_LEVEL_ROOT - the log level for the root Spring Boot microservice logs
  • LOGGING_LEVEL_APP - the log level for app-level logs

Make sure to overwrite the placeholders (where needed) with the appropriate values before starting the service.