:py:mod:`airflow.providers.microsoft.azure.operators.adx`
=========================================================

.. py:module:: airflow.providers.microsoft.azure.operators.adx

.. autoapi-nested-parse::

   This module contains Azure Data Explorer operators



Module Contents
---------------

Classes
~~~~~~~

.. autoapisummary::

   airflow.providers.microsoft.azure.operators.adx.AzureDataExplorerQueryOperator




.. py:class:: AzureDataExplorerQueryOperator(*, query, database, options = None, azure_data_explorer_conn_id = 'azure_data_explorer_default', **kwargs)

   Bases: :py:obj:`airflow.models.BaseOperator`

   Operator for querying Azure Data Explorer (Kusto).

   :param query: KQL query to run (templated).
   :param database: Database to run the query on (templated).
   :param options: Optional query options. See:
     https://docs.microsoft.com/en-us/azure/kusto/api/netfx/request-properties#list-of-clientrequestproperties
   :param azure_data_explorer_conn_id: Reference to the
       :ref:`Azure Data Explorer connection<howto/connection:adx>`.

   .. py:attribute:: ui_color
      :annotation: = #00a1f2

      

   .. py:attribute:: template_fields
      :annotation: :Sequence[str] = ['query', 'database']

      

   .. py:attribute:: template_ext
      :annotation: :Sequence[str] = ['.kql']

      

   .. py:method:: get_hook(self)

      Returns new instance of AzureDataExplorerHook


   .. py:method:: execute(self, context)

      Run KQL Query on Azure Data Explorer (Kusto).
      Returns `PrimaryResult` of Query v2 HTTP response contents
      (https://docs.microsoft.com/en-us/azure/kusto/api/rest/response2)



