Entropic 2.3.8
Local-first agentic inference engine
Loading...
Searching...
No Matches
entropic::SessionLogger Class Reference

Manages session_model.log for raw streaming content. More...

#include <entropic/types/session_logger.h>

Public Member Functions

ENTROPIC_EXPORT SessionLogger (const std::filesystem::path &log_dir)
 Construct with log directory.
 
ENTROPIC_EXPORT ~SessionLogger ()
 Close the model log file.
 
 SessionLogger (const SessionLogger &)=delete
 Non-copyable.
 
SessionLoggeroperator= (const SessionLogger &)=delete
 
ENTROPIC_EXPORT void log_user_input (const std::string &input)
 Log user input at the start of a turn.
 
ENTROPIC_EXPORT void log_raw_token (const char *token, size_t len)
 Log a raw token from streaming output.
 
ENTROPIC_EXPORT void end_turn ()
 End the current assistant turn.
 
ENTROPIC_EXPORT bool is_open () const
 Check if the logger is open and writable.
 

Static Public Member Functions

static void raw_token_callback (const char *token, size_t len, void *user_data)
 Static callback for StreamThinkFilter raw output.
 

Detailed Description

Manages session_model.log for raw streaming content.

Opened at configure time, used during run_streaming to record the full user/assistant transcript. The session_model.log is the unfiltered stream (includes think blocks, unlike session.log which gets spdlog-formatted engine operations).

Version
2.0.1

Definition at line 32 of file session_logger.h.

Constructor & Destructor Documentation

◆ SessionLogger()

entropic::SessionLogger::SessionLogger ( const std::filesystem::path &  log_dir)
explicit

Construct with log directory.

Parameters
log_dirDirectory for session_model.log.
Version
2.0.1

Opens session_model.log for append.

Parameters
log_dirDirectory for session_model.log.

Definition at line 21 of file session_logger.cpp.

◆ ~SessionLogger()

entropic::SessionLogger::~SessionLogger ( )

Close the model log file.

Version
2.0.1

Definition at line 34 of file session_logger.cpp.

Member Function Documentation

◆ end_turn()

void entropic::SessionLogger::end_turn ( )

End the current assistant turn.

Version
2.0.1

Definition at line 68 of file session_logger.cpp.

◆ is_open()

bool entropic::SessionLogger::is_open ( ) const

Check if the logger is open and writable.

Returns
true if FILE* is valid.
Version
2.0.1
Returns
true if FILE* is valid.

Definition at line 80 of file session_logger.cpp.

◆ log_raw_token()

void entropic::SessionLogger::log_raw_token ( const char *  token,
size_t  len 
)

Log a raw token from streaming output.

Parameters
tokenToken data.
lenToken length.
Version
2.0.1
Parameters
tokenToken data.
lenToken length.

Definition at line 57 of file session_logger.cpp.

◆ log_user_input()

void entropic::SessionLogger::log_user_input ( const std::string &  input)

Log user input at the start of a turn.

Parameters
inputUser input string.
Version
2.0.1
Parameters
inputUser input string.

Definition at line 44 of file session_logger.cpp.

◆ raw_token_callback()

void entropic::SessionLogger::raw_token_callback ( const char *  token,
size_t  len,
void *  user_data 
)
static

Static callback for StreamThinkFilter raw output.

Matches the signature expected by StreamThinkFilter::set_raw_callback. The user_data pointer must be a SessionLogger*.

Parameters
tokenToken data.
lenToken length.
user_dataSessionLogger pointer. @callback
Version
2.0.1
Parameters
tokenToken data.
lenToken length.
user_dataSessionLogger pointer. @callback
Version
2.0.1

Definition at line 92 of file session_logger.cpp.


The documentation for this class was generated from the following files: