GLU.Engine Logging Approach
Within each GLU.Engine, various classes handle specific tasks. For instance, there’s a dedicated class for Orchestration Handlers, while others manage protocol-specific connectors. Starting from GLU.Ware release v1.9.17, each class within a GLU.Engine is responsible for printing its own logs to the gluware.log file. Moreover, the logging process is now asynchronous, resulting in significant performance enhancements for your GLU.Engines. These improvements also offer greater control over logging for different areas of GLU.Engine execution.
For further details on utilising the logging levels categorised into classes, please reach out to GLU Support.
GLU.Engine Server Specification
- RAM: 16 GB
- Disk: 100 GB SSD or high-speed 15k RPM drives
- CPU: 1 Dual Core CPU (x86_64 architecture)
- Operating System: Ubuntu, latest version 18.04 or later – Ubuntu is the recommended Linux distribution for hosting GLU.Engine due to its stability, security, and wide community support.
- Java Virtual Machine (JVM): Java 8 – GLU.Engine requires a Java runtime environment to execute Java-based applications. Java 8 is specified as the compatible version for running GLU.Engine.
GLU.Engine Prerequisites
The prerequisites for GLU.Engine include having Java installed, specifically version 1.8. To check the Java version, use the command:
$ java -version |
Result
$ java -version openjdk version “1.8.0_201” OpenJDK Runtime Environment (build 1.8.0_201-b09) OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode) |
If Java is not installed, you can install it using the following command (assuming the OS supports yum package manager):
$ yum install java-1.8.0-openjdk.x86_64 |
This command installs the OpenJDK version 1.8.0 for 64-bit systems.
Optional Elastic Stack Deployment
For deploying the Elastic Stack, separate servers are required to run each of the Elastic systems: Elasticsearch, Logstash, and Kibana. However, for testing purposes, a single server can be used.
In production environments, it’s crucial to conduct load testing or performance testing to determine the appropriate sizing for the servers. This analysis involves examining various metrics such as:
- forecast transaction volumes
- log levels and types
- retention periods
- system availability requirements
- transaction protocols being used, see list Connectors
- number of expected inflight transactions, see Throttle Type 2: Concurrent Requests using Thread Pools
- number for the Max Connections, see Max Connections
Depending on client configuration choices, the three components of the Elastic Stack are:
- ElasticSearch
- Logstash
- Kibana
Additionally, Filebeat is deployed on the server where the GLU.Engine is running to gather and deliver logs to either Logstash or Elasticsearch based on the configuration.
Optional Network Prerequisites for Elastic Stack
Quick reference to the ports which need to be opened against each of the Elastic components. Port Server ELK service Area:
Port | Server | ELK service | Area |
---|---|---|---|
9200 | Elasticsearch | Elasticsearch | In Network |
5044 | GLU.EngineLogstash | FilebeatsLogstash | In Network |
5601 | Kibana | Kibana | Intranet Access (Inside Organisation) |
Optional Install Instructions links for Elastic Stack
Please refer to the Elastic Stack documentation for installation instructions. See the ElasticStackInstallGuide.
GLU.Engine logs have been tested with the following versions of Elastic Stack:
- Kibana 7.8 [1]
- Elasticsearch 7.8 [2]
- Logstash 7.8 [3] –> Separate server is direct files to be sent to Logstash
- filebeats 7.8 [4] –> deployed on GLU.Engine Server (details of filebeats configuration file)