Skip to content

Wolframfriele/ripe-alerts

Repository files navigation

Contributors Issues Last Commits Pull Request MIT License

⚠ RIPE Alerts

Monitoring and anomaly detection based on RIPE Atlas data.

This is project is made by 5 IT-students of Hogeschool Utrecht and is commissioned by RIPE NCC.

Table of Contents
  1. Intro
  2. Getting Started
  3. API Reference
  4. Roadmap
  5. Contributing
  6. License
  7. Acknowledgments

Goal

Our main goal of this project is to find anomalies in the RIPE ATLAS network and report this to the user. We do this through various ways, including the following:

  • Web server
  • Webhooks (still in development)
  • Email
  • API

Currently, most of this is still in development. We will be adding more in the near future. You may also suggest changes by forking this repo and creating a pull request or opening an issue.

Features

  • Automatically analyze measurements from Ripe Atlas.
  • View anomalies in a human-readable format
  • Easily extend functionality with plugins
  • Receive alerts via Email.

Built With

We're currently using the following frameworks.

(back to top)

Getting Started

To get a local server up and running, follow these steps.

Prerequisites

To run this application, you'll need the latest version of Docker and Python installed on your computer.

Installation

  1. If you're reinstalling the app, please delete the currently existing ripe-alert app first. Installing for the first time? Skip to step 4.

  2. Delete the ripe-alerts from Docker.
    Open Docker Desktop → Go to Containers / Apps → ripe-alerts → Delete

  3. Delete the database folder.
    Open folder 'ripe-alerts' → Delete folder 'data'

  4. After you've cloned the repository. Build all component images with Docker, by using the command:

  docker compose build
  1. Initialize the database. Open the terminal, and run the following command:
  docker compose run --name database --rm db

Wait, until it says:

  PostgreSQL init process complete; ready for start up.
  1. Close the container (CTRL+C).
  2. Start the application, by using the command:
  docker-compose up
  1. Open Docker.
  2. Go to the backend-container, and open the Command Line Interface (CLI).
  3. Migrate the database, by using the command:
  python manage.py migrate
  1. To manage access to the database we need a superuser. So let's create one!
    To create a superuser, use the command:
  python manage.py createsuperuser
  1. Go to the anomaly-container, and open the Command Line Interface (CLI).
  2. Migrate the database, by using the command:
  python manage.py migrate
  1. Congratulations! You're done! You can access the site at http://localhost:8080/.

How to use the database?

To access the database you'll need go to the Django admin page. This can be found at http://localhost:8000/admin.

After, opening the link. You can log in with the default user:

Info Value
username admin
email admin@ripe.net
password password

We highly recommend changing your password after logging in. This can be done in by navigating to the top right of the Django admin page.

(back to top)

API Reference

To check out live examples and docs, visit our wiki.

(back to top)

Roadmap

  • Anomaly detection
  • Base API
  • Improve Docker installation
  • Add additional alerting methods like Webhooks, API
  • Personalize alerts by giving feedback to anomalies
  • Better API documentation

(back to top)

Contributing

Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the GNU License. See here for more information.

(back to top)

Acknowledgments

We highly recommend to check out all the Atlas API.

Also, we are grateful for having Emile Aben for guiding the development of this project.

Copyright (c) 2022 by Floris, Wolfram, Sybren and Koen

(back to top)

About

Open Source software for monitoring and anomaly detection that uses RIPE Atlas data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published