Azure Push

Azure Push

Certified

Push a record to Azure Monitor

Sends a record to a Log Analytics table through the Logs Ingestion API, using a Data Collection Rule and Azure AD authentication. The record must match the schema the rule declares for the target stream.

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

Push a record 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://my-dce-a1b2.westeurope.ingest.monitor.azure.com"
    path: "/dataCollectionRules/dcr-xxxxxxxxxxxxxxxx/streams/Custom-MyStream"
    metrics:
      TimeGenerated: "2024-01-01T00:00:00Z"
      Computer: "worker-01"
      AdditionalContext: "orders processed"
Properties

Azure Monitor regional endpoint

For queries, the regional metrics endpoint, e.g. https://westeurope.metrics.monitor.azure.com. For ingestion, the Data Collection Endpoint, e.g. https://my-dce-a1b2.westeurope.ingest.monitor.azure.com

Record to ingest

JSON object matching the schema the Data Collection Rule declares for the target stream

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.

Ingestion response body

Null for Data Collection Rule paths, the Logs Ingestion API returns no content. Otherwise the raw response body