Kqlmagic を使用したノートブックの作成と実行

Kqlmagic は、 Azure Data Studio ノートブック で Python カーネルの機能を拡張するコマンドです。 Python と Kusto クエリ言語 (KQL) を組み合わせて、render コマンドに統合された豊富な Plotly ライブラリを使ってデータのクエリと視覚化を実行できます。 Kqlmagic を使用すると、ノートブック、データ分析、Python の豊富な機能の利点がすべて同じ場所にもたらされます。 Kqlmagic でサポートされているデータ ソースには、 Azure Data ExplorerApplication InsightsAzure Monitor ログ があります。

この記事では、Kqlmagic 拡張機能を Azure Data Explorer クラスター、Application Insights ログ、および Azure Monitor ログに使用して、Azure Data Studio でノートブックを作成および実行する方法について説明します。

前提条件

ノートブックに Kqlmagic をインストールしてセットアップする

このセクションのステップはすべて Azure Data Studio ノートブック内で実行されます。

  1. 新しいノートブックを作成し、 [カーネル][Python 3] に変更します。

    Screenshot of a new notebook.

  2. パッケージを更新する必要がある場合は、Python パッケージをアップグレードするように求められることがあります。

    Screenshot of the result - yes.

  3. Kqlmagic をインストールします。

    import sys
    !{sys.executable} -m pip install Kqlmagic --no-cache-dir --upgrade
    

    インストールされていることを確認します。

    import sys
    !{sys.executable} -m pip list
    

    Screenshot of the list.

  4. Kqlmagic を読み込みます。

    %reload_ext Kqlmagic
    

    Note

    このステップが失敗した場合は、ファイルを閉じて再度開きます。

    Screenshot of the load the Kqlmagic extension.

  5. Kqlmagic が正しく読み込まれているかどうかをテストするには、ヘルプ ドキュメントを参照するか、バージョンを確認します。

    %kql --help "help"
    

    注意

    Samples@help がパスワードの入力を求めている場合は、空白のままにして、Enter キーを押します。

    Screenshot of help.

    インストールされている Kqlmagic のバージョンを確認するには、次のコマンドを実行します。

    %kql --version
    

Kqlmagic と Azure Data Explorer クラスター

このセクションでは、Azure Data Explorer クラスターで Kqlmagic を使用してデータ分析を実行する方法について説明します。

Azure Data Explorer に対して Kqlmagic を読み込んで認証する

注意

Azure Data Studio で新しいノートブックを作成するたびに、Kqlmagic 拡張機能を読み込む必要があります。

  1. [カーネル][Python 3] に設定されていることを確認します。

    Screenshot of the kernel change.

  2. Kqlmagic を読み込みます。

    %reload_ext Kqlmagic
    

    Screenshot of the load the Kqlmagic extension.

  3. クラスターに接続し、認証を行います。

    %kql azureDataExplorer://code;cluster='help';database='Samples'
    

    Note

    独自の ADX クラスターを使用している場合は、次のように、接続文字列にリージョンを含める必要があります。

    %kql azuredataexplorer://code;cluster='mycluster.westus';database='mykustodb' デバイスのサインインを使用して認証します。 出力からコードをコピーし、認証を選択します。これにより、コードを貼り付ける必要があるブラウザーが開きます。 正常に認証されたら、Azure Data Studio に戻って、スクリプトの残りの部分を続行できます。

    Screenshot of the Azure Data Explorer authentication.

Azure Data Explorer のクエリと視覚化

render 演算子を使ってデータのクエリを実行し、plotly ライブラリを使ってデータを視覚化します。 このクエリと視覚化では、ネイティブの KQL を使用する統合されたエクスペリエンスが提供されます。

  1. 状態と頻度別に上位 10 個のイベントを分析します。

    %kql StormEvents | summarize count() by State | sort by count_ | limit 10
    

    Kusto クエリ言語 (KQL) に慣れている場合は、%kql の後にクエリを入力できます。

    Screenshot of the analyze storm events.

  2. タイムライン グラフの視覚化:

    %kql StormEvents \
    | summarize event_count=count() by bin(StartTime, 1d) \
    | render timechart title= 'Daily Storm Events'
    

    Screenshot of a time chart.

  3. %%kql を使用した複数行のクエリ サンプル。

    %%kql
    StormEvents
    | summarize count() by State
    | sort by count_
    | limit 10
    | render columnchart title='Top 10 States by Storm Event count'
    

    Screenshot of a multiline Query sample.

Kqlmagic と Application Insights

Application Insights に対して Kqlmagic を読み込んで認証する

  1. [カーネル][Python 3] に設定されていることを確認します。

    Screenshot of a kernel.

  2. Kqlmagic を読み込みます。

    %reload_ext Kqlmagic
    

    Screenshot of loading the Kqlmagic extension.

    Note

    Azure Data Studio で新しいノートブックを作成するたびに、Kqlmagic 拡張機能を読み込む必要があります。

  3. 接続して認証します。

    まず、Application Insights リソースの API キーを生成する必要があります。 次に、アプリケーション ID と API キーを使用して、ノートブックから Application Insights に接続します。

    %kql appinsights://appid='DEMO_APP';appkey='DEMO_KEY'
    

Application Insights のクエリと視覚化

render 演算子を使ってデータのクエリを実行し、plotly ライブラリを使ってデータを視覚化します。 このクエリと視覚化では、ネイティブの KQL を使用する統合されたエクスペリエンスが提供されます。

  1. ページ ビューの表示:

    %%kql
    pageViews
    | limit 10
    

    Screenshot of page views.

    Note

    特定の日付にズームインするには、マウスを使用してグラフの領域上をドラッグすします。

  2. タイムライン グラフでのページ ビューの表示:

    %%kql
    pageViews
    | summarize event_count=count() by name, bin(timestamp, 1d)
    | render timechart title= 'Daily Page Views'
    

    Screenshot of the timeline chart.

Kqlmagic と Azure Monitor ログ

Azure Monitor ログに対して Kqlmagic を読み込んで認証する

  1. [カーネル][Python 3] に設定されていることを確認します。

    Screenshot of the change.

  2. Kqlmagic を読み込みます。

    %reload_ext Kqlmagic
    

    Screenshot showing to load the Kqlmagic extension.

    Note

    Azure Data Studio で新しいノートブックを作成するたびに、Kqlmagic 拡張機能を読み込む必要があります。

  3. 接続と認証:

    %kql loganalytics://workspace='DEMO_WORKSPACE';appkey='DEMO_KEY';alias='myworkspace'
    

    Screenshot of the log analytics authentication.

Azure Monitor ログのクエリと視覚化

render 演算子を使ってデータのクエリを実行し、plotly ライブラリを使ってデータを視覚化します。 このクエリと視覚化では、ネイティブの KQL を使用する統合されたエクスペリエンスが提供されます。

  1. タイムライン グラフの表示:

    %%kql
    KubeNodeInventory
    | summarize event_count=count() by Status, bin(TimeGenerated, 1d)
    | render timechart title= 'Daily Kubernetes Nodes'
    

    Screenshot showing the Log Analytics Daily Kubernetes Nodes timechart.

次のステップ

ノートブックと Kqlmagic についてさらに学習します: