Logs and Metrics Service
Getting Started
Quick Start
-
Make sure you have docker-compose
installed and then
run docker-compose -f docker-compose.yml -f docker-compose.app.yml up --build
You will have access to the ElasticSearch on localhost:9200 Kibana on localhost:5601 and Logs&Metrics service on
localhost:5000
-
Generate logs by running npm install
and then node insertLogs.js
. You can modify the params in 'insertLogs.js'
for different logs distribution. Note! use must use node >= 11 to run this script
-
Try it out by sending a request like: curl localhost:5000/api/v1/876543/ssapi/logs/all
Running and Debugging the Server in IDEA
-
Run docker-compose up
. This will bring up just the Kibana and ES
-
Create a run configuration in your favorite IDEA (Intellij😊). Make sure to configure a build for Typescript first
-
Debug the app locally.
Running the tests
TODO how to run the Unit tests.
Integration tests
Run ./integration-test.sh
.
This script basically incorporates the following steps which you can perform separately if you want to debug the tests
or run them locally from your IDEA:
- First run
docker-compose -f docker-compose.es.yml up -d
. - Then insert the mock data with:
npm run generate
(make sure the ES is up and running). - Now you can debug the tests from your IDEA. Or run them all with
npm run test
. - Don't forget to run
docker-compose -f docker-compose.es.yml down
to clean up.
Coding style tests
npm run lint
Deployment
Deployment is the same as all dy-helm projects
NPM Packages
Changes to the interfaces require publishing a new version of the logs-metrics-types
npm package inside packages
.
To do so execute the following:
cd packages/logs-metrics-types
npm install
(if not already done)npm run build
npm run publish