Installation
Basic usage
Simply add the middleware to your Express app:app.ts
The middleware automatically tracks all incoming requests, captures
request/response metadata, and sends events to Sentinel with minimal
performance impact.
Configuration
The SDK automatically reads configuration from environment variables. You can also pass options directly to the middleware.Configuration options
You can pass configuration options directly when initializing the middleware:app.ts
Your Sentinel API key. Overrides the
SENTINEL_API_KEY environment variable
if provided.Maximum number of events to batch before sending to the Sentinel API.
Time in milliseconds to wait before sending a batch of events, even if the
batch size hasn’t been reached.
Array of path patterns to exclude from tracking. If you specify
/v1/projects, it will exclude all paths starting with that prefix (e.g.,
/v1/projects, /v1/projects/123, /v1/projects/123/tasks).Tracking steps
Track sub-operations within a request to monitor database queries, external API calls, and other operations.app.ts
Setting user context
Identify users making requests by setting theuserId for tracking user behavior:
app.ts
How it works
The middleware automatically handles the following:- Request tracking: Captures all incoming requests and their metadata
- Response capture: Records response status codes and timing information
- Event batching: Groups events together to minimize API calls
- Automatic retries: Handles failures gracefully with exponential backoff (up to 3 retries by default)
- Performance optimization: Non-blocking event sending ensures minimal impact on your application
Important notes
- Make sure to add body parser middleware (like
express.json()orexpress.urlencoded()) before the Sentinel middleware so that request bodies can be captured. - The middleware attaches a
sentinelproperty to the ExpressRequestobject, which contains the request context includingrequestId.