IP Library Granted Patent US 8,499,200
Granted Patent B2
US 8,499,200 · App. 12/786,187 · Granted Jul 30, 2013

Managing code-tracing data

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 8,499,200
App. No.
12/786,187
Granted
Jul 30, 2013
Kind
B2
Abstract

A method of managing code-tracing data is described. The method comprises the steps of: receiving code-tracing data from an executing software component; adding the received code-tracing data to a log stored in temporary storage; detecting a property of the received code-tracing data; copying the log to non-volatile storage when the property matches a defined trigger property; and deleting contents of the log according to a caching policy when the property does not match a defined trigger property.

Claims (43)

1. A method of managing code-tracing data, the method comprising the steps of:

receiving first code-tracing data from a first executing software component in response to a first session requesting permanent storage of code-tracing data;

storing the first code-tracing data in permanent storage;

receiving second code-tracing data from a second executing software component in response to a second session not requesting permanent storage of code-tracing data;

adding the second code-tracing data to a log stored in temporary storage;

detecting a property of the second code-tracing data;

copying the log to non-volatile storage when the property matches a defined trigger property; and

deleting contents of the log according to a caching policy when the property does not match a defined trigger property.

2. A method according to claim 1 , wherein the defined trigger property is an error category.

3. A method according to claim 1 , wherein the caching policy is based on a fixed number of bytes stored in the log, so that the earliest code-tracing data is deleted whenever the log reaches the fixed number of bytes.

4. A method according to claim 1 , wherein the caching policy is based on time, so that code-tracing data is deleted whenever it is older than a fixed time period.

5. A method according to claim 1 , wherein the caching policy is based on the number of entries stored, so that the earliest code-tracing data is deleted whenever the log reaches a fixed number of entries.

6. A method according to claim 1 , wherein comprises a sequence of multiple properties, each property linked by a Boolean relationship to the other properties in the sequence.

7. A method according to claim 1 , wherein the temporary storage comprises computer memory.

8. A method according to claim 1 , wherein the non-volatile storage comprises one or more magnetic disks.

9. A method according to claim 1 , wherein the first executing software implements a banknote dispense function, and the second executing software implements a banknote retract function.

10. A method according to claim 1 , wherein the method further comprises permanently storing code-tracing data in a separate file, without implementing any caching policy for this file, for any client requesting such storage.

11. A system for managing code-tracing data, the system comprising: a processor, main memory, and a trace manager executing on said processor operating to

receive first code-tracing data from a first executing software component in response to a first session requesting permanent storage of code-tracing data,

store the first code-tracing data in permanent storage,

receive second code-tracing data from a second executing software component in response to a second session not requesting permanent storage of code-tracing data,

add the received code-tracing data to a log stored in temporary storage,

detect a property of the received code-tracing data,

copy the log to permanent storage if the property matches a defined trigger property; and

delete contents of the log according to a caching policy.

12. A system according to claim 11 , wherein the trace manager comprises a CEN XFS manager.

13. A system according to claim 12 , wherein each of the executing software components are embodied as XFS service providers.

14. A non-transitory computer readable storage medium with a computer program stored thereon comprising program instructions for executing the steps of:

receiving first code-tracing data from a first executing software component in response to a first session requesting permanent storage of code-tracing data;

storing the first code-tracing data in permanent storage;

receiving second code-tracing data from a second executing software component in response to a second session not requesting permanent storage of code-tracing data;

adding the second code-tracing data to a log stored in temporary storage;

detecting a property of the second code-tracing data;

copying the log to non-volatile storage when the property matches a defined trigger property; and

deleting contents of the log according to a caching policy when the property does not match a defined trigger property.

15. A self-service terminal comprising a plurality of modules for providing transaction-related functions to a customer of the self-service terminal, and a controller coupled to the modules, and executing a runtime platform including a trace manager, the trace manager being arranged to

(a) receive code-tracing data from an executing software component in response to a session not requesting permanent storage of code-tracing data,

(b) add the received code-tracing data to a log stored in volatile storage,

(c) detect a property of the received code-tracing data,

(d) copy the log to non-volatile storage when the property matches a defined trigger property; and

(e) delete contents of the log according to a caching policy.

16. The self-service terminal of claim 15 , wherein the executing software component implements a banknote dispense function.

17. The self-service terminal of claim 15 , wherein the defined trigger property is an error.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PROPERTIES SECTION BY INCLUDING IT WITH TEN PREVIOUSLY OMITTED PROPERTY NUMBERS PREVIOUSLY RECORDED ON REEL 65346 FRAME 367. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Aug 13, 2025
From: NCR ATLEOS CORPORATION; CARDTRONICS USA, LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 072445/0072 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2024
From: NCR VOYIX CORPORATION
To: NCR ATLEOS CORPORATION
Reel/Frame 067590/0109 →
CHANGE OF NAME Recorded May 30, 2024
From: NCR CORPORATION
To: NCR VOYIX CORPORATION
Reel/Frame 067578/0417 →
CORRECTIVE ASSIGNMENT TO CORRECT THE DOCUMENT DATE AND REMOVE THE OATH/DECLARATION (37 CFR 1.63) PREVIOUSLY RECORDED AT REEL: 065331 FRAME: 0297. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 31, 2023
From: NCR ATLEOS CORPORATION
To: CITIBANK, N.A.
Reel/Frame 065627/0332 →
SECURITY INTEREST Recorded Oct 25, 2023
From: NCR ATLEOS CORPORATION; CARDTRONICS USA, LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 065346/0367 →
RELEASE OF PATENT SECURITY INTEREST Recorded Oct 25, 2023
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: NCR VOYIX CORPORATION
Reel/Frame 065346/0531 →
SECURITY INTEREST Recorded Oct 24, 2023
From: NCR ATLEOS CORPORATION
To: CITIBANK, N.A.
Reel/Frame 065331/0297 →
SECURITY AGREEMENT Recorded Apr 18, 2016
From: NCR CORPORATION; NCR INTERNATIONAL, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 038646/0001 →
SECURITY AGREEMENT Recorded Jan 15, 2014
From: NCR CORPORATION; NCR INTERNATIONAL, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 032034/0010 →