# Hastic server Implementation of basic pattern recognition and unsupervised learning for anomaly detection. Implementation of analytic unit for Hastic. see [REST API](REST.md) ## Build & run Server needs Grafana's API key (http:///org/apikeys) to query data from Grafana datasources. API key role can be any of: - Viewer - Editor - Admin ### Docker installation Example of running hastic-server in Docker: ``` docker build -t hastic-server . docker run -d --name hastic-server -p 80:8000 -e HASTIC_API_KEY= hastic-server ``` ### Linux installation #### 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 See [hooks docs](https://github.com/hastic/hastic-server/blob/master/HOOKS.md) for notifications about events. #### Dependencies - git - python3 with: - pandas - seglearn - scipy - tsfresh - nodejs >= 9 Example of running hastic-server on Debian / Ubuntu host: ``` $ export HASTIC_API_KEY= $ export HASTIC_PORT= $ export HASTIC_ALERT_ENDPOINT=http://alert.example.com # apt-get install \ python3 \ 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 $ git clone https://github.com/hastic/hastic-server.git $ cd hastic-server/server $ npm install && npm run build $ npm start ```