You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
1.7 KiB

7 years ago
# Hastic server
Implementation of basic pattern recognition and unsupervised learning for anomaly detection.
7 years ago
Implementation of analytic unit for Hastic.
see [REST API](REST.md)
## Build & run
7 years ago
Server needs Grafana's API key (http://<your_grafana_url>/org/apikeys) to query data from Grafana datasources.
7 years ago
7 years ago
API key role can be any of:
- Viewer
- Editor
- Admin
7 years ago
### Docker installation
7 years ago
7 years ago
Example of running hastic-server in Docker:
7 years ago
```
docker build -t hastic-server .
7 years ago
docker run -d --name hastic-server -p 80:8000 -e HASTIC_API_KEY=<your_grafana_api_key> hastic-server
```
7 years ago
### Linux installation
7 years ago
#### Environment variables
You can export following environment variables for hastic-server to use:
- HASTIC_API_KEY - (required) API-key of your Grafana instance
- HASTIC_PORT - (optional) port you want to run server on, default: 8000
7 years ago
- HASTIC_ALERT_ENDPOINT - (optional) endpoint you want to send alerts to
Alert example (method: POST):
```
{
anomaly: 'cpu_load',
status: <str>
}
```
`status` field can be one of:
- `alert`
- `OK`
7 years ago
#### Dependencies
7 years ago
- git
7 years ago
- python3 with:
- pandas
- seglearn
- scipy
- tsfresh
- nodejs >= 9
Example of running hastic-server on Debian / Ubuntu host:
```
$ export HASTIC_API_KEY=<your_grafana_api_key>
$ export HASTIC_PORT=<port_you_want_to_run_server_on>
7 years ago
$ export HASTIC_ALERT_ENDPOINT=http://alert.example.com
# apt-get install \
python3 \
7 years ago
python3-pip \
gnupg \
curl \
make \
g++ \
git
$ pip3 install pandas
$ pip3 install seglearn
$ pip3 install scipy
$ pip3 install tsfresh
$ curl -sL https://deb.nodesource.com/setup_9.x | bash -
# apt-get update && apt-get install -y nodejs
7 years ago
$ git clone https://github.com/hastic/hastic-server.git
7 years ago
$ cd hastic-server/server
7 years ago
$ npm install && npm run build
$ npm start
7 years ago
```