Skip to main content

Getting Started

The Business Intelligence platform leverages Docker containers for modularity and scalability. This guide presents a comprehensive setup that integrates the platform with additional tools to simulate a near-real-world scenario. For a simpler introduction, refer to the Quick Start section.

Follow these steps to replicate this setup in your environment, then adapt as needed.

Grafana 11

The Business Engine requires Grafana 11. The platform maintains compatibility with the latest Grafana version.

Solution Overview

Overview of the Getting Started Solution
Overview of the Getting Started Solution

Once configured, this solution provides:

  • Business Studio: A central interface to manage Business Engines, alert rules, actions, and configurations
  • Grafana Instance: Preconfigured with three dashboards:
    • Business Engine performance metrics
    • Two dashboards for production data

Tutorial Video

Daria walks through the installation process and demonstrates creating your first alert action and linking it to an alert rule.

Getting Started with Business Intelligence Platform for Grafana 2.3.0

Docker Containers

Download all required Docker containers configuration from the GitHub repository.

Download Configuration from GitHub
Download Configuration from GitHub

The downloaded package includes a docker-compose.yml file with these containers:

  • Grafana: Preprovisioned with dashboards and data sources
  • Timescale: Stores Business Engine configuration and production data
  • Data Emulator: Node.js script generating sample production data, also demonstrating variable functionality
  • Prometheus: Collects and stores Business Engine performance metrics
  • JSON Server: Node.js-based action example, saving alert payloads to files
  • Business Engine: Uses a service account token to access Grafana HTTP APIs, evaluate alert rules, and trigger actions

Here’s the docker-compose.yml file for reference (no need to copy—it’s in the downloaded package):

docker-compose.yml
loading...

Starting the Platform

After downloading the package, navigate to its directory and follow these steps.

Grafana

  1. Launch the Grafana container:
    docker compose --profile grafana up -d
Grafana Container Running
Grafana Container Running
  1. Access Grafana at:

    http://localhost:3000

    Log in with username admin and password admin.

  2. Create a service account with Viewer or Editor role (Editor enables annotations):

    Create a Service Account
    Create a Service Account
  3. Generate a token:

    Generate a Service Account Token
    Generate a Service Account Token
  4. Update the GRAFANA_TOKEN in docker-compose.yml:

    Update GRAFANA_TOKEN in docker-compose.yml
    Update GRAFANA_TOKEN in docker-compose.yml
Version 2.4.0

Starting with version 2.4.0, configure Grafana token and URL directly in Business Studio, bypassing environment variable edits.

Business Engine, Timescale, and Prometheus

  1. Start these containers using the engine profile:
    docker compose --profile engine up -d

JSON Server (Optional)

  1. Launch the JSON Server to test action triggers (optional, but recommended):
    docker compose --profile actions up -d
    This enables saving alert payloads to log files, explored later.

Business Studio

  1. Download Business Studio from the Release Notes, then install and open it.

Working with the Platform

Business Studio

Configure actions and alert rules:

  • Set up an HTTP Request Action using http://json-server:3000 (if started) to log events and messages
  • Use the preprovisioned Test Dashboard to create alert rules with thresholds and regex patterns
    Alert Rules Configured via Business Studio
    Alert Rules Configured via Business Studio

Grafana Dashboards

Access three preprovisioned dashboards in Grafana:

Three Preprovisioned Dashboards in Grafana
Three Preprovisioned Dashboards in Grafana

Business Engine Dashboard

Displays metrics collected by Prometheus, filterable by instance and alert rule variables:

Dashboard Variables for Filtering
Dashboard Variables for Filtering

Rows of Analytics:

  1. Alerts:

    • Alert Results
    • Alert Latency
      Alerts Analytics
      Alerts Analytics
  2. Requests:

    • Business Engine API Requests
    • Business Engine Latency
    • Grafana API Requests
    • Grafana Latency
      Requests Analytics
      Requests Analytics
  3. Processes:

    • CPU Usage
    • Event Loop Lag
    • Memory Usage
    • Active Handlers/Requests Total
      Processes Analytics
      Processes Analytics

Production Data Dashboard

Features a time-series chart of device temperatures from the Data Emulator, switchable via the metric variable. Thick blue lines mark alert triggers, with actions logged by the JSON Server.

Production Data: Device Temperatures
Production Data: Device Temperatures

Test Dashboard

Includes a time-series chart and a log chart:

Test Dashboard
Test Dashboard

Stopping the Platform

To stop and remove all containers:

docker compose --profile engine down
docker compose --profile actions down
docker compose --profile grafana down