MemoryLogger
Class: MemoryLogger
Defined in: packages/workout/src/loggers/memory.ts:17
Logger that stores messages in memory for later retrieval Useful for testing, debugging, or implementing in-memory log buffers Automatically maintains a circular buffer by removing oldest messages when limit is reached
Example
const output = new WorkerOutput();
const logger = new MemoryLogger(output, "DEBUG", 1000, true);
output.log("INFO", "Test message");
console.log(logger.getLogs()); // Retrieve all logs
Extends
WorkerLogger
Constructors
Constructor
new MemoryLogger(
output,level?,limit?,includeAll?):MemoryLogger
Defined in: packages/workout/src/loggers/memory.ts:38
Create a new memory logger
Parameters
output
WorkerOutput instance to listen to
level?
WorkerLogLevel = "DEBUG"
Log level to filter messages (default: "DEBUG")
limit?
number = 2000
Maximum number of messages to keep (default: 2000)
includeAll?
boolean = false
Whether to store all message types or only logs (default: false)
Returns
MemoryLogger
Overrides
WorkerLogger.constructor
Properties
includeAll
protectedincludeAll:boolean
Defined in: packages/workout/src/loggers/memory.ts:25
Whether to store all message types (true) or only log messages (false)
limit
protectedlimit:number
Defined in: packages/workout/src/loggers/memory.ts:29
Maximum number of messages to keep in memory
messages
protectedmessages:WorkerMessage[] =[]
Defined in: packages/workout/src/loggers/memory.ts:21
Messages received and stored in memory
Methods
clear()
clear():
void
Defined in: packages/workout/src/loggers/memory.ts:92
Clear all messages
Returns
void
getLogs()
getLogs():
WorkerMessage[]
Defined in: packages/workout/src/loggers/memory.ts:81
Get only log messages, filtering out other message types
Returns
Array of log messages only
getMessages()
getMessages():
WorkerMessage[]
Defined in: packages/workout/src/loggers/memory.ts:73
Get all messages stored in memory
Returns
Array of all recorded messages
onMessage()
onMessage(
msg):void
Defined in: packages/workout/src/loggers/memory.ts:48
Process and store a message if it passes filtering criteria
Parameters
msg
The message to process
Returns
void
Overrides
WorkerLogger.onMessage
setLogLevel()
setLogLevel(
level):void
Defined in: packages/workout/src/loggers/memory.ts:65
Update the log level for filtering future messages
Parameters
level
WorkerLogLevel | (() => WorkerLogLevel)
New log level as string or function
Returns
void