IP Library Granted Patent US 6,951,012
Granted Patent B2
US 6,951,012 · App. 09/968,552 · Granted Sep 27, 2005

API to increase debug log performance

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,951,012
App. No.
09/968,552
Granted
Sep 27, 2005
Kind
B2
Abstract

A method for increasing debug log performance uses pre-logging subroutines, i.e., helper methods, to pass multiple elements of a string message as separate parameters. The helper methods typically determine whether a debug logging system is enabled at a specific logging level before allocating memory or CPU resources for string concatenation. If the debug logging system is disabled, the method returns to the client program without allocating resources to concatenate and log the message, thus significantly increasing debug log performance.

Claims (34)

1. A computer-implemented method for increasing debug log performance, comprising:

receiving a message from a client program, wherein the message includes parameters;

allocating resources to parse the parameters into multiple strings;

calling a pre-logging subroutine, wherein the pre-logging subroutine passes each string of the message as a separate parameter to a debug logging system through a raw logging interface, and determines whether the debug logging system is enabled at a specific logging level wherein the raw logging interface cannot be implemented as a public interface and cannot be accessible by users working on the client program;

concatenating the multiple strings into a single message only if the debug logging system is enabled; and

if the debug logging system is disabled, returning to the client program without allocating additional resources to concatenate the multiple strings and log the message.

2. The computer-implemented method of claim 1 , wherein if the debug logging system is enabled, further comprising allocating additional resources to concatenate the message.

3. The computer-implemented method of claim 1 , further comprising logging the message.

4. The computer-implemented method of claim 1 , wherein the calling step includes calling a helper method for debug logging.

5. The computer-implemented method of claim 1 , wherein the calling step includes calling a helper method that processes debug log messages.

6. The computer-implemented method of claim 1 , wherein the calling step includes passing string messages to the debug logging system.

7. The computer-implemented method of claim 1 , wherein the calling step includes calling the pre-logging subroutine only if requested by a developer of the client program.

8. A logging system application programming interface (API) executing on a computer system, comprising:

one or more pre-logging subroutines, wherein parameters within a message are parsed into multiple strings, and wherein the one or more pre-logging subroutines pass each string of the message as a separate parameter to a debug logging system, and

a raw logging interface that writes the message to a log wherein the raw logging interface cannot be implemented a public-interface and cannot be accessible by users working on the client program,

wherein the one or more pre-logging subroutines determine whether the debug logging system is enabled at a specific logging level before allocating resources to concatenate and log the messages;

wherein the multiple strings are concatenated into a single message only it the debug logging system is enabled; and

if the debug logging system is disabled, returning to the client program without allocating additional resources to concatenate the multiple strings and log the message.

9. The logging system API of claim 8 , wherein if the debug logging system is enabled, the resources are allocated to concatenate and log the message.

10. The logging system API of claim 8 , wherein the one or more pre-logging subroutines are helper methods for debug logging.

11. The logging system API of claim 8 , wherein the one or more pre-logging subroutines process debug log messages.

12. The logging system API of claim 8 , wherein the message is a string message.

13. A tangible computer readable medium providing instructions for increasing debug log performance, the instructions comprising:

receiving a message from a client program, wherein the message includes parameters;

allocating resources to parse the parameters into multiple strings;

calling a pre-logging subroutine, wherein the pre-logging subroutine passes each string of the message as a separate parameter to a debug logging system through a raw logging interface, and determines whether the debug logging system is enabled at a specific logging level, wherein the raw logging interface cannot be implemented as a public interface and cannot be accessible by users working on the client program;

concatenating the multiple strings into a single message only if the debug logging system is enabled; and

if the debug logging system is disabled, returning to the client program without allocating additional resources to concatenate the multiple strings and log the message.

14. A The tangible computer readable medium of claim 13 , wherein if the debug logging system is enabled, further comprising instructions for allocating additional resources to concatenate the message.

15. The tangible computer readable medium of claim 13 , further comprising instructions for logging the message.

16. The tangible computer readable medium of claim 13 , wherein the instructions for calling include instructions for calling a helper method for debug logging.

17. The tangible computer readable medium of claim 13 , wherein the instructions for calling include instructions for calling a helper method that processes debug log message.

18. The tangible computer readable medium of claim 13 , wherein the instructions for calling include instructions for passing string messages to the debug logging system.

19. The tangible computer readable medium of claim 13 , wherein the instructions for calling include instructions for calling the pre-logging subroutine only if requested by a developer of the debug logging system.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2018
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: MEIZU TECHNOLOGY CO., LTD.
Reel/Frame 045057/0555 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2003
From: HEWLETT-PACKARD COMPANY
To: HEWLETT-PACKARD DEVELOPMENT COMPANY L.P.
Reel/Frame 014061/0492 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2002
From: MCGEORGE, VERNON E. JR.
To: HEWLETT-PACKARD COMPANY
Reel/Frame 012639/0644 →