### High Level SDK - "Tracker"**NOTE:**The tracker is a based on a thread pool which is controlled by BatchEventPool and a backlog (QueueEventStorage)By default the BatchEventPool is configured to use one thread (worker), you can change it when constructing the tracker. These are the default parameters for both Classes (inside config.py):

# Note the parameters as described abovetracker = IronSourceAtomTracker(batch_bytes_size=2048, batch_size=12, flush_interval=2000)tracker.set_debug(True) # Optional, Print debug information (You can also set it at the constructor)

# To stop the tracker, use:tracker.stop()```### Logging of request/response to file (since version 1.5.4)**Note:** this is recommended only if you want to debug the SDK To enable use: `debug_to_file` parameter at the tracker construction To specify path use: `debug_file_path` (defaults to /tmp/) The logging will produce JSON files with request and response objects. Each request-response pair will have a unique id. Logging file name is: atom-raw.{month}-{day}.json The file will log-rotate at 50MB and save up to 100 files, based on: RotatingFileHandler at Python Logging module.

### Abstract class for storing data at tracker backlog `EventStorage`If you'd like to customize the tracker backlog, implement the following abstract class.Implementation must to be synchronized for multi threading use.```pythonimport abc

class EventStorage: """ Abstract Base Class for providing a generic way of storing events in a backlog before they are sent to Atom. """ __metaclass__ = abc.ABCMeta

### v1.5.4- Added support for logging of all requests and responses to file- BugFix: Graceful shutdown did not stop the tracker completely while there are requests in flight and server-error.- Added raw 'requests' lib response to the Response class.- Added top limits to tracker conf

### v1.5.3- Added timeout to GET and POST (default 60 seconds)

### v1.5.2- Added retry_forever option for tracker (default now)- Added an option to set the tracker backlog queue as non-blocking

### v1.5.1- Tracker changes: - BugFix: replaced dequeue with Queue.Queue on Backlog & BatchEventPool. dequeue caused excessive consumption of memory and cpu. Note that .track() is now blocking when backlog is full - Changed defaults for Backlog & BatchEventPool - bug fix: fixing a case of negative timer when executing after sleep - bug fix: fixing a bug in the tracker handler when there are no tracked events (busy waiting)