Preface

Purpose

This guide provides the procedure for installation of Oracle Banking Microservices Architecture and related products including database creation and required schemas using the Installer.

Note:

For the exact version to be installed, refer to Tech Stack section of Release Notes.

Audience

This guide is intended for WebLogic admin or ops-web team who are responsible for installing the OFSS banking products.

Before You Begin

Kindly refer to the Getting Started User Guide for information on common functionalities like login, navigation, and general settings before proceeding with this guide.

Module Pre-requisite

Specify User Id and Password, and login to the Home screen.

Setup and Start Logstash

This topic provides the systematic instructions to setup and start Logstash.

  1. Create a new logstash.conf file that provides the required file parsing and integration for Elasticsearch.
    logstatsh.conf:
    #Point to the application logs
    input {
     file {
      type => "java"
      path => "/scratch/app/work_area/app_logs/*.log"
      codec => multiline {
       pattern => "^%{YEAR}-%{MONTHNUM}-%{MONTHDAY} %{TIME}.*"
       negate => "true"
       what => "previous"
      }
     }
    }
    #Provide the parsing logic to transform logs into JSON
    filter {
     #If log line contains tab character followed by 'at' then we will tag that entry as stacktrace
     if [message] =~ "\tat" {
      grok {
       match => ["message", "^(\tat)"]
       add_tag => ["stacktrace"]
      }
     }
    
     #Grokking Spring Boot's default log format
     grok {
      match => [ "message",
                 "(?<timestamp>%{YEAR}-%{MONTHNUM}-%{MONTHDAY}
    %{TIME}) %{LOGLEVEL:level} %{NUMBER:pid} --- \[(?<thread>[A-Za-z0-9-]+)\] [A-Za-z0-9.]*\.(?<class>[A-Za-z0-9#_]+)\s*:\s+(?<logmessage>.*)",
                 "message",
                 "(?<timestamp>%{YEAR}-%{MONTHNUM}-%{MONTHDAY} %{TIME}) %{LOGLEVEL:level} %{NUMBER:pid} --- .+? :\s+(?<logmessage>.*)"
                ]
     }
      # pattern matching logback pattern
      grok {
             match =>
     { "message" => "%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span},%{DATA:exportable}\]\s+\[%{DATA:environment}\]\s+\[%{DATA:tenant}\]\s+\[%{DATA:user}\]\s+\[%{DATA:branch}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}"
     }
       }
       #Parsing out timestamps which are in timestamp field thanks to previous grok section
       date {
        match => [ "timestamp" , "yyyy-MM-dd HH:mm:ss.SSS" ]
       }
      }
      #Ingest logs to Elasticsearch
      output {
       elasticsearch { hosts => ["localhost:9200"] }
       stdout { codec => rubydebug }
      }
  2. Start the Logstash process using below command.
    >nohup ./bin/logstash -f logstash.conf

Related Resources

For more information, refer to the following documents:
  • Product Installation Guide

Acronyms and Abbreviations

The list of the acronyms and abbreviations that are used in this guide are as follows:

Table -1 Acronyms and Abbreviations

Abbreviation Description
CMC Common Core
OS Operating System
SMS Security Management System
VM Virtual Machine

Module Post-requisite

After finishing all the requirements, log out from the Home screen.