Azure Push

Azure Push

Certified

Push metrics to Azure Monitor

Posts custom metrics payloads to the Metrics Ingestion endpoint using Azure AD authentication. Requires regional endpoint and DCR ingestion path.

yaml
type: io.kestra.plugin.azure.monitoring.Push

Push a custom metric to Azure Monitor via a Data Collection Rule

yaml
id: azure_monitor_push
namespace: company.team
tasks:
  - id: push
    type: io.kestra.plugin.azure.monitoring.Push
    tenantId: "{{ secret('AZURE_TENANT_ID') }}"
    clientId: "{{ secret('AZURE_CLIENT_ID') }}"
    clientSecret: "{{ secret('AZURE_CLIENT_SECRET') }}"
    endpoint: "https://westeurope.metrics.monitor.azure.com"
    path: "/dataCollectionRules/dcr-xxxxxxxxxxxxxxxx/streams/Custom-MyStream"
    metrics:
      time: "2024-01-01T00:00:00Z"
      data:
        baseData:
          metric: "OrdersProcessed"
          namespace: "MyCompany.Orders"
          dimNames:
            - "Environment"
          series:
            - dimValues:
                - "Production"
              sum: 100
              count: 5
Properties

Azure Monitor regional endpoint

Regional metrics endpoint, e.g. https://westeurope.metrics.monitor.azure.com

Metric data body

JSON payload formatted for Azure Monitor ingestion API

DCR ingestion path

Path portion of the Data Collection Rule ingestion URL (e.g., /dataCollectionRules/{id}/streams/{stream})

Azure AD tenant ID (GUID)

Client ID of the Azure AD application

Application (client) ID used for service principal authentication.

Client secret for the Azure AD application

Secret value associated with the client ID; store in a Kestra secret.

PEM-encoded certificate content for client authentication

PEM text for certificate-based auth; alternative to clientSecret.

Reference (ref) of the pluginDefaults to apply to this task.

Ingestion response body

Raw JSON returned by the ingestion API