Log Management

A log is a record of the events occurring within an organization’s systems and networks. Logs are composed of log entries. Each entry contains information related to a specific event that has occurred within a system or network.

FintechOS logs contain records related to computer security (which are generated by sources such as antivirus software, firewalls, and intrusion detection and prevention systems), as well as logs generated by operating systems (on servers, workstations, and networking equipment) and applications.

Security Logs

Irrespective of the device or application, it is imperative that log data has accurate time stamps. In FintechOS, logs are generated at the following levels:

Operating system logs and application logs

FintechOS operating system logs and application logs typically hold a variety of information, including computer security-related data.

Enable Telemetry

  1. In Configuration Manager on your environment, go to Portal > App Settings.

  2. Configure the azure-appinsights-logging key and add the following: "enabled=1; apiKey=[apikey]; sdkLogLevel=Information; logLevel=Warning; flushInterval=10s;"

    • sdkLogLevel - the logging level for the log server SDK method;

    • logLevel - the level for logs generated by the platform, for example when a job in the job server starts or ends.

  3. Enable the azure-appinsights-logging key.

  4. Configure the azure-appinsights-telemetry-logging key, and add one of the following values:

    • 0 - telemetry data is not recorded;

    • 1 - data on incoming HTTP requests received by the Portal/Studio;

    • 2 - records detailed information on dependencies, such as SQL queries, HTTP calls to other systems, the time it took for each server-side SDK method to execute, etc.).

Anonymize Logs

The log entries that contain sensitive information, such as usernames, passwords, credit card numbers, personal identification numbers, can be anonymized in the platform, thus assuring compliance with GDPR standards. You can anonymize the properties when a JSON object or array is logged using the log SDK method. The sensitive information is replaced with N/A in anonymized logs.

Enable or Disable Log Anonymization

Log anonymization is enabled by default on environments, and you can check in the Configuration Manager.

  1. Go to App Features in Configuration Manager on your environment.

  2. Add the value 1 to the feature-log-anonymization-enabled to enable anonymization. Add 0 to disable it.

Define Logs to be Anonymized

Once the log anonymization feature was enabled in Configuration Manager, you must now define which logs to be anonymized.

  1. In FintechOS Studio, go to System Parameters.

  2. Double click on sys-log-anonymization-settings to open this system parameter.

  3. In the Paramenter Value field, add the logs to be anonymized, eg.: username, password, credit card number. Make sure to separate parameters with a comma.

  4. Click Save and close when done.

Filter SDK logs

You can set a different level for SDK logs so that you can view certain logs on development environments. In this way, you can differentiate between logs at platform level and logs from server automation scripts. You can filter logs by automation script, digital asset, machine name, user ID, correlation ID.

Enable Filters for Logs

Follow the steps below to enable or disable the filters for logs:

  1. In Configuration Manager, go to Studio > App Settings.

  2. Add sdkLogLevel: Info; to the azure-appinsights-logging entry. You can change the value from Info to any other log level that you need, such as Debug or Error.

Define Filters

You need to add some settings for the logs. Follow the steps below to define which property you want to filter out:

  1. In Configuration Manager, go to Studio > App Settings.

  2. Edit sdk-log-filters to add {"automationscript":["automation_script_name"], "digital-asset":["digital_asset_name"]}.

  3. After the changes are done, wait for this change to take effect.

NOTE  
Automation scripts part of digital assets are displayed if the digital asset is specified in sdk-log-filters.