Sarjitsu

screenshot of Sarjitsu
flask

dockerized setup for visualizing System Activity Report (SAR) data.

Overview

Sarjitsu is an application that uses SAR (System Activity Reporter) binary data to generate dynamic visualizations using Grafana. The name is a combination of "SAR" and "jitsu," symbolizing the unlocking of the power of SAR data. The application consists of several containerized instances, including a datasource for storing timeseries data and metadata, a metricstore powered by PostgreSQL for storing dashboard, datasource, and user metadata, a frontend powered by Grafana for visualization, a middleware API powered by Python-Flask for communication with the backend and metricstore, a backend web app powered by Python-Flask for uploading SAR binary files and obtaining visualizations, a caching solution based on Redis for the web app, and an Nginx-based proxy.

Features

  • Ingests SAR binary data files and generates dynamic visualizations in Grafana.
  • Containerized instances for datasource, metricstore, frontend, middleware, backend, caching, and proxy.
  • Full-text search engine powered by Elasticsearch for the datasource.
  • PostgreSQL-powered metricstore for storing metadata about dashboards, datasource, and users.
  • Python-Flask-powered middleware API for communication with the backend and metricstore.
  • Nginx-based proxy for the web app.
  • Redis-based caching solution for the web app.

Option 1: Through Docker Compose

  1. Prerequisites: Install Docker Compose.
  2. Copy env.example to .env.
  3. Run the following command in the project root folder:
docker-compose up --build -d

Option 2: Through Openshift

  1. Get your Openshift cluster up and running.
  2. Follow the deployment instructions in the ose-deployment.md file.

Summary

Sarjitsu is a powerful application that utilizes SAR binary data to generate dynamic visualizations in Grafana. It offers easy installation options through Docker Compose or Openshift. With its containerized instances and powerful components such as Elasticsearch, PostgreSQL, Python-Flask, and Nginx, Sarjitsu provides a robust and scalable solution for analyzing SAR data.

flask
Flask

Flask is a lightweight and popular web framework for Python, known for its simplicity and flexibility. It is widely used to build web applications, providing a minimalistic approach to web development with features like routing, templates, and support for extensions.

dashboard
Dashboard

A dashboard style website template is a pre-designed layout that features a user interface resembling a control panel or dashboard. It typically includes charts, graphs, tables, and other data visualization tools that allow users to monitor and analyze data in real-time.

docker
Docker

A website that uses Docker for containerization to streamline development, testing, and deployment workflows. This includes features such as containerization of dependencies, automated builds and deployments, and container orchestration to ensure scalability and availability.