The Practical Guide to Determine Standard of a Software Log File

Posted: June 19, 2018 by Natalya Rahmany

The Practical Guide to Determine Standard of a Software Log File

 

What’s the meaning of Software Log File?

Log files are a standard tool for software developers. The log files record the “what happened when by whom” of the system.

 

This information can record faults and help their diagnosis.

 

It can identify security breaches and another computer misuse.

 

It can be used for auditing and for accounting purposes.

 

How to Determine the Professional Standard of a Software Log File?  Here is a practical example :

 

Level Description
OFF The highest possible rank and is intended to turn off logging.
FATAL Severe errors that cause premature termination. Expect these to be immediately visible on a status console.
ERROR Other runtime errors or unexpected conditions. Expect these to be immediately visible on a status console.
WARN Use of deprecated APIs, poor use of API, ‘almost’ errors, other runtime situations that are undesirable or unexpected, but not necessarily “wrong”. Expect these to be immediately visible on a status console.
INFO Interesting runtime events (startup/shutdown). Expect these to be immediately visible on a console, so be conservative and keep to a minimum.
DEBUG Detailed information on the flow through the system. Expect these to be written to logs only.
TRACE Most detailed information. Expect these to be written to logs only.

 

Why log from QA/Development perspective?

 

Logging can produce technical information usable for the maintenance of applications, servers or websites.

 

It can serve:

– to define whether a reported issue is actually a bug

– to help analyze, reproduce and solve bugs

– to help test new features in a development stage.

 

What’s the meaning of logging and tracing?

 

Logging is used to record information about the execution of a program for debugging and testing purpose.

 

Developers, testers and service engineers often use logging and tracing techniques to identify software problems, deployment debugging, monitoring live systems and auditing purpose.

 

Today, in a market we can find advanced logging tools that support logging of complex data structures, call stacks, threading behavior and also support real-time monitoring of applications.

 

What are Common Logs Types?

Event logs-record events taking place in the execution of a system in order to provide an audit trail that can be used to understand the activity of the system and to diagnose problems.

 

Event Viewer tracks information in several different logs.

 

Windows Logs include:

 -Application events. Events are classified as error, warning or information, depending on the severity of the event.

 

Security-related events. These events are called audits and are described as successful or failed to depend on the event, such as whether a user trying to log on to Windows was successful.

 

-Setup events. Computers that are configured as domain controllers will have additional logs displayed here.

 

-System events. System events are logged by Windows and Windows system services and are classified as error, warning or information.

 

Forwarded events. These events are forwarded to this log by other computers.

 

What makes a software log better?

The system should have 2 logs levels at least, and be able to turn off tracing for performance.

  • The programmer should be able to route these event streams to different locations.
  • This allows you to easily keep logs for historical records, while not having them cluttered with debug info that you only want for tracing problems
  •  The log made for humans, not machines, so legibility is crucial
  •  Presentation of events in order of occurrence
  •  Log in which programmer/tester can easily to find out what work has been done by the system.
  •  Dates in region-specific formats. In the U.S., people put the month first (“06-02-2012” for June 2nd, 2012, which makes no sense), while many people in the rest of the world write a robotic-looking “2 June 2012”, yet pronounce it differently. “2012-06-02” works logically from largest to smallest, doesn’t overlap in ambiguous ways with other date formats, and is an ISO standard. Thus, it is the recommended date format for software logs.
  •  Avoiding needless data copies
  • Testers want to know enough information about what action is about to be performed to go back and poke around if something goes wrong.

For example message ID’s email addresses, something that uniquely identifies the work item

 

  •  Easily log sorting

 

  • Include timestamp in the log entry

 

  • In large software system a tester should be able to receive logging from customers encountering problems .it also helps if you can control which parts of your application will log; for example if there is a problem with regarding ID user information you can add “ID LOGGING =EVERYTHING” and received detailed logging information on that without seeing the log information from every other section of the program.

Is this article helpful for you? Tell everyone how it helped you 😊

Join the Productive Hut newsletter

Subscribe to get our latest posts and tips!

I will never give away, trade or sell your email address. You can unsubscribe at any time!

2 Comments

  • Trent June 29, 2018 at 9:05 am

    Thank you for the great post

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

I accept that my given data and my IP address is sent to a server in the USA only for the purpose of spam prevention through the Akismet program.More information on Akismet and GDPR.

%d bloggers like this: