@traque/node
v0.0.1-beta.1
Published
## Installation
Downloads
50
Readme
Traque Node.js SDK
Installation
npm install @traque/node
yarn install @traque/node
pnpm install @traque/nodeQuick Start
import { Traque } from '@traque/node';
// Initialize the SDK
const traque = new Traque({
serviceUrl: 'YOUR_TRAQUE_SERVICE_URL',
apiKey: 'YOUR_API_KEY',
environment: 'PRODUCTION',
});
// Enable automatic error capturing
traque.enableAutoCapture();Features
Manual Error Capturing
Capture errors manually with additional context:
try {
// Your code here
} catch (error) {
traque.captureException(error);
}HTTP Context Tracking
The SDK automatically captures HTTP context when provided with request and response objects. This works with any Node.js web framework:
Express.js
app.use((err: Error, req: Request, res: Response, next: NextFunction) => {
traque.captureException(err, req, res);
next(err);
});Fastify
fastify.setErrorHandler((error, request, reply) => {
traque.captureException(error, request.raw, reply.raw);
throw error;
});Hono
app.onError((err, c) => {
traque.captureException(err, c.req.raw, c.res.raw);
return c.text('Internal Server Error', 500);
});The captured HTTP context includes:
- Request URL
- HTTP method
- Status code
- Status message
- Client IP address
Automatic Error Capturing
Enable automatic capturing of unhandled exceptions and rejections:
// Enable automatic capturing
traque.enableAutoCapture();
// Disable automatic capturing when needed
traque.disableAutoCapture();API Reference
new Traque(config: Config): Traque
Create a new Traque instance with configuration.
interface Config {
serviceUrl: string; // Your Traque service URL
apiKey: string; // Your API key
environment: 'PRODUCTION' | 'STAGING' | 'DEVELOPMENT';
plugins?: Plugin[]; // Optional plugins
}captureException(exception: Error | Exception, req?: RequestLike, res?: ResponseLike): void
Manually capture an exception with optional HTTP context.
enableAutoCapture(): void
Enable automatic capturing of unhandled exceptions and rejections.
disableAutoCapture(): void
Disable automatic error capturing.
Best Practices
- Create a single Traque instance and reuse it throughout your application
- Use automatic capturing for production environments
- Add HTTP context to your error reports when available
- Consider using plugins for additional functionality
Error Handling
The SDK includes robust error handling:
- Validates configuration on initialization
- Handles network errors gracefully
- Provides clear error messages for common issues
- Supports both synchronous and asynchronous error capturing
- Automatically captures HTTP context when available
Contributing
Contributions are welcome! Please read our contributing guidelines before submitting pull requests.
License
MIT
