Skip to content

manifoldx/hastic

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hastic

Hastic needs Prometheus or InfluxDB instance for getting metrics.

Build from source (Linux)

Prerequirements

  1. Install cargo (required version: >=1.49)
  2. Install node.js >=10.x
  3. Install yarn
  4. Install x86_64-unknown-linux-musl: rustup target add x86_64-unknown-linux-musl
  5. musl-tools: sudo apt install musl-tools

Build

make

Configure

Hastic can be configured using config-file or environment variables.

At first, choose which datasource you'll be using: prometheus or influx. Only one can be used at a time.

Config-file

  • copy the config example to the release directory:
cp config.example.toml release/config.toml
  • edit the config file, e.g. using nano:
nano release/config.toml

Environment variables

All config fields are also available as environment variables with HASTIC_ prefix

Variable name structure:

  • for high-level fields: HASTIC_<field_name>, e.g. HASTIC_PORT
  • for nested fields: HASTIC_<category_name>__<field_name>, e.g. HASTIC_PROMETHEUS__URL

Environment variables can be set either by exporting them (they'll be actual until a bash-session is closed):

export HASTIC_PORT=8000
export HASTIC_PROMETHEUS__URL=http://localhost:9090
export HASTIC_PROMETHEUS__QUERY=rate(go_memstats_alloc_bytes_total[5m])

or specifing them in a run command (they'll be actual only for one run):

HASTIC_PORT=8000 HASTIC_PROMETHEUS__URL=http://localhost:9090 HASTIC_PROMETHEUS__QUERY=rate(go_memstats_alloc_bytes_total[5m]) ./release/hastic

Run

cd release
./hastic

open http://localhost:4347 in browser

Releases

No releases published

Packages

No packages published

Languages

  • Rust 62.7%
  • TypeScript 25.1%
  • Vue 10.6%
  • JavaScript 0.5%
  • HTML 0.4%
  • Dockerfile 0.4%
  • Makefile 0.3%