GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - runsidekick/sidekick-agent-java: Java agent for Sidekick open-source live application debugger

BranchesTags
Open more actions menu

Latest commit

 

History

34 Commits
34 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
sidekick-agent-all
sidekick-agent-all
 
 
sidekick-agent-api-broker
sidekick-agent-api-broker
 
 
sidekick-agent-api-data-redaction
sidekick-agent-api-data-redaction
 
 
sidekick-agent-api-logpoint
sidekick-agent-api-logpoint
 
 
sidekick-agent-api-tracepoint-integrations-junit4
sidekick-agent-api-tracepoint-integrations-junit4
 
 
sidekick-agent-api-tracepoint-integrations-junit5
sidekick-agent-api-tracepoint-integrations-junit5
 
 
sidekick-agent-api-tracepoint
sidekick-agent-api-tracepoint
 
 
sidekick-agent-bootstrap
sidekick-agent-bootstrap
 
 
sidekick-agent-broker
sidekick-agent-broker
 
 
sidekick-agent-core
sidekick-agent-core
 
 
sidekick-agent-data-redaction
sidekick-agent-data-redaction
 
 
sidekick-agent-instrument
sidekick-agent-instrument
 
 
sidekick-agent-jdk-attach
sidekick-agent-jdk-attach
 
 
sidekick-agent-logpoint
sidekick-agent-logpoint
 
 
sidekick-agent-probe-tag
sidekick-agent-probe-tag
 
 
sidekick-agent-probe
sidekick-agent-probe
 
 
sidekick-agent-tracepoint
sidekick-agent-tracepoint
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
pom.xml
pom.xml
 
 

Repository files navigation

Sidekick Java Agent

Sidekick Licence  Sidekick Discord Channel  Foresight monitoring  Sidekick Sandbox 

Sidekick Main Repository »
Table of Contents
  1. What is Sidekick?
    • Sidekick Actions
  2. Sidekick Java Agent
  3. Usage
    • Supported JVMs and Languages
    • Download the Agent
  4. Build the agent
    • Prerequisites
    • Build command
  5. Official Sidekick Agents
  6. Resources
  7. Questions? Problems? Suggestions?
  8. Contact

What is Sidekick?

Sidekick is a live application debugger that lets you troubleshoot your applications while they keep on running.

Add dynamic logs and put non-breaking breakpoints in your running application without the need of stopping & redeploying.

Sidekick Open Source is here to allow self-hosting and make live debugging more accessible. Built for everyone who needs extra information from their running applications.

Sidekick Actions:

Sidekick has two major actions; Tracepoints & Logpoints.

  • A tracepoint is a non-breaking remote breakpoint. In short, it takes a snapshot of the variables when the code hits that line.
  • Logpoints open the way for dynamic(on-demand) logging to Sidekick users. Replacing traditional logging with dynamic logging has the potential to lower stage sizes, costs, and time for log searching while adding the ability to add new logpoints without editing the source code, redeploying, or restarting the application.

Supported runtimes: Java, Python, Node.js

To learn more about Sidekick features and capabilities, see our web page.

Learn More »

(back to top)

Sidekick Java Agent

Sidekick Java agent allows you to inject tracepoints (non-breaking breakpoints) and log points dynamically to capture call stack snapshots (with variables) and add log messages on the fly without code modification, re-build and re-deploy. So it helps you, your team, and your organization to reduce MTTR (Minimum Time to Repair/Resolve).

To achieve this, the Sidekick Java agent has nothing to do with JDWP (Java Debug Wire Protocol), as it doesn't suspend the code execution, but hooks into code execution at the application layer by bytecode instrumentation. Under the hood, Sidekick agent

  • injects its hook call into the specified line at the bytecode level
  • intercepts the code execution just before the specified line
  • captures call stack snapshot (for tracepoint) or prints dynamic log message (for log point)
  • create events to be sent asynchronously
  • and then lets the code execution continue

Here, to keep Sidekick agent overhead at a minimum (sub-millisecond on average), in addition to non-blocking event publishing, we apply many performance improvements like async snapshot taking, async call stack collecting, and fast serialization by reducing redundant memory copies.

The advantage of Sidekick over classical APM solutions is that, Sidekick

  • can debug and trace any location (your code base or 3rd party dependency) in your application, not just the external (DB, API, etc ...) calls like APM solutions
  • has zero overhead when you don't have any tracepoint or log point but APMs have always
  • doesn't produce too much garbage data because it collects data only at the certain points you specified as long as that point (tracepoint/logpoint) is active

Usage

Supported JVMs and Languages

JDK 8+ is supported Java (8+), Kotlin (1.3+) and Scala (2.10+) JVM languages are supported

Download the agent

Download the latest Sidekick agent from this link repo

Agent configuration : https://docs.runsidekick.com/installation/installing-agents/java/configuration#configure-the-agent

Source bundling: https://docs.runsidekick.com/installation/installing-agents/java/source-bundling

Build

Prerequisites
  • Java 8+
  • Maven 3.x
Build command:

mvn clean package

Benchmarks

  • Production Debuggers — 2022 Benchmark Results

Official Sidekick Agents

  • Java
  • Node.js
  • Python

Resources:

  • Documentation
  • Community
  • Discord
  • Contributing
  • Sidekick Main Repository

Questions? Problems? Suggestions?

To report a bug or request a feature, create a GitHub Issue. Please ensure someone else has not created an issue for the same topic.

(back to top)

Contact

Reach out on the Discord. A fellow community member or Sidekick engineer will be happy to help you out.

(back to top)

About

Java agent for Sidekick open-source live application debugger

Topics

debuggingdebugging-toolloggingmonitoring

Resources

Readme
AGPL-3.0 license
Activity
Custom properties

Stars

24 stars

Watchers

3 watching

Forks

5 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.