In this article we will cover how to manage, monitor and visualize Mistika Workflows log files data with an external web application such as New Relic. While there are several similar applications like ElasticSearch, Nagios, Dynatrace, or Logz.io, we have chosen New Relic as example due to its easiness of deployment with Mistika Workflows within minutes. As all these platforms work in a similar way this article should serve as a guide for other deployments too.


Once logged in New Relic, first step must be adding the system where Mistika Workflows will be running. In order to monitor your system an agent must be installed: just select the 'Guided Install' option to follow a step by step guided installation. You can also perform a manual installation following New Relic's guide.




Once the agent is installed, your system information will appear in the 'Infraestructure ->Hosts' section. Here all system's resources can be monitored in real time. Write down your 'hostname' as it will be needed later:



You may also navigate to your user profile and get your Account ID in the Administration tab for further configuration:



In order to forward Mistika Workflows' logs to New Relic's database, you must navigate to the Programs File folder installation of New Relic and generate a file, 'logging.yml', under the path //Program Files/New Relic/newrelic-infra/logging.d/



The content of this loggin.yml file must have the path where Mistika Workflows writes its logs. You can also custom some other data fields such as department, or maintainer. A sample loggin.yml file is attached in this same article.


###############################################################################

# Mistika Workflows Log forwarder configuration file                                                                                   #

# Source: file                                                                                                                                                   #

# Available customization parameters: attributes, max_line_kb, pattern                                                       #

###############################################################################

logs:


  - name: WorkflowsRenderLog

    file: C:\Users\YOUR-USER\SGO AppData\Workflows\log\*.log

    attributes:

      application: Mistika Workflows

      department: engineering

      maintainer: support@sgo.es

    max_line_kb: 256



On the other hand, modify the WorkflowsLogsDashboard-Template.json file attached to this article and replace all YOUR-ACCOUNT-ID and YOUR-HOSTNAME with your own Account ID and hostname retrieved in previous steps. This can be done with any simple text editor by searching and replacing all of them respectively:



Finally, in New Relic's Dashboards menu select 'Import Dashboard', paste the content of your .json file modified with your own AccountID and hostname values, and click on 'Import Dashboard':



A new Dashboard named 'Workflows Logs' will appear, where all logs generated by Mistika Workflows will be parsed and plotted in three different graphs in real time:



In this same dashboard you will also find all logs' content, and by clicking any of them more details about the log can be observed:




All queries can be customized to fit your own needs. They basically consist in a pseudo-SQL syntax where the content of the log message is parsed with AND conditions. Also the time gap to be observed can be modified by adjusting the SINCE value:



Moreover, New Relic offers a high degree of customization of all widgets, colors and much more. You can find more details by following its own dashboard's documentation.