---
title: Azure Notification Hubs
description: Track key Azure Notification Hubs metrics.
breadcrumbs: Docs > Integrations > Azure Notification Hubs
---

> For the complete documentation index, see [llms.txt](https://docs.datadoghq.com/llms.txt).

# Azure Notification Hubs

{% callout %}
# Important note for users on the following Datadog sites: us2.ddog-gov.com

{% alert level="info" %}
To find out if this integration is available in your organization, see your [Datadog Integrations](https://app.datadoghq.com/integrations) page or ask your organization administrator.

To initiate an exception request to enable this integration for your organization, email [support@ddog-gov.com](mailto:support@ddog-gov.com).
{% /alert %}

{% /callout %}

## Overview{% #overview %}

[Azure Notification Hubs](https://learn.microsoft.com/azure/notification-hubs/notification-hubs-push-notification-overview) is a scaled-out push engine. It sends notifications from any backend, in the cloud or on-premises, to platforms such as iOS, Android, and Windows.

Use the Datadog Azure integration to collect metrics from Azure Notification Hubs.

## Setup{% #setup %}

### Installation{% #installation %}

If you haven't already, set up the [Microsoft Azure integration](https://docs.datadoghq.com/integrations/azure.md) first. There are no other installation steps.

## Data Collected{% #data-collected %}

### Metrics{% #metrics %}

|  |
|  |
| **azure.notificationhubs_namespaces_notificationhubs.incoming**(count)                                 | The count of all successful send API calls.*Shown as request*                                                                                                                                                                                                                              |
| **azure.notificationhubs_namespaces_notificationhubs.incoming.all.failedrequests**(count)              | Total incoming failed requests for a notification hub*Shown as request*                                                                                                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.incoming.all.requests**(count)                    | Total incoming requests for a notification hub*Shown as request*                                                                                                                                                                                                                           |
| **azure.notificationhubs_namespaces_notificationhubs.incoming.scheduled**(count)                       | Scheduled Push Notifications Cancelled                                                                                                                                                                                                                                                     |
| **azure.notificationhubs_namespaces_notificationhubs.incoming.scheduled.cancel**(count)                | Scheduled Push Notifications Cancelled                                                                                                                                                                                                                                                     |
| **azure.notificationhubs_namespaces_notificationhubs.installation.all**(count)                         | Installation Management Operations*Shown as operation*                                                                                                                                                                                                                                     |
| **azure.notificationhubs_namespaces_notificationhubs.installation.delete**(count)                      | Delete Installation Operations*Shown as operation*                                                                                                                                                                                                                                         |
| **azure.notificationhubs_namespaces_notificationhubs.installation.get**(count)                         | Get Installation Operations*Shown as operation*                                                                                                                                                                                                                                            |
| **azure.notificationhubs_namespaces_notificationhubs.installation.patch**(count)                       | Patch Installation Operations*Shown as operation*                                                                                                                                                                                                                                          |
| **azure.notificationhubs_namespaces_notificationhubs.installation.upsert**(count)                      | Create or Update Installation Operations*Shown as operation*                                                                                                                                                                                                                               |
| **azure.notificationhubs_namespaces_notificationhubs.notificationhub.pushes**(count)                   | All outgoing notifications of the notification hub                                                                                                                                                                                                                                         |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.allpns.badorexpiredchannel**(count)      | The count of pushes that failed because the channel/token/registrationId in the registration was expired or invalid.                                                                                                                                                                       |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.allpns.channelerror**(count)             | The count of pushes that failed because the channel was invalid not associated with the correct app throttled or expired.                                                                                                                                                                  |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.allpns.invalidpayload**(count)           | The count of pushes that failed because the PNS returned a bad payload error.                                                                                                                                                                                                              |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.allpns.pnserror**(count)                 | The count of pushes that failed because there was a problem communicating with the PNS (excludes authentication problems).                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.allpns.success**(count)                  | The count of all successful notifications.                                                                                                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.apns.badchannel**(count)                 | The count of pushes that failed because the token is invalid (APNS status code: 8).                                                                                                                                                                                                        |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.apns.expiredchannel**(count)             | The count of tokens that were invalidated by the APNS feedback channel.                                                                                                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.apns.invalidcredentials**(count)         | The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.                                                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.apns.invalidnotificationsize**(count)    | The count of pushes that failed because the payload was too large (APNS status code: 7).                                                                                                                                                                                                   |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.apns.pnserror**(count)                   | The count of pushes that failed because of errors communicating with APNS.                                                                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.apns.success**(count)                    | The count of all successful notifications.                                                                                                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.badchannel**(count)                | Number of pushes that failed because the registrationId in the registration was not recognized (Firebase Cloud Messaging v1 result: Invalid registration, Missing registration, Not registered, Not found, or Gone).                                                                       |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.invalidcredentials**(count)        | Number of pushes that failed because the platform notification service did not accept the provided credentials (Firebase Cloud Messaging v1 result: Sender ID mismatch, Unauthorized, or Forbidden).                                                                                       |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.invalidnotificationformat**(count) | Number of pushes that failed because the payload was not formatted correctly (Firebase Cloud Messaging v1 result: Invalid time to live, Invalid parameters, or Invalid data key).                                                                                                          |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.invalidnotificationsize**(count)   | Number of pushes that failed because the payload was too large (Firebase Cloud Messaging v1 result: Message too big).                                                                                                                                                                      |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.pnserror**(count)                  | Number of pushes that failed because of errors communicating with Firebase Cloud Messaging v1.                                                                                                                                                                                             |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.success**(count)                   | Number of successful pushes to Firebase Cloud Messaging v1.                                                                                                                                                                                                                                |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.throttled**(count)                 | Number of pushes that failed because Firebase Cloud Messaging v1 throttled the app (result: Quota exceeded or HTTP 429).                                                                                                                                                                   |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.fcmv1.wrongchannel**(count)              | Number of pushes that failed because the registrationId in the registration is not associated with the current app (Firebase Cloud Messaging v1 result: Invalid package name).                                                                                                             |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.authenticationerror**(count)         | The count of pushes that failed because the PNS did not accept the provided credentials the credentials are blocked or the SenderId is not correctly configured in the app (GCM result: MismatchedSenderId).                                                                               |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.badchannel**(count)                  | The count of pushes that failed because the registrationId in the registration was not recognized (GCM result: Invalid Registration).                                                                                                                                                      |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.expiredchannel**(count)              | The count of pushes that failed because the registrationId in the registration was expired (GCM result: NotRegistered).                                                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.invalidcredentials**(count)          | The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.                                                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.invalidnotificationformat**(count)   | The count of pushes that failed because the payload was not formatted correctly (GCM result: InvalidDataKey or InvalidTtl).                                                                                                                                                                |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.invalidnotificationsize**(count)     | The count of pushes that failed because the payload was too large (GCM result: MessageTooBig).                                                                                                                                                                                             |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.pnserror**(count)                    | The count of pushes that failed because of errors communicating with GCM.                                                                                                                                                                                                                  |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.success**(count)                     | The count of all successful notifications.                                                                                                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.throttled**(count)                   | The count of pushes that failed because GCM throttled this app (GCM status code: 501-599 or result:Unavailable).                                                                                                                                                                           |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.gcm.wrongchannel**(count)                | The count of pushes that failed because the registrationId in the registration is not associated to the current app (GCM result: InvalidPackageName).                                                                                                                                      |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.authenticationerror**(count)        | The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.                                                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.badchannel**(count)                 | The count of pushes that failed because the ChannelURI in the registration was not recognized (MPNS status: 404 not found).                                                                                                                                                                |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.channeldisconnected**(count)        | The count of pushes that failed because the ChannelURI in the registration was disconnected (MPNS status: 412 not found).                                                                                                                                                                  |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.dropped**(count)                    | The count of pushes that were dropped by MPNS (MPNS response header: X-NotificationStatus: QueueFull or Suppressed).                                                                                                                                                                       |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.invalidcredentials**(count)         | The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.                                                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.invalidnotificationformat**(count)  | The count of pushes that failed because the payload of the notification was too large.                                                                                                                                                                                                     |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.pnserror**(count)                   | The count of pushes that failed because of errors communicating with MPNS.                                                                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.success**(count)                    | The count of all successful notifications.                                                                                                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.mpns.throttled**(count)                  | The count of pushes that failed because MPNS is throttling this app (WNS MPNS: 406 Not Acceptable).                                                                                                                                                                                        |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.authenticationerror**(count)         | Notification not delivered because of errors communicating with Windows Live invalid credentials or wrong token.                                                                                                                                                                           |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.badchannel**(count)                  | The count of pushes that failed because the ChannelURI in the registration was not recognized (WNS status: 404 not found).                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.channeldisconnected**(count)         | The notification was dropped because the ChannelURI in the registration is throttled (WNS response header: X-WNS-DeviceConnectionStatus: disconnected).                                                                                                                                    |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.channelthrottled**(count)            | The notification was dropped because the ChannelURI in the registration is throttled (WNS response header: X-WNS-NotificationStatus:channelThrottled).                                                                                                                                     |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.dropped**(count)                     | The notification was dropped because the ChannelURI in the registration is throttled (X-WNS-NotificationStatus: dropped but not X-WNS-DeviceConnectionStatus: disconnected).                                                                                                               |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.expiredchannel**(count)              | The count of pushes that failed because the ChannelURI is expired (WNS status: 410 Gone).                                                                                                                                                                                                  |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.invalidcredentials**(count)          | The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked. (Windows Live does not recognize the credentials).                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.invalidnotificationformat**(count)   | The format of the notification is invalid (WNS status: 400). Note that WNS does not reject all invalid payloads.                                                                                                                                                                           |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.invalidnotificationsize**(count)     | The notification payload is too large (WNS status: 413).                                                                                                                                                                                                                                   |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.invalidtoken**(count)                | The token provided to WNS is not valid (WNS status: 401 Unauthorized).                                                                                                                                                                                                                     |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.pnserror**(count)                    | Notification not delivered because of errors communicating with WNS.                                                                                                                                                                                                                       |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.success**(count)                     | The count of all successful notifications.                                                                                                                                                                                                                                                 |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.throttled**(count)                   | The count of pushes that failed because WNS is throttling this app (WNS status: 406 Not Acceptable).                                                                                                                                                                                       |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.tokenproviderunreachable**(count)    | Windows Live is not reachable.                                                                                                                                                                                                                                                             |
| **azure.notificationhubs_namespaces_notificationhubs.outgoing.wns.wrongtoken**(count)                  | The token provided to WNS is valid but for another application (WNS status: 403 Forbidden). This can happen if the ChannelURI in the registration is associated with another app. Check that the client app is associated with the same app whose credentials are in the notification hub. |
| **azure.notificationhubs_namespaces_notificationhubs.registration.all**(count)                         | The count of all successful registration operations (creations updates queries and deletions).*Shown as operation*                                                                                                                                                                         |
| **azure.notificationhubs_namespaces_notificationhubs.registration.create**(count)                      | The count of all successful registration creations.                                                                                                                                                                                                                                        |
| **azure.notificationhubs_namespaces_notificationhubs.registration.delete**(count)                      | The count of all successful registration deletions.                                                                                                                                                                                                                                        |
| **azure.notificationhubs_namespaces_notificationhubs.registration.get**(count)                         | The count of all successful registration queries.*Shown as query*                                                                                                                                                                                                                          |
| **azure.notificationhubs_namespaces_notificationhubs.registration.update**(count)                      | The count of all successful registration updates.*Shown as update*                                                                                                                                                                                                                         |
| **azure.notificationhubs_namespaces_notificationhubs.scheduled.pending**(count)                        | Pending Scheduled Notifications                                                                                                                                                                                                                                                            |
| **azure.notificationhubs_namespaces.count**(gauge)                                                      | Count of Azure Notification Hubs integration                                                                                                                                                                                                                                               |

### Events{% #events %}

The Azure Notification Hubs integration does not include any events.

### Service Checks{% #service-checks %}

The Azure Notification Hubs integration does not include any service checks.

## Troubleshooting{% #troubleshooting %}

Need help? Contact [Datadog support](https://docs.datadoghq.com/help/).
