Skip to content

sourceplusplus/sourceplusplus

Repository files navigation

License GitHub release Build

Source++ is the continuous feedback platform for developers. Add breakpoints, logs, metrics, and distributed tracing to live production software in real-time on-demand, right from your IDE.

Powered by Apache SkyWalking, Source++ enhances the software development experience with production debugging and development capabilities. Become a production-aware developer, understand code faster and deeper with developer-native observability technology, safely debug production applications with negligible to minimal overhead, and gain continuous insight into your application as it behaves in its natural environment.

Live Insight Live Instrument
Live View Live Command

Features

  • Live Insights
    • Function Duration: Increase/Decrease Prediction
  • Live Instruments
    • Live Breakpoints: Non-Breaking Breakpoints
    • Live Logs: Just-in-Time Logging
    • Live Meters: Real-Time KPI Monitoring
    • Live Spans: User-Domain Tracing
  • Multi-instance/Serverless debugging
  • Role-based access control
  • Instrument conditionals
  • Instrument TTL, sampling, rate limiting
  • Feedback whitelist/blacklist
  • PII redaction

Quickstart

Docker docker (macOS/Linux/Windows)
  1. Install Docker on your system (if not already installed).
  2. Start Source++ Platform
    docker run -d --name=spp-platform -p 11800:11800 -p 12800:12800 sourceplusplus/spp-platform:0.7.7.1
  3. Install Source++ Plugin

Get Started

Compiling Project

Follow this document.

Documentation

The Source++ documentation is available here.

Directory Structure

├── demos                     # Feature demonstrations
    ├── groovy                # Groovy demo
    ├── java                  # Java demo
    ├── kotlin                # Kotlin demo
    ├── nodejs                # Node.js demo
    └── python                # Python demo
├── docker                    # Docker setup files
    ├── e2e                   # End-to-end testing environment
    └── spp-platform          # Live coding server image
├── documentation             # Live coding documentation
├── interfaces                # Live coding clients
    ├── cli                   # Command-line interface
    └── jetbrains             # JetBrains IDE plugin
├── platform                  # Live coding server
    ├── bridge                # Bridge clients to platform
    ├── common                # Common platform code
    ├── core                  # Core platform code
    ├── processor             # Observability data processors
        ├── live-instrument   # Live Instrument processor
        └── live-view         # Live View processor
    └── storage               # Platform persistent memory
├── probes                    # Live coding probes
    ├── jvm                   # JVM support
    ├── nodejs                # Node.js support
    └── python                # Python support
└── protocol                  # Communication protocol

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Please see the LICENSE file in our repository for the full text.