Documentation
¶
Index ¶
- Constants
- func GetModelID(ctx context.Context) (core.ModelID, bool)
- func GetTokenInfo(ctx context.Context) (*core.TokenInfo, bool)
- func SetLogger(l *Logger)
- func WithModelID(ctx context.Context, modelID core.ModelID) context.Context
- func WithTokenInfo(ctx context.Context, info *core.TokenInfo) context.Context
- type Config
- type ConsoleOutput
- type ConsoleOutputOption
- type LogEntry
- type Logger
- func (l *Logger) Debug(ctx context.Context, format string, args ...interface{})
- func (l *Logger) Error(ctx context.Context, format string, args ...interface{})
- func (l *Logger) Info(ctx context.Context, format string, args ...interface{})
- func (l *Logger) PromptCompletion(ctx context.Context, prompt, completion string, tokenInfo *core.TokenInfo)
- func (l *Logger) Warn(ctx context.Context, format string, args ...interface{})
- type Output
- type Severity
Constants ¶
View Source
const ( // ModelIDKey is used to store/retrieve ModelID from context. ModelIDKey contextKey = "model_id" // TokenInfoKey is used to store/retrieve token usage information. TokenInfoKey contextKey = "token_info" )
Variables ¶
This section is empty.
Functions ¶
func GetModelID ¶
GetModelID retrieves ModelID from context.
func GetTokenInfo ¶
GetTokenInfo retrieves TokenInfo from context.
func SetLogger ¶
func SetLogger(l *Logger)
SetLogger allows setting a custom configured logger as the global instance.
func WithModelID ¶
WithModelID adds a ModelID to the context.
Types ¶
type Config ¶
type Config struct {
Severity Severity
Outputs []Output
SampleRate uint32
DefaultFields map[string]interface{}
}
Config allows flexible logger configuration.
type ConsoleOutput ¶
type ConsoleOutput struct {
// contains filtered or unexported fields
}
ConsoleOutput formats logs for human readability.
func NewConsoleOutput ¶
func NewConsoleOutput(useStderr bool, opts ...ConsoleOutputOption) *ConsoleOutput
func (*ConsoleOutput) Sync ¶
func (c *ConsoleOutput) Sync() error
func (*ConsoleOutput) Write ¶
func (o *ConsoleOutput) Write(e LogEntry) error
type ConsoleOutputOption ¶
type ConsoleOutputOption func(*ConsoleOutput)
func WithColor ¶
func WithColor(enabled bool) ConsoleOutputOption
type LogEntry ¶
type LogEntry struct {
// Standard fields
Time int64
Severity Severity
Message string
File string
Line int
Function string
TraceID string // Added trace ID field
// LLM-specific fields
ModelID string // The LLM model being used
TokenInfo *core.TokenInfo // Token usage information
Latency int64 // Operation duration in milliseconds
Cost float64 // Operation cost in dollars
// General structured data
Fields map[string]interface{}
}
LogEntry represents a structured log record with fields particularly relevant to LLM operations.
type Logger ¶
type Logger struct {
// contains filtered or unexported fields
}
Logger provides the core logging functionality.
Click to show internal directories.
Click to hide internal directories.