Logging Kit
Structured JSON logs with correlation IDs, level filtering, and service grouping.
0 / 0 lines
Click "Start Streaming" to see live logs
debug: 0info: 0warn: 0error: 0
Integration Code
import { createLogger, JsonTransport, CloudWatchTransport } from 'agent-tools-kit/observability'
const logger = createLogger({
level: process.env.LOG_LEVEL || 'info', // debug | info | warn | error
transports: [
new JsonTransport({ pretty: process.env.NODE_ENV !== 'production' }),
new CloudWatchTransport({ logGroup: '/agents/my-agent' }),
],
// Auto-attach correlation IDs across the request lifecycle
correlationId: { header: 'x-correlation-id', generate: 'uuid' },
// Redact sensitive fields before logging
redact: ['password', 'apiKey', 'authorization', 'ssn'],
// Default metadata attached to every log
defaultMeta: { service: 'my-agent', version: '1.2.0' },
})
// Structured logging
logger.info('Processing request', { userId: 'user-42', turn: 5 })
logger.warn('Slow tool execution', { tool: 'web-search', duration: 2340 })
logger.error('Tool failed', { tool: 'db-query', error: err.message })
// Child loggers inherit context
const reqLogger = logger.child({ requestId: req.id, userId: req.user.id })
reqLogger.info('Handling chat message') // includes requestId + userId
// Auto-instrument agent pipeline
agent.use(logger.middleware({
logRequests: true,
logResponses: true,
logToolCalls: true,
logTokenUsage: true,
}))