Metrics

View as Markdown

Metrics are a core feature of Hookdeck, providing insights into your webhooks and event-driven systems. They are available for free to all users. 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 - Sources

Some metrics are essential to operating an event-driven system at scale. With metrics like Pending events (queue depth), Oldest pending event (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.

Metrics are found in the Metrics page and on the individual Source, Connection, and Destination pages.

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 Events with scheduled retries, Delayed events, and Paused events.

You can also export them to your observability platform such as Datadog.

Viewing Metrics

Metrics are displayed directly on the pages for individual resources, providing a granular view of your data.

Sources

On a Source's page, you can find metrics related to the requests Hookdeck receives:

  • Requests: The total number of requests received.
  • Requests rate: The rate of requests received over time.
  • Accepted requests: The total number of requests that were accepted.
  • Rejected requests: The total number of requests that were rejected.
  • Discarded requests: Requests that results in 0 events are considered discarded. This metric shows the number of discarded requests.
  • Avg. events per second: Each request can create 0 or many events. This metric shows the average number of events per request.
  • Avg. ignored events per request: The average number of requests that did not generate an event.

Connections

For each Connection, you can monitor the flow of events:

  • Events: The total number (or rate) of events created.
  • Events rate: The rate of events created over time.
  • Successful events: The total number of successful events.
  • Failed events: The total number of failed events.
  • Events failure ratio: The ratio of total events to failed events.
  • Avg. attempts per event: The average number of delivery attempts made per event.
  • Events with scheduled retries: Events that have a future delivery attempt scheduled.
  • Paused events: The total number of events that have been paused over time.
  • Delayed events: The total number of events that are delayed over time.

Destinations

A Destination's page contains metrics for both events and attempts, grouped into subcategories. Metrics for destinations include:

Events

  • Events: The total number of events sent to the destination.
  • Events rate: The rate of events sent to the destination over time.
  • Successful events: The total number of events that were successfully delivered.
  • Failed events: The total number of events that failed to be delivered.
  • Events failure ratio: The ratio of total events to failed events.
  • Avg. attempts per event: The average number of delivery attempts made per event.
  • Oldest pending attempt: The oldest attempt that is still pending delivery.
  • Pending events: The total number of events that are still pending delivery to the destination.

Attempts

  • Delivered attempts: Number of attempts that were attempted to be delivered to the destination.
  • Attempts delivery rate: The rate of delivery attempts that were successful over time.
  • Successful attempts: The total number of delivery attempts that were successful.
  • Failed attempts: The total number of delivery attempts that failed.
  • Attempts failure rate: The rate at which delivery attempt errors to this destination are occurring.
  • Avg. response latency: The average response latency of the destination.
  • 95th response latency: The 95th percentile of response latency for the destination.
  • 99th response latency: The 99th percentile of response latency for the destination.
  • Max. response latency: The maximum response latency recorded for the destination.

Exploring Metrics

Many charts in the dashboard now feature an "Explore" option under the "..." button. Clicking this option takes you to the relevant data page (like Requests or Events) with filters automatically applied to match the data in the chart. This allows you to quickly investigate spikes or anomalies in your metrics.

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.

Metrics export

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:

  1. Go to the project integrations page
  2. Select Connect on the Datadog integration.
  3. Follow the instructions to generate a new API key and provide your key.
  4. 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:

  1. Download the Hookdeck dashboard template and upload it to Datadog
  2. Go to the dashboards list in your Datadog account
  3. Select New Dashboard and create the dashboard
  4. Select Configure, Import dashboard JSON , and import the Hookdeck dashboard template

Metric tags

Each metric is tagged with the following tags:

  • name: The name of the metric
  • source: The source of the metric. This is always hookdeck
  • project: The name of the project
  • organization: The name of the organization

Additionally, each metric is tagged with the name of the associated resource (e.g., source, connection, or 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