Development Guide
Setting Up Metlo Locally
Requirements
node
version18.7.0
. We recommend using nvm to manage node versions.postgres
version14
.redis
Initial Setup
Set up environment
Create .env
file in backend directory with the following environment
variables:
To generate the ENCRYPTION_KEY
run this python script:
Start Services
Finally, you can start each service in a different terminal window:
1. Start the frontend
2. Start the backend
3. Start the collector service
4. Start the job scheduler
5. Start the analyzer
Job Scheduler and Analyzer
For changes in the backend to take effect in the Job Scheduler and Analyzer, the backend module must be rebuilt and the Job Scheduler and Analyzer must be restarted.
You should now be able to view the metlo frontend at http://localhost:3000 !
Load test data
Without any trace data your Metlo dashboard won’t be very interesting! You can load test trace data by running the test ingestor:
Migrations
To add any changes to the database schema, you must create a migration. To create a new migration, run this command in the root of the backend directory:
Running this command will add a new file to the migrations
directory to which
you will need to add queries to run for the migration. Afterwards, you will need
to add the new migration class to the migrations
array in the AppDataSource
constructor options in the backend/src/data-source.ts
file. To run any new
migrations, you can run this command: