Metrics
Metrics is offered as part of the Growth plan.
Overview
Metrics enable you to gain insight into your requests, events, and attempts. Most metrics are updated in near real-time, and some "stateful" metrics, such as Pending Attempts, are sampled at a rate of 5 seconds.
Metrics are available in the dashboard and can be exported to your observability platform such as Datadog.
Some metrics are essential to operating an event-driven system at scale. With metrics such as Pending Attempts (queue depth), Oldest Attempts (backpressure), and Response Latency, you can monitor the health of your system and take action when needed.
Other metrics like Total Requests by Source or Total Events by Connection can help you understand the usage of your system and identify potential issues.
Supported metrics
Each metric is categorized by the resource it is related to. The metrics and resources are:
Requests
- Total Requests: The total number (or rate) of requests received.
- Accepted Requests: The total number of requests that were accepted.
- Rejected Requests: The total number of requests that were rejected.
- Average Events: The average number of events created per individual request.
- Average Ignored Events: The average number of events that were not created (ignored) created per individual request.
Events
- Total Events: The total number (or rate) of events created.
- Pending Events: The total number of events that are pending (in queue).
- Paused Events: The total number of events that are on hold from a paused connection.
- Pending retry Events: The total number of events that have a retry pending (from a retry rule).
- Scheduled Events: The total number of events scheduled for future delivery (from a delay rule).
- Successful Events: The total number of successful events.
- Failed Events: The total number of failed events.
- Error Rate: The ratio of total events to failed events.
- Average Attempts: The average number of attempts made per event.
Certain event metrics are only available in "point-in-time" instead of time-series data. We are working on moving those metrics to time-series. The "point-in-time" metrics are Pending Events, Pending retry Events, Scheduled Events, and Paused Events.
Attempts
- Total Attempts: The total number (or rate) of attempts made.
- Pending Attempts: The total number of attempts that are pending (in queue). Also known as "Queue Depth".
- Oldest Attempts: The maximum amount of time in minutes an attempts has been in queue. Also known as "Max Age" and "Backpressure".
- Delivery Attempts: The total number (or rate) of attempts that were delivered. Also knows as "Ack Rate".
- Response Latency: The average (p50, p90, p99, max) response latency of your destination for that were delivered.
- Error Rate: The ratio of total attempts to failed attempts.
Categories & Segmentation
The metrics "home" shows an overview of key metrics for each category. You can click on a category
or on the sidebar Metrics section to see the metrics for that category.On the specific metric category page, metrics are segmented by the associated resource. For example, the requests
category is segmented by source
and the events
category is segmented by connection
.
On the top right of the page you can narrow down the metrics to a specific resource and adjust the time range for the metrics.
Metrics on Source, Connection and Destination pages
Metrics for a given resource can be found on the respective resource page. The dropdown let's you toggle between the metrics you want to explore.
Metrics export
Metrics export allows you to access your Hookdeck project metrics in your own observability platform. We currently support exporting to Datadog and are working on supporting more platforms as requested.
Exporting metrics is also an opportunity to support custom alerts and dashboards. For example, you can create an alert when the Pending Attempts metric is above a certain threshold.
Exporting to Datadog
The Datadog integrations support exporting to Datadog "Metrics" using your own Datadog API key. To configure the integration:
- Go to the project integrations page
- Select on the Datadog integration.
- Follow the instructions to generate a new API key and provide your key.
- Within a few minutes the Metrics data will start appearing in your Datadog account.
Dashboard template
We have created a dashboard template that you can use to get started with Datadog. The dashboard is pre-configured with the metrics that we think are most useful.
To use the dashboard template:
- Download the Hookdeck dashboard template and upload it to Datadog
- Go to the dashboards list in your Datadog account
- Select and create the dashboard
- Select , , and import the Hookdeck dashboard template
Metric tags
Each metric is tagged with the following tags:
name
: The name of the metricsource
: The source of the metric. This is alwayshookdeck
project
: The name of the projectorganization
: The name of the organization
Additionally each metric category is tagged with the respective resource name. The requests
metrics are tagged with source
, events
metrics with connection
and attempts
with destination
.
Renaming a source, connection or destination will cause the metric to be tagged with the new name. This will cause a "break" in the metric history as historical data will be tagged with the old name.
Metric names
Each metric name is prefixed with hookdeck.
. The complete list of metrics can be found in the metrics Datadog history page.
Requesting a new integration
We plan on supporting most popular observability platforms. If you would like to request a new integration, please contact us via the live chat, or by email at info@hookdeck.com