Skip to content

medelkadiri/CrashAnalyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CrashAnalyzer

Build Status

Overview

CrashAnalyzer is a C++23 project focused on reliable crash handling and debugging workflows. It integrates modern tools such as GDB, Valgrind, perf, flame graphs, and systemd‑coredump to capture and analyze segmentation faults. The design emphasizes portability, with a structure that can extend to Windows and macOS, ensuring consistent observability across platforms.

Features

  • Intentional crash (*p = 42) to validate observability
  • Core dump capture and analysis with GDB
  • Memory error detection using Valgrind
  • Performance visualization with perf + flame graphs
  • Automated CI/CD pipeline via GitHub Actions

Development Environment

  • OS: Ubuntu 24.04.1 (running in Oracle VirtualBox)
  • Compiler: GCC 13
  • Build Tools: CMake
  • Debugger: GDB
  • Observability Tools: Valgrind, perf, flame graphs
  • Virtualization: Oracle VirtualBox (hosted on Windows)

Tech Stack

  • Language: C++23
  • Compiler: GCC 13.3.0
  • Debugger: GDB 15.0.50
  • Build Tools: CMake 3.28.3
  • Observability Tools: Valgrind 3.22.0, perf 6.17.9

Continuous Integration

This project uses GitHub Actions to automatically build and test the code.

  • Trigger: Runs on every push and pull request to main
  • Environment: Ubuntu-latest runner
  • Steps: Checkout → Install dependencies → Configure → Build → Run Valgrind
  • Workflow file: .github/workflows/build.yml Logs and results are available in the Actions tab of this repository.

Virtual Machine Configuration

  • Resources: 8 GB RAM, 4 CPUs, 40 GB disk
  • Graphics: VMSVGA, 128 MB video memory, 3D acceleration enabled
  • Networking: NAT (Intel PRO/1000 MT Desktop)
  • Integration: Shared folder enabled, bidirectional clipboard, AZERTY keyboard layout

Getting Started

Build

cmake -S . -B build
cmake --build build

About

CrashAnalyzer: C++23 crash analysis workflow (segfault, core dumps, Valgrind, GDB) with CI/CD automation, validated on Linux and designed for cross‑platform portability (Windows/macOS/Linux).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors