To get a trial key
fill out the form below
Team License (a basic version)
Enterprise License (an extended version)
* By clicking this button you agree to our Privacy Policy statement

Request our prices
New License
License Renewal
--Select currency--
USD
EUR
RUB
* By clicking this button you agree to our Privacy Policy statement

Free PVS-Studio license for Microsoft MVP specialists
* By clicking this button you agree to our Privacy Policy statement

To get the licence for your open-source project, please fill out this form
* By clicking this button you agree to our Privacy Policy statement

I am interested to try it on the platforms:
* By clicking this button you agree to our Privacy Policy statement

Message submitted.

Your message has been sent. We will email you at


If you haven't received our response, please do the following:
check your Spam/Junk folder and click the "Not Spam" button for our message.
This way, you won't miss messages from our team in the future.

>
>
How to work with the report of PVS-Stud…

How to work with the report of PVS-Studio in Linux

Oct 28 2016
Author:

I want to warn all the users of Linux-version of PVS-Studio 6.10.

0444_plog-converter/image1-b1c2dd2036649d53330fb4d4d4362521.png

WARNING! I want to point out that the log file, generated right after the analysis cannot be used! It serves as a source of data for the plog-converter program and is not intended for viewing.

We are getting a large number of letters from people, saying that it's impossible to use the results of PVS-Studio analysis. Programmers get a huge file with thousands of identical messages per one header *.h file and other rubbish. They start complaining. Some probably don't complain, but silently lose their interest for PVS-Studio.

These files weren't meant to be viewed. Plog-converter utility, which is described in the documentation was created to convert them into a "human" format. This utility doesn't only convert the log, but removes the duplicates for h-files, filters the messages and so on. For example, it is most useful to start viewing the report with the general analysis warnings of the first and second level (key -a GA:1,2). This is very important, because otherwise the programmer may simply drown in the huge "sea" of messages.

In the next version, we are planning to change the format of the initial log file, so that it is clear that it is some binary format and it is not meant to be viewed. This should give a hint to a programmer that he needs to do something with this file and after reading the documentation he will learn about plog-converter.

P.S. I will answer one question in advance: "Could you make your program in such a way that it issues a filtered report right away?"

Yes, we could, but there are two reasons not to do so.

1. Speed. Now during the parallel analysis every process appends to the end of the file. Thus the file is blocked only for a single-time record. That's quite fast and different analysis processes don't wait for each other. If we start filtering the duplicates for h-files, there will be a need to do the search along the file. This is much longer and the processes will start waiting for each other. There will be more downtime and the time of analysis will increase.

2. The full list of all the messages allows doing different selections without the need to restart the full analysis. I.e. if there is a situation when a person views the report and realizes that he doesn't want to see the diagnostics of the 3rd level. Then he edits the settings, starts plog-converter and has a new report in a minute. Otherwise, he will have to wait for an hour for the project to be analyzed once more.

Popular related articles
PVS-Studio evolution: data flow analysis for related variables

Date: Apr 28 2022

Author: Nikita Lipilin

Related variables are one of the main problems of static analysis. This article covers this topic and describes how PVS-Studio developers are fighting false positives caused by different relationship…
SAST in Secure SDLC: 3 reasons to integrate it in a DevSecOps pipeline

Date: Apr 19 2022

Author: Sergey Vasiliev

Vulnerabilities produce enormous reputational and financial risks. That's why many companies are fascinated by security and desire to build a secure development life cycle (SSDLC). So, today we're go…
PVS-Studio: static code analysis technology

Date: Jan 11 2022

Author: Andrey Karpov, Paul Eremeev

PVS-Studio provides static analyzers for C, C++, C# and Java languages on Windows, Linux and macOS platforms. PVS-Studio analyzers can vary slightly due to certain features that the languages have. H…
How to speed up building and analyzing of your project with Incredibuild?

Date: May 17 2021

Author: Maxim Zvyagintsev

"How much longer are you going to build it?" - a phrase that every developer has uttered at least once in the middle of the night. Yes, a build can be long and there is no escaping it. One does not s…
GTK: the first analyzer run in figures

Date: Jan 04 2021

Author: Svyatoslav Razmyslov

For some people, the introduction of a static analyzer into a project seems like an insurmountable obstacle. It is widely believed that the amount of analysis results issued after the first run is so…

Comments (0)

Next comments
This website uses cookies and other technology to provide you a more personalized experience. By continuing the view of our web-pages you accept the terms of using these files. If you don't want your personal data to be processed, please, leave this site.
Learn More →
Accept