Skip to main content
This covers debugging methods using Sonamu’s LogTape-based logging system.

What is LogTape?

Sonamu provides structured logging using @logtape/logtape. Key features:
  • Category-based logging
  • Various log levels (debug, info, warn, error, fatal)
  • Custom Sink/Filter support
  • Fastify integration

Basic Logging

Using getLogger

Log Levels

Logging Configuration

sonamu.config.ts Configuration

Disabling Logging

Category-Based Logging

Hierarchical Categories

Automatic Categories for Model/Frame

Sonamu automatically assigns categories to Models and Frames:

Fastify Logging

API Request Logging

Sonamu automatically logs requests to /api paths:

Excluding Healthcheck

/api/healthcheck is automatically excluded from logging.

Debugging Patterns

Function Entry/Exit Logging

Conditional Verbose Logging

Error Tracking

Custom Sinks

File Sink

Custom Formatter

Custom Filters

Environment-Based Filtering

Category Filtering

Logging Level Control

Separating Development/Production

Category-Specific Levels

Structured Logging

Including Context

Logging Error Objects

Performance Logging

Measuring Execution Time

Logging Best Practices

1. Meaningful Messages

2. Appropriate Log Levels

3. Excluding Sensitive Information

4. Category Consistency

Debugging Tips

1. Controlling Level with Environment Variables

2. Conditional Verbose Logging

3. Grouping Logs