Skip to main content

A Prophet-based network anomaly detection package

Project description

Propano ๐Ÿš€

A lightweight, open-source network anomaly detection package leveraging Facebook Prophet for time-series modeling.
๐Ÿ”น Key Features:
โœ” Anomaly detection based on Prophetโ€™s upper/lower confidence bounds
โœ” Persistence & Proximity Analysis to minimize false positives
โœ” Optimized for network data: traffic volume, packet loss, DDoS detection
โœ” Sensitivity options to tune the model

๐Ÿ“Œ Getting Started

pip install propano

Project Structure

propano/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ propano/
โ”‚   โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ”‚   โ”œโ”€โ”€ anomaly_detector.py   # Core anomaly detection logic
โ”‚   โ”‚   โ”œโ”€โ”€ cli.py                # Command-line interface (CLI)
โ”‚   โ”‚   โ”œโ”€โ”€ utils.py              # Helper functions (e.g., data preprocessing)
โ”‚   โ”‚   โ”œโ”€โ”€ visualization.py      # Functions for plotting anomalies
โ”‚   โ”œโ”€โ”€ tests/
โ”‚   โ”‚   โ”œโ”€โ”€ test_anomaly_detector.py  # Unit tests
โ”‚   โ”‚   โ”œโ”€โ”€ test_cli.py               # Unit tests for CLI
โ”‚   โ”‚   โ”œโ”€โ”€ test_utils.py
โ”‚   โ”œโ”€โ”€ data/
โ”‚   โ”‚   โ”œโ”€โ”€ raw/                  # Raw network traffic data
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ sample_network_data.csv
โ”‚   โ”‚   โ”œโ”€โ”€ processed/             # Preprocessed data files
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ cleaned_data.csv
โ”‚   โ”œโ”€โ”€ notebooks/
โ”‚   โ”‚   โ”œโ”€โ”€ anomaly_detection_demo.ipynb  # Jupyter notebook example
โ”œโ”€โ”€ examples/
โ”‚   โ”œโ”€โ”€ example_usage.py          # Example script demonstrating package usage
โ”œโ”€โ”€ docs/
โ”‚   โ”œโ”€โ”€ README.md                 # Project documentation
โ”‚   โ”œโ”€โ”€ CONTRIBUTING.md           # Guidelines for contributors
โ”œโ”€โ”€ .github/
โ”‚   โ”œโ”€โ”€ workflows/
โ”‚   โ”‚   โ”œโ”€โ”€ ci.yml                 # GitHub Actions CI/CD workflow
โ”œโ”€โ”€ setup.py                      # Package setup script
โ”œโ”€โ”€ requirements.txt              # Dependencies
โ”œโ”€โ”€ LICENSE                       # Open-source license
โ”œโ”€โ”€ .gitignore                    # Ignore unnecessary files

Useful Commands for the Developers

To install the dependencies

pip install -r requirements.txt

To Build and Upload to PyPI

python3 -m build
twine upload dist/*

To Uninstall and Reinstall the prophet-net-anomaly

pip uninstall prophet-net-anomaly -y
pip install .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

propano-0.1.0.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

propano-0.1.0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file propano-0.1.0.tar.gz.

File metadata

  • Download URL: propano-0.1.0.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for propano-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9e641aae3b93112ad02175400e5c7627aeaa2146e4b4febb8e26b15d3e9c4ed2
MD5 57334f7d80a2a579dad1e05218fc3f82
BLAKE2b-256 bfde56d12775fa1d5d6138b527fab5ad526dafdae85d7bfb60a41b39941aa5ee

See more details on using hashes here.

File details

Details for the file propano-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: propano-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for propano-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a5583111ef9a2ba019b1e80abbe846ed70c6205057bae6c5b0898295f745d6c4
MD5 78e45ad88cff09d91832c01eecec2c5a
BLAKE2b-256 9ec64c4788cd01c22cc6b8011bd27f6f49cbb1479bf95ad2a17a2117898fe28e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page