Class: SessionLogger
Makaio Framework / services-core / SessionLogger
Class: SessionLogger
Section titled “Class: SessionLogger”Defined in: ../../../packages/services/core/src/session/session-logger.ts:70
Bridges session lifecycle events to storage layer for persistence.
Architecture (Normalized Message Model):
- Messages: Stored in
messagestable via MessageStorageSubjects (by SessionOrchestrator/SessionBridge) - SessionLogger: Stores LIFECYCLE events only — agent.added, turn.started, turn.completed
NO longer subscribes to user_message. events* — user messages are now
first-class entities in the messages table, not embedded in event payloads.
The correlation link is session.agent.added which maps:
sessionId ↔ agentId ↔ adapterSessionId
Subscribes to:
- session.agent.added — correlation link for multi-agent reconstruction
- session.turn.started, session.turn.completed — turn lifecycle
- session.branch.created — branch creation audit trail
Does NOT subscribe to session.branch.merged or session.squash — those handlers (merge-handler, compress-handler) own their persistence directly using a stable eventId so retries are idempotent.
Emits transformed events to storage:sessionEvent.append for persistence.
Example
Section titled “Example”// Basic usage - lifecycle events are emitted to storage:sessionEvent.appendconst sessionLogger = new SessionLogger(MakaioBus);
// With redaction transform (mainly for turn error messages)const sessionLogger = new SessionLogger(MakaioBus, { transform: (event) => { // Redact sensitive info if needed return event; },});Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new SessionLogger(
bus?,options?):SessionLogger
Defined in: ../../../packages/services/core/src/session/session-logger.ts:74
Parameters
Section titled “Parameters”IMakaioBus = MakaioBus
options?
Section titled “options?”SessionLoggerOptions = {}
Returns
Section titled “Returns”SessionLogger
Methods
Section titled “Methods”destroy()
Section titled “destroy()”destroy():
void
Defined in: ../../../packages/services/core/src/session/session-logger.ts:163
Stop the logger and clean up subscriptions.
Returns
Section titled “Returns”void