Skip to content

@egain/ai-agent-sdk API Reference - v0.1.1 / Logger

Class: Logger

Logger class that extends EventEmitter for log subscription Supports log level filtering and console output

Hierarchy

Table of contents

Constructors

Methods

Constructors

constructor

new Logger(config?): Logger

Parameters

NameType
configLoggerConfig

Returns

Logger

Overrides

EventEmitter.constructor

Defined in

core/logging/Logger.ts:45

Methods

on

on<K>(event, handler): this

Register an event handler.

The handler will be called every time the event is emitted.

Type parameters

NameType
Kextends "log"

Parameters

NameTypeDescription
eventKThe event name to listen for
handlerEventHandler<LoggerEvents[K]>The function to call when the event is emitted

Returns

this

this for method chaining

Example

typescript
agent.on("message", (event) => {
  console.log("Received:", event.payload);
});

Inherited from

EventEmitter.on

Defined in

core/events/EventEmitter.ts:64


once

once<K>(event, handler): this

Register a one-time event handler.

The handler will be called only once, then automatically removed.

Type parameters

NameType
Kextends "log"

Parameters

NameTypeDescription
eventKThe event name to listen for
handlerEventHandler<LoggerEvents[K]>The function to call when the event is emitted

Returns

this

this for method chaining

Example

typescript
agent.once("connected", () => {
  console.log("First connection established!");
});

Inherited from

EventEmitter.once

Defined in

core/events/EventEmitter.ts:88


off

off<K>(event, handler?): this

Remove an event handler.

If no handler is specified, removes all handlers for the event.

Type parameters

NameType
Kextends "log"

Parameters

NameTypeDescription
eventKThe event name
handler?EventHandler<LoggerEvents[K]>The specific handler to remove (optional)

Returns

this

this for method chaining

Example

typescript
const handler = (event) => console.log(event);
agent.on("message", handler);
agent.off("message", handler);

Example

typescript
agent.off("message");

Inherited from

EventEmitter.off

Defined in

core/events/EventEmitter.ts:117


removeAllListeners

removeAllListeners<K>(event?): this

Remove all event handlers

Type parameters

NameType
Kextends "log"

Parameters

NameType
event?K

Returns

this

Inherited from

EventEmitter.removeAllListeners

Defined in

core/events/EventEmitter.ts:180


listenerCount

listenerCount<K>(event): number

Get the number of listeners for an event

Type parameters

NameType
Kextends "log"

Parameters

NameType
eventK

Returns

number

Inherited from

EventEmitter.listenerCount

Defined in

core/events/EventEmitter.ts:194


setLevel

setLevel(level): void

Set the minimum log level threshold

Parameters

NameTypeDescription
levelLogLevelThe minimum log level to log

Returns

void

Defined in

core/logging/Logger.ts:57


getLevel

getLevel(): LogLevel

Get the current log level threshold

Returns

LogLevel

The current log level

Defined in

core/logging/Logger.ts:65


enableConsoleOutput

enableConsoleOutput(enabled): void

Enable or disable console output

Parameters

NameTypeDescription
enabledbooleanWhether to enable console output

Returns

void

Defined in

core/logging/Logger.ts:73


isConsoleOutputEnabled

isConsoleOutputEnabled(): boolean

Check if console output is enabled

Returns

boolean

True if console output is enabled

Defined in

core/logging/Logger.ts:81


trace

trace(message, context?): void

Log a TRACE level message

Parameters

NameTypeDescription
messagestringThe log message
context?Record<string, any>Optional context/metadata

Returns

void

Defined in

core/logging/Logger.ts:90


debug

debug(message, context?): void

Log a DEBUG level message

Parameters

NameTypeDescription
messagestringThe log message
context?Record<string, any>Optional context/metadata

Returns

void

Defined in

core/logging/Logger.ts:99


info

info(message, context?): void

Log an INFO level message

Parameters

NameTypeDescription
messagestringThe log message
context?Record<string, any>Optional context/metadata

Returns

void

Defined in

core/logging/Logger.ts:108


warn

warn(message, context?): void

Log a WARN level message

Parameters

NameTypeDescription
messagestringThe log message
context?Record<string, any>Optional context/metadata

Returns

void

Defined in

core/logging/Logger.ts:117


error

error(message, error?, context?): void

Log an ERROR level message

Parameters

NameTypeDescription
messagestringThe log message
error?ErrorOptional error object
context?Record<string, any>Optional context/metadata

Returns

void

Defined in

core/logging/Logger.ts:127


fatal

fatal(message, error?, context?): void

Log a FATAL level message

Parameters

NameTypeDescription
messagestringThe log message
error?ErrorOptional error object
context?Record<string, any>Optional context/metadata

Returns

void

Defined in

core/logging/Logger.ts:137


createChild

createChild(name, context?): Logger

Create a child logger with additional context

Parameters

NameTypeDescription
namestringName for the child logger
context?Record<string, any>Additional context to include in all logs

Returns

Logger

A new logger instance with merged context

Defined in

core/logging/Logger.ts:250

Released under the MIT License.