A Text File Logging system for use in VC++ projects

.

Environment: This code was compiled and tested with Visual C++ 6.0

In many applications it is necessary to have a logging system which logs text into a file.The following class provides such a logging system which is very easy to use.

The features include

1. Logging of text directly / using string table ids

2. Tracking of log file size (displays warning messages without affecting further logging)

3. automatically provides date and time with the log message

4. ablility to clear the log file etc..

How does the output text file look like ?

format is Date    Time    Logged text

For Example:

01/17/99 17:02:46 Here goes ur text

How do I integrate it with my existing code or how do I use it?

Just add the two files into ur project and in the appclass or ur project create an object like this

In the header (.h) file


#include "log.h"

class CSomeApp : public CWinApp
{
public:
 CSomeApp();
 CLog m_Log;

 ...
};

In the implementation (.cpp) file

CSomeApp::CSomeApp():m_Log("log file name") // see log
constructor for more details
{
 // TODO: add construction code here
}

and where ever you want to log u can use code like this...


extern CSomeApp theApp;
theApp.m_Log.LogMessage("this is what is logged");    // see

LogMessage for more details

or you can use these macros


// macro to log a string directly

#ifndef LOGS
 #define LOGS(sz) ((CSomeApp*)AfxGetApp())->m_Log.LogMessage(sz)
#endif

// macro to log  a string using a  string table id
#ifndef LOGN
 #define LOGN(a) ((CSomeApp*)AfxGetApp())->m_Log.LogMessage(a)
#endif

Download source - 3 KB



Comments

  • This code will fail if Program crashes in middle.

    Posted by Legacy on 02/03/1999 12:00am

    Originally posted by: Shashik

    This object will fail to close the log file, and thus all the details that were entered in the log file will be lost, if the application crashes in between. I think it would work if you open file in append mode and log the message, and as it is close the file. Just let me know whether I'm right.
    Thank you.

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • On-demand Event Event Date: March 23, 2017 As you adopt the use of cloud services, whether in public/IaaS, SaaS or hybrid environments, the attack surface expands and, if breached, the costs increase exponentially. This session is designed to help IT and security leaders understand and address the unique challenges that enterprises typically face when they deploy their applications in the public cloud. It summarizes the areas that the public cloud vendors typically take care of and highlights the areas …

  • Live Event Date: June 29, 2017 @ 1:00 p.m. ET / 10:00 a.m. PT Security teams looking to extend their network perimeter defenses with an attack and breach detection capability are discovering that a hosted SIEM gets them up and running faster. IBM QRadar on Cloud is a market–leading, trusted solution that can be easily extended with apps and add–ons for user behavior analytics and cognitive security. If you are still relying on basic log collection tools or an aging collection of security point …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date