README.md
112 lines
| 2.7 KiB
| text/x-minidsrc
|
MarkdownLexer
/ backend / README.md
r161 | AppEnlight | |||
----------- | ||||
r191 | Performance, exception, and uptime monitoring for the Web | |||
![AppEnlight image](https://raw.githubusercontent.com/AppEnlight/appenlight/gh-pages/static/appenlight.png) | ||||
r161 | Automatic Installation | |||
====================== | ||||
r195 | Use the ansible or vagrant scripts in the `automation` repository to build complete instance of application. | |||
r161 | You can also use `packer` files in `automation/packer` to create whole VM's for KVM and VMWare. | |||
r195 | https://github.com/AppEnlight/automation | |||
r161 | Manual Installation | |||
=================== | ||||
To run the app you need to have meet prerequsites: | ||||
r185 | - python 3.5+ (currently 3.6 tested) | |||
r177 | - running elasticsearch (6.6.2 tested) | |||
- running postgresql (9.5+ required, tested 9.6 and 10.6) | ||||
r161 | - running redis | |||
Install the app by performing | ||||
pip install -r requirements.txt | ||||
python setup.py develop | ||||
Install the appenlight uptime plugin (`ae_uptime_ce` package from `appenlight-uptime-ce` repository). | ||||
r185 | For production usage you can do: | |||
pip install appenlight | ||||
pip install ae_uptime_ce | ||||
r161 | After installing the application you need to perform following steps: | |||
1. (optional) generate production.ini (or use a copy of development.ini) | ||||
r189 | appenlight-make-config production.ini | |||
r161 | ||||
r195 | 2. Setup database structure (replace filename with the name you picked for `appenlight-make-config`): | |||
r161 | ||||
r189 | appenlight-migratedb -c FILENAME.ini | |||
r161 | ||||
3. To configure elasticsearch: | ||||
r189 | appenlight-reindex-elasticsearch -t all -c FILENAME.ini | |||
r161 | ||||
4. Create base database objects | ||||
(run this command with help flag to see how to create administrator user) | ||||
r189 | appenlight-initializedb -c FILENAME.ini | |||
r161 | ||||
5. Generate static assets | ||||
r189 | appenlight-static -c FILENAME.ini | |||
r161 | ||||
Running application | ||||
=================== | ||||
To run the main app: | ||||
r195 | pserve FILENAME.ini | |||
r161 | ||||
To run celery workers: | ||||
celery worker -A appenlight.celery -Q "reports,logs,metrics,default" --ini FILENAME.ini | ||||
To run celery beat: | ||||
celery beat -A appenlight.celery --ini FILENAME.ini | ||||
r195 | To run appenlight's uptime plugin (example of uptime plugin config can be found here | |||
https://github.com/AppEnlight/appenlight-uptime-ce ): | ||||
r161 | ||||
r195 | appenlight-uptime-monitor -c UPTIME_PLUGIN_CONFIG_FILENAME.ini | |||
r161 | ||||
Real-time Notifications | ||||
======================= | ||||
You should also run the `channelstream websocket server for real-time notifications | ||||
r195 | channelstream -i CHANELSTRAM_CONFIG_FILENAME.ini | |||
r192 | ||||
Additional documentation | ||||
======================== | ||||
Visit https://getappenlight.com for additional server and client documentation. | ||||
r161 | Testing | |||
======= | ||||
To run test suite: | ||||
py.test appenlight/tests/tests.py --cov appenlight (this looks for testing.ini in repo root) | ||||
Development | ||||
=========== | ||||
To develop appenlight frontend: | ||||
cd frontend | ||||
npm install | ||||
grunt watch | ||||