Skip to main content

Azure monitor

Reading time: 0 minute(s) (0 words)

Azure Monitor is a monitoring solution that collects and aggregates data for further interpretation and response.

Nobl9 integration with Azure Monitor supports collecting Azure Monitor metrics, including Application Insights. With it, Nobl9 users can retrieve metrics and build SLOs based on them.

Azure Monitor parameters and supported features in Nobl9
General support:
Release channel: Beta
Connection method: Agent, Direct
Replay and SLI Analyzer: Historical data limit 30 days
Event logs: Supported
Query checker: Not supported
Query parameters retrieval: Supported
Timestamp cache persistence: Supported

Query parameters:
Query interval: 1 min
Query delay: 5 min
Jitter: 15 sec
Timeout: 60 sec

Agent details and minimum required versions for supported features:
Plugin name: n9azure_monitor
Query delay environment variable: AZURE_MONITOR_QUERY_DELAY
Replay and SLI Analyzer: 0.69.0-beta01
Query parameters retrieval: 0.71.0-beta
Timestamp cache persistence: 0.69.0-beta01

Additional notes:
Support for Azure Monitor Metrics and Azure Monitor Logs
Learn more Opens in a new tab

caution

Ensure the metrics you use support a one-minute (1-minute) aggregation window (time grain).

Authentication

To set up the Nobl9 direct connection, you must provide your Azure application's client ID and client secret. For this:

  1. Register an Azure application.
  2. Assign your Azure application the Monitoring Reader role for the Azure resources you want to read metrics from.
    This role meets the Nobl9 requirements for metric collection.
  3. Grant your application the Microsoft.Resources/subscriptions/resourceGroups/read permission.
    It enables resource and metric autocompletion during SLO creation.

You can also use sloctl. This way, you can configure SLOs for your Azure Cloud application without the resource and metric autocompletion.

Azure IAM

We recommend granting the Monitoring Reader role on the subscription or resource group level rather than a specific resource. A broader scope provides a more comprehensive choice of subscriptions, resource groups, resources, and metrics in the Nobl9 platform.

Adding Azure Monitor as a data source

You can add the Azure Monitor data source using the direct or agent connection methods.

Direct connection method

Nobl9 Web

  1. Navigate to Integrations > Sources.
  2. Click .
  3. Click the required Source button.
  4. Choose Direct.
release channel
Currently, Nobl9 integration with Azure Monitor is available in the Beta release channel only.
  1. Enter your Azure Tenant ID.
    It is an 8-4-4-4-12-character code containing digits 0-9 and letters Aa-Ff.

  2. Enter your Microsoft Entra Client ID and Client Secret.

Azure application ID

To retrieve Azure application's client ID and client secret, find your required application under App Registrations within the Azure Portal.

  1. Select a Project.
    Specifying a project is helpful when multiple users are spread across multiple teams or projects. When the Project field is left blank, Nobl9 uses the default project.
  2. Enter a Display Name.
    You can enter a user-friendly name with spaces in this field.
  3. Enter a Name.
    The name is mandatory and can only contain lowercase, alphanumeric characters, and dashes (for example, my-project-1). Nobl9 duplicates the display name here, transforming it into the supported format, but you can edit the result.
  4. Enter a Description.
    Here you can add details such as who is responsible for the integration (team/owner) and the purpose of creating it.
  5. Specify the Query delay to set a customized delay for queries when pulling the data from the data source.
    • The default value in Azure Monitor integration for Query delay is 5 minutes.
    info
    Changing the Query delay may affect your SLI data. For more details, check the Query delay documentation.
  6. Enter a Maximum Period for Historical Data Retrieval.
    • This value defines how far back in the past your data will be retrieved when replaying your SLO based on this data source.
    • The maximum period value depends on the data source.
      Find the maximum value for your data source.
    • A greater period can extend the loading time when creating an SLO.
      • The value must be a positive integer.
  7. Enter a Default Period for Historical Data Retrieval.
    • It is used by SLOs connected to this data source.
    • The value must be a positive integer or 0.
    • By default, this value is set to 0. When you set it to >0, you will create SLOs with Replay.
  8. Click Add Data Source.

sloctl

  1. Create a YAML definition to set up a direct connection with Azure Monitor. For this, refer to the following example:
YAML definition for the Direct connection method
apiVersion: n9/v1alpha
kind: Direct
metadata:
name: azure-monitor
displayName: Azure Monitor Direct
project: default
spec:
description: Example Azure Monitor Direct
releaseChannel: beta
azureMonitor:
tenantId: 5cdecca3-c2c5-4072-89dd-5555faf05202
clientId: 70747025-9367-41a5-98f1-59b18b5793c3
clientSecret: "[secret]"
historicalDataRetrieval:
maxDuration:
value: 30
unit: Day
defaultDuration:
value: 15
unit: Day
triggeredBySloCreation:
value: 15
unit: Day
triggeredBySloEdit:
value: 15
unit: Day
queryDelay:
value: 6
unit: Minute
FieldTypeDescription
queryDelay.unit
mandatory
enumSpecifies the unit for the query delay. Possible values: Second | Minute.
• Check query delay documentation for default unit of query delay for each source.
queryDelay.value
mandatory
numericSpecifies the value for the query delay.
• Must be a number less than 1440 minutes (24 hours).
• Check query delay documentation for default unit of query delay for each source.
logCollectionEnabled
optional
booleanOptional. Defaults to false. Set to true if you'd like your direct to collect event logs. Contact us to activate it.
releaseChannel
mandatory
enumSpecifies the release channel. Accepted values: beta | stable.
Source-specific fields
azureMonitor.tenantID
mandatory
string, secretThe identifier of your Microsoft Entra tenant.
azureMonitor.clientID
mandatory
stringSee authentication section above for more details.
azureMonitor.clientSecret
mandatory
stringSee authentication section above for more details.
Replay-related fields
historicalDataRetrieval
optional
n/aOptional structure related to configuration related to Replay.
❗ Use only with supported sources.
• If omitted, Nobl9 uses the default values of value: 0 and unit: Day for maxDuration and defaultDuration.
maxDuration.value
optional
numericSpecifies the maximum duration for historical data retrieval. Must be integer ≥ 0. See Replay documentation for values of max duration per data source.
maxDuration.unit
optional
enumSpecifies the unit for the maximum duration of historical data retrieval. Accepted values: Minute | Hour | Day.
defaultDuration.value
optional
numericSpecifies the default duration for historical data retrieval. Must be integer ≥ 0 and maxDuration.
defaultDuration.unit
optional
enumSpecifies the unit for the default duration of historical data retrieval. Accepted values: Minute | Hour | Day.
  1. Apply your YAML definition using the sloctl apply command.

Agent connection method

Nobl9 Web

  1. Navigate to Integrations > Sources.
  2. Click .
  3. Click the required Source button.
  4. Choose Agent.
release channel
Currently, Nobl9 integration with Azure Monitor is available in the Beta release channel only.
  1. Enter your Azure Tenant ID.
    It is an 8-4-4-4-12-character code containing digits 0-9 and letters Aa-Ff.
  1. Select a Project.
    Specifying a project is helpful when multiple users are spread across multiple teams or projects. When the Project field is left blank, Nobl9 uses the default project.
  2. Enter a Display Name.
    You can enter a user-friendly name with spaces in this field.
  3. Enter a Name.
    The name is mandatory and can only contain lowercase, alphanumeric characters, and dashes (for example, my-project-1). Nobl9 duplicates the display name here, transforming it into the supported format, but you can edit the result.
  4. Enter a Description.
    Here you can add details such as who is responsible for the integration (team/owner) and the purpose of creating it.
  5. Specify the Query delay to set a customized delay for queries when pulling the data from the data source.
    • The default value in Azure Monitor integration for Query delay is 5 minutes.
    info
    Changing the Query delay may affect your SLI data. For more details, check the Query delay documentation.
  6. Enter a Maximum Period for Historical Data Retrieval.
    • This value defines how far back in the past your data will be retrieved when replaying your SLO based on this data source.
    • The maximum period value depends on the data source.
      Find the maximum value for your data source.
    • A greater period can extend the loading time when creating an SLO.
      • The value must be a positive integer.
  7. Enter a Default Period for Historical Data Retrieval.
    • It is used by SLOs connected to this data source.
    • The value must be a positive integer or 0.
    • By default, this value is set to 0. When you set it to >0, you will create SLOs with Replay.
  8. Click Add Data Source.
  9. Deploy your agent in a Kubernetes cluster or Docker container.

sloctl

  1. Create a YAML definition to set up an agent connection with Azure Monitor. For this, refer to the following example:
YAML definition for the agent connection method
apiVersion: n9/v1alpha
kind: Agent
metadata:
name: azure-monitor
displayName: Azure Monitor Agent
project: default
spec:
description: Example Azure Monitor Agent
releaseChannel: beta
azureMonitor:
tenantId: 5cdecca3-c2c5-4072-89dd-5555faf05202
historicalDataRetrieval:
maxDuration:
value: 30
unit: Day
defaultDuration:
value: 15
unit: Day
queryDelay:
value: 6
unit: Minute
FieldTypeDescription
queryDelay.unit
mandatory
enumSpecifies the unit for the query delay. Possible values: Second | Minute.
• Check query delay documentation for default unit of query delay for each source.
queryDelay.value
mandatory
numericSpecifies the value for the query delay.
• Must be a number less than 1440 minutes (24 hours).
• Check query delay documentation for default unit of query delay for each source.
releaseChannel
mandatory
enumSpecifies the release channel. Accepted values: beta | stable.
Source-specific fields
azureMonitor.tennantID
mandatory
string, secretIt's the identifier of your Microsoft Entra tenant.
Replay-related fields
historicalDataRetrieval
optional
n/aOptional structure related to configuration related to Replay.
❗ Use only with supported sources.
• If omitted, Nobl9 uses the default values of value: 0 and unit: Day for maxDuration and defaultDuration.
maxDuration.value
optional
numericSpecifies the maximum duration for historical data retrieval. Must be integer ≥ 0. See Replay documentation for values of max duration per data source.
maxDuration.unit
optional
enumSpecifies the unit for the maximum duration of historical data retrieval. Accepted values: Minute | Hour | Day.
defaultDuration.value
optional
numericSpecifies the default duration for historical data retrieval. Must be integer ≥ 0 and maxDuration.
defaultDuration.unit
optional
enumSpecifies the unit for the default duration of historical data retrieval. Accepted values: Minute | Hour | Day.
  1. Apply your YAML definition using the sloctl apply command.
  2. Deploy your agent in a Kubernetes cluster or Docker container.
For a more in-depth look, consult additional resources: