30 open-source projects similar to google/gops, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Gops alternative.
go-torch is a profiling tool for capturing the execution state of Go programs and transforming raw binary data into visual representations of program performance. It functions as a flame graph profiler and performance visualization utility that identifies expensive code paths through the collection of CPU and memory stack traces. The tool features a network-capable remote process profiler that connects to endpoints to capture and export execution profiles from Go binaries. It utilizes stochastic profiling to synthesize execution data into call graphs, allowing for the identification of bottle
htop is a terminal user interface system monitor for Unix systems. It functions as an interactive process viewer and real-time resource visualizer, providing a dashboard to track CPU, memory, and load average metrics. The tool enables the sorting, filtering, and termination of active system processes and threads. It distinguishes itself through a text-mode interface that can render processes in a hierarchical tree structure to visualize parent-child relationships and allows for the assignment of CPU affinity to specific processor cores. The monitoring surface covers CPU utilization, memory a
Easy Profiler is a performance profiling library for C++ applications designed to measure execution duration and identify bottlenecks. It provides a framework for instrumenting code blocks to track performance metrics, allowing for the analysis of thread activity and system behavior through detailed timeline visualization. The library distinguishes itself by utilizing scope-based instrumentation to automatically track code lifecycles, minimizing manual overhead. It employs thread-local buffering and asynchronous data flushing to reduce synchronization contention, ensuring that performance dat
React Scan is a diagnostic utility and performance auditor designed to monitor the rendering lifecycle of components within user interfaces. It functions as an automated analysis tool that tracks component re-render cycles and execution timing to identify performance bottlenecks in real time. The tool distinguishes itself by providing visual feedback through a persistent overlay injected directly into the application. By instrumenting the reconciliation process and observing component state and props, it highlights specific rendering patterns that contribute to performance degradation. This
Speedscope is a web-based performance profiler that visualizes profiling data through interactive flamegraphs and timeline views. It ingests performance profiles from a wide range of sources, including Chrome, Firefox, Safari, Node.js, .NET Core, Instruments, Hermes, GHC, and Ruby, normalizing them into a common schema for unified analysis. The tool distinguishes itself with a canvas-based rendering engine that draws flamegraphs without DOM nodes for each frame, and a WebAssembly-based rendering pipeline for high-performance drawing. It offers left-heavy stack sorting to surface the most time
This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and asynchronous behavior within Node.js applications. It provides detailed methods for asynchronous tracing, memory diagnostics, and performance analysis to resolve runtime errors and execution bottlenecks. The resource distinguishes itself by covering advanced diagnostic workflows, including the use of flame graphs for CPU profiling, the capture and comparison of heap snapshots for memory leak detection, and the mapping of asynchronous call stacks. It also provides technical guidance on
Pixie is an open-source observability platform for Kubernetes that uses eBPF to automatically capture telemetry data from clusters without requiring any manual instrumentation or code changes. It functions as an eBPF telemetry collector, a continuous application profiler, a network traffic analyzer, and a scriptable telemetry query engine, all within a single Kubernetes-native tool. The platform distinguishes itself through several integrated capabilities. It continuously samples stack traces from compiled-language code to identify CPU performance bottlenecks, visualizing the results as inter
This project is a technical programming guide and educational resource focused on Go internals, runtime mechanisms, and advanced language features. It provides detailed conceptual analysis of the language's execution model, including its scheduler, memory escape analysis, and garbage collection mechanisms. The material distinguishes itself through deep dives into high-concurrency system design, exploring the implementation of worker pools and communication channels. It also covers low-level network programming with a focus on I/O multiplexing and TCP state management, alongside a study of dis
OpenCensus-go is an observability instrumentation library designed to capture and export telemetry data from distributed systems. It functions as a framework for application performance monitoring and distributed request tracing, allowing developers to track system health, latency, and the progression of requests across service boundaries. The project distinguishes itself through a modular architecture that decouples data collection from storage. By utilizing a pluggable exporter interface, it enables the transmission of metrics and trace data to a variety of external monitoring and analysis
This project is a Chinese translation of a comprehensive guide to the Go programming language. It serves as a localized educational resource and technical manual designed to provide guidance on language syntax, design, and software development. The resource covers a broad range of Go language education, including the implementation of programming patterns and system design. It includes translated lessons and examples that focus on core language features such as concurrency and the use of interfaces. The content spans various capability areas, including language fundamentals, data modeling, r
This project is a diagnostic adapter that connects code editors and standalone tools to running runtime processes using the standard Debug Adapter Protocol. It functions as a JavaScript and TypeScript debug implementation that maps compiled code back to original source files using sourcemaps, allowing developers to set breakpoints, inspect variables, and evaluate expressions without manual configuration. The tool handles cross-environment code execution by automatically attaching to child processes, worker threads, service workers, and terminal processes. It supports advanced debugging capabi
This project is a thread-safe, asynchronous logging library designed for C++ applications. It provides a comprehensive diagnostic toolkit that enables developers to record system events, track execution flow across multiple threads, and manage log output through severity-based filtering and automated file maintenance. By offloading log formatting and disk input/output to background worker threads, the library minimizes latency on the main execution path, ensuring high performance in time-critical systems. The framework distinguishes itself through its flexible configuration and diagnostic cap
Inspektor Gadget is an eBPF observability toolset and program framework designed for tracing Linux systems and debugging Kubernetes nodes. It provides a suite of tools to collect kernel-level telemetry and export system metrics via the OpenTelemetry standard. The project distinguishes itself by packaging inspection tools as OCI-compliant container images, allowing for standardized distribution and deployment across clusters and hosts. It employs a modular data processing pipeline that utilizes WebAssembly modules to transform and filter telemetry, and leverages Compile Once Run Everywhere for
Snowflake is a high-concurrency RPC framework and distributed ID generation service. It provides the infrastructure to create unique, time-ordered identifiers across a network of servers and facilitates the development of network services designed to handle massive volumes of simultaneous requests. The system separates low-level transport logic from application behavior, allowing for the implementation of custom RPC protocols. It includes a distributed request tracing tool to visualize execution flow across network boundaries and a server lifecycle management interface to adjust logging level
pprof is a tool for visualizing and analyzing performance profiling data. It converts sampled call stacks into a directed graph rendered as an SVG, enabling visual identification of execution hotspots. The tool also parses Linux perf.data files, converting them into an internal profile representation for further analysis. Beyond visualization, pprof provides a command-line REPL for interactive exploration of profiling data, allowing users to filter, refine, and query performance information on the fly. It generates sorted text reports that highlight the most resource-intensive call stacks, an
Laravel Debugbar is a web-based debugging toolbar and application profiler for Laravel. It provides a visual interface to inspect database queries, logs, and performance metrics in real time to identify and resolve bugs during development. The tool features a database query monitor to capture SQL statements and timings, as well as a request inspector for analyzing route metadata, loaded views, and HTTP request data. It includes a profiler for measuring execution time and memory usage to identify bottlenecks in the request lifecycle. Its observability capabilities cover exception capture, app
brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio
Firefox is a cross-platform web browser engine designed to render web content, execute JavaScript, and manage secure browsing sessions. It utilizes a multi-process isolation architecture that distributes browser tasks across independent operating system processes to ensure stability and prevent site-specific failures from impacting the entire application. The engine incorporates a sandboxed execution environment to restrict web content and untrusted scripts to isolated memory compartments, enforcing security policies that prevent unauthorized access to system resources. The project distinguis
This project is a comprehensive, curated directory of static analysis, linting, and security scanning utilities. It serves as a central resource for developers to discover, compare, and select tools based on specific programming languages, licensing models, and integration requirements. The directory distinguishes itself by providing deep metadata for each listed utility, including community-driven popularity rankings, maintenance status, and deployment methods. By aggregating these tools into a single searchable index, it enables teams to identify solutions for enforcing coding standards, ma
Command line monitoring for goroutines
Visualise Go runtime metrics in real time
nghttp2 is a suite of low-level C libraries and tools designed for implementing the HTTP/2 protocol. It provides a memory-efficient implementation of the protocol's core logic, including framing, stream multiplexing, and flow control. The project includes a dedicated library for HPACK header compression and decompression to reduce network bandwidth. It also provides a toolset for analyzing network traffic and benchmarking server performance, including throughput and latency measurements. Its broader capabilities cover protocol implementation and traffic management, including ALPN connection
Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an embeddable scripting engine. It functions as a fiber-based concurrency runtime and includes a parsing engine based on Parsing Expression Grammars. The project is distinguished by its ability to be integrated into C or C++ applications via a minimal header interface. It utilizes a Lisp-style macro system for compile-time code transformation and employs prototype-based table inheritance for object-oriented behavior. The runtime covers a broad set of capabilities, including asynchronous
This project is a performance analysis tool for Ruby applications using the Rack interface. It monitors request execution times and resource usage, serving as a profiler for web applications to measure latency and identify bottlenecks. The tool provides specific analyzers for database query performance, memory allocations, and garbage collection statistics. It generates call stack flamegraphs to visualize time distribution across methods and renders speed badges and timing metrics directly onto HTML pages. The system covers broader performance profiling capabilities including custom code blo
Samply is a cross-platform CPU sampling profiler and performance analysis utility. It consists of a command-line tool for recording process stack traces at regular intervals and a visual interface for analyzing the resulting execution data. The system includes a debug symbol resolver that maps raw memory addresses to human-readable function names using local or remote symbol information. It transforms recorded execution data into flame graphs and timelines to pinpoint function-level hotspots. The tool provides capabilities for CPU execution recording, stack unwinding, and symbol resolution a
Pyroscope is a continuous profiling platform designed to collect, store, and visualize application performance data. It functions as an application performance management suite that tracks historical resource usage to identify bottlenecks and detect performance regressions over time. The platform distinguishes itself through its use of kernel-level instrumentation and dynamic runtime hooks, which allow for performance monitoring without requiring manual code modifications or application restarts. It employs a sidecar agent architecture to offload telemetry processing, utilizing delta-encoded
Async-profiler is a sampling profiler for Java applications that tracks CPU time and stack traces across execution frames to identify performance bottlenecks. It is designed to capture profiling data without introducing timing bias. The project provides capabilities for JVM memory analysis to locate native and heap allocation hotspots and memory leaks. It also includes system contention analysis to identify resource bottlenecks through the tracking of contended locks and hardware performance counters. The tool converts raw profiling data into visual performance reports, including interactive
Tracy is a real-time performance profiling framework for C and C++ applications. It provides a software instrumentation library that captures high-resolution telemetry data, which is then visualized through a separate graphical interface to identify bottlenecks and resource allocation issues. The system utilizes a client-server architecture that enables remote profiling, allowing performance data to be captured on a target machine and analyzed on a workstation. It employs lock-free event logging and shared-memory ring buffers to minimize the overhead of data collection, ensuring that the main
Beszel is a self-hosted server monitoring platform designed to track real-time performance metrics across multiple host systems and containerized environments. It functions as a centralized dashboard that aggregates data on processor, memory, disk, and network usage, providing visibility into both host-level infrastructure and individual container workloads. The system utilizes lightweight agents to collect performance data, which is then streamed to a central hub and stored in a local relational database. It distinguishes itself through a real-time analytics engine that uses persistent bidir
Laravel Debugbar is a diagnostic utility and development toolbar designed for the Laravel framework. It functions as an application profiler that monitors runtime performance, memory usage, and database queries to assist in identifying bottlenecks during the development process. The tool integrates directly into the browser, providing a visual interface that displays request data, application state, and performance metrics. By utilizing a collector-based architecture, it aggregates information from various internal framework events and middleware, allowing developers to inspect the applicatio