Skip to main content

The valgrind logs parser. Creates the html report from txt logs.

Project description

Build Status

Valgrind Parser Tool

This tool helps to parse the valgrind logs generated by a valgrind tool.


The only package needed for successful run of is mentioned in requirements.txt.
Use pip to install these requirements.

pip install -r requriements.txt

Pip install

One can install valgrind parser tool from pip as well.

pip install valgrind_parser

Import the package as

>>> from valgrind_parser import ValgrindLogParser
>>> vlp = ValgrindLogParser('/path/to/valgrind_logs.txt')
>>> vlp.generate_html_report()

This will dump the html report for input valgrind_logs.txt in the same directory from where the program was called.

Cloning the repo

Valgrind-Log-Parser can also be used by cloning the repo locally and using the python file directly. Clone the repo with below command and use as given in next sections.

git clone<your username>/Valgrind-Log-Parser.git

How to use

Under test_leaker directory, test_leaker.c file is present. This file is having a memory leak and a condition check with a variable which is not initialized before.
When run with valgrind, the valgrind report should highlight these two things.


int main(){
    int *memory_allocation_var = malloc(1000); // Leaked memory which is never freed
    int conditional_jump_variable_without_initialize;
    if (conditional_jump_variable_without_initialize > 0){ // Variable used without initialization
        printf("Variable not initialized still using here \n");
    return 0;

Compile C file

To compile c file on Linux environment, one must use gcc with -g option which enables debug symbols from the binary.

gcc -g test_leaker.c -o test_leaker

Post successful compilation, install valgrind from its official source mentioned at valgrind_website and execute with our test_leaker binary.

valgrind -v --leak-check=full --show-reachable=yes --log-file=valgrind_log.txt ./test_leaker

This will dump the valgrind logs in valgrind_log.txt


The --help argument can help to understand how to use this parser.

python --help
usage: [-h] --valgrind_file VALGRIND_FILE

optional arguments:
  -h, --help            show this help message and exit
  --valgrind_file VALGRIND_FILE
                        Provide the path of the valgrind file. Files must be
                        of .txt format

Provide valgrind_log.txt file in argument to and it will create a HTML report out of it in the same directory.

python --valgrind_file <path to valgrind_log.txt file>

Following table will be generated with the above run. Valgrind HTML Report

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

valgrind_parser-2.0.3.tar.gz (5.2 kB view hashes)

Uploaded source

Built Distribution

valgrind_parser-2.0.3-py2-none-any.whl (7.9 kB view hashes)

Uploaded py2

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page