Home

Awesome

Quorum Reporting

Quorum Reporting is a tool that indexes blocks and transactions in a Quorum network and generates reports to give users insights into what is happening with their contracts.

It generates reports of the contract's state, allowing you to see how the contract changes and evolves over its lifetime. It will also interpret and parse events that the contract emits so that they can be viewed in a dashboard or other application using the reporting API.

Usage

Pre-requisites

Up & Running

Using Binary

Build
go build [-o quorum-reporting]
Run
./quorum-report
./quorum-report -config <path to config file>
./quorum-report -help

Using Docker

Build
docker build . -t quorum-reporting
Run
docker run -p <port mapping> --mount type=bind,source=<path to config>,target=/config.toml quorum-reporting:latest

Configuration

A sample configuration file has been provided with details about each of the options. Remove ElasticSearch configuration section from config.toml to enable In-memory database for development mode.

Additionally, application logging verbosity can be controlled with the -verbosity <level> flag, where <level> corresponds to:

0: ERROR
1: WARNING
2: INFO
3: DEBUG

Interact with Quorum Reporting through RPC

The application has a set of RPC APIs that are used to interact with the application. See here for all the available RPC APIs.

Development

Pre-Requisites

Development Environment

git clone https://github.com/ConsenSys/quorum-reporting.git
go get ./...

Design

Architecture

Architecture & Design

Database Schema

Elasticsearch Database Schema Reference

RPC API Specification

Reference