SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
Copyright © Tokyo Electron Device LTD. All Rights Reserved.
解き明かす未知の可能性
美しいクエリ
~ Kusto入門編 ~
2023年7月17日
渡邊晶
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 2
Kustoって
Kusto
Kusto Query Language
KQL
※ ジャック・クストーは、フランスの海洋学者・地球科学者。
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 3
Kusto(KQL)とは
Azureサービスのためのクエリ言語
 読みやすく書きやすい設計
 大量のログ・テレメータデータに対して高速に検索
 Azureの運用・セキュリティ・ガバナンスツールで利用され、Azure運用に必須
 ビッグデータ処理において、Azure Data Explorerとしても知られている
Kustoは強力なツール
Azure運用 セキュリティ管理 データ利活用
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 4
Kusto(KQL)とAzureの関係
Kusto(KQL)を利用しているAzureサービス
 Azure Resource Graph
 Application Insights
 Log Analytics
 Microsoft Sentinel
 Microsoft Defender
Azure Data Explorer
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 5
Kustoの構文例
SecurityEvent
| where TimeGenerated >ago(1h)
| where EventID ==4624
| summarize count() by Account
| order by Account asc
| project Account, SuccessfulLogons =count_
Table
Pipe
Filter
Data
aggregation
Order
Data
Modify
Columns
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 6
Kustoクエリの利用環境 SigninLogs
| where TimeGenerated > ago(1h)
| where Location =='JP'
| summarize count() by Identity
| order by Identity asc
| project Identity, SuccessfulLogons=count_
クリエ
Table一覧表
出力結果
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 7
Kustoクリエの利用するため
ログ・データ分析するため7つのオペレーション
1. レコード数を調べる
2. スキーマを表示
3. サンプルレコードの表示
4. フィルターをかける
5. Summarize 演算子の利用
6. Project と Extend演算子の利用
7. データの可視化
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 8
1. レコード数を調べる
TABLENAME
|count
調査対象となっているテーブルの名称
テーブル(SecurityEvent)の
レコード数の結果
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 9
2. スキーマを表示
TABLENAME
|getschema
調査対象となっているテーブルの名称
スキーマの結果
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 10
3. サンプルレコードの表示
TABLENAME
|take 3
調査対象となっているテーブルの名称
レコードの表示結果
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 11
4. フィルターをかける (1/2)
TABLENAME
|where 条件#1
|where 条件#2
調査対象となっているテーブルの名称
SecurityEvent
| where TimeGenerated > ago(1d)
| where Computer == 'CH-AMAVM'
Kustoクエリサンプル
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 12
4. フィルターをかける (2/2)
レコードの表示結果
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 13
5. Summarize演算子の利用 (1/2)
TABLENAME
| Summarize count by 列名#1
調査対象となっているテーブルの名称
by の後ろに指定した列の個数を数える
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 14
5. Summarize演算子の利用 (2/2)
TABLENAME
| Summarize countif ( 列名 ==xxx)
調査対象となっているテーブルの名称
条件にある列の個数を数える
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 15
6. Project と Extend演算子の利用 (1/2)
TABLENAME
| Extend 列名 = XXX
| Project 列名#1,列名#2
Kustoクエリサンプル
SecurityEvent
| Extend Time = TimeGenerated
| Project Time, Computer, EventID,Process
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 16
6. Project と Extend演算子の利用 (2/2)
表示結果
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 17
7. データの可視化 (1/3)
TABLENAME
| Render XXX
※ render 演算子はクエリの最後の演算子である必要がある
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 18
7. データの可視化 (2/3)
表示結果
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 19
7. データの可視化 (3/3)
表示結果
Kustoクエリ
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 20
Demo
 https://clipchamp.com/watch/Xa2KjdqjGPt
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 21
Kustoクエリを利用できるツール
 Azure Log Analytics
 Application Insights
 .NETやJava等の言語用の SDK も提供され、コード内で KQL を組み立てて実行可能
 Azure Data Explorer (ADX)
 Kusto.Explorer
 Azure Data Studio
すでにログが収集され、実際にクエリを使える環境
https://aka.ms/LADemo
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 22
OpenAI(ChatGPT)を使ってKustoを書きましょう
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 23
データから未知の可能性を発見
解き明かす未知の可能性
DX推進
脅威検知
システム保全
Copyright © Tokyo Electron Device LTD. All Rights Reserved. 24
【お問い合わせ】
東京エレクトロン デバイス株式会社
クラウドIoTカンパニー エッジクラウドソリューション部
URL: https://esg.teldevice.co.jp/iot/
Mail: esg@teldevice.co.jp
TEL: 045-443-4021

Contenu connexe

Tendances

Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり
Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり
Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり Rakuten Group, Inc.
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦いマイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦いota42y
 
Cognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようCognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようShuto Suzuki
 
C# における Redis 徹底活用
C# における Redis 徹底活用C# における Redis 徹底活用
C# における Redis 徹底活用Takaaki Suzuki
 
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020onozaty
 
unity sprite animation・prefab (ハルフル)
unity sprite animation・prefab (ハルフル)unity sprite animation・prefab (ハルフル)
unity sprite animation・prefab (ハルフル)Atelier Frameworks
 
10分で分かるRパッケージの作り方
10分で分かるRパッケージの作り方10分で分かるRパッケージの作り方
10分で分かるRパッケージの作り方Yohei Sato
 
業務システムとマイクロサービス
業務システムとマイクロサービス業務システムとマイクロサービス
業務システムとマイクロサービス土岐 孝平
 
Rdraモデリングをしよう
RdraモデリングをしようRdraモデリングをしよう
RdraモデリングをしようZenji Kanzaki
 
Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Katsunori Kanda
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームKouhei Sutou
 
Airflowで真面目にjob管理
Airflowで真面目にjob管理Airflowで真面目にjob管理
Airflowで真面目にjob管理msssgur
 
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)NTT DATA Technology & Innovation
 
Kantocv 2-1-calibration publish
Kantocv 2-1-calibration publishKantocv 2-1-calibration publish
Kantocv 2-1-calibration publishtomoaki0705
 
Nextcloud 16,15の新機能とOnline Office機能
Nextcloud 16,15の新機能とOnline Office機能Nextcloud 16,15の新機能とOnline Office機能
Nextcloud 16,15の新機能とOnline Office機能Tetsurou Yano
 
How to let them in house of quality
How to let them in house of qualityHow to let them in house of quality
How to let them in house of qualityTakahiro Toku
 
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Satoshi Kubo
 
Eclipseデバッガを活用するための31のtips
Eclipseデバッガを活用するための31のtipsEclipseデバッガを活用するための31のtips
Eclipseデバッガを活用するための31のtipsHiroki Kondo
 
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方kwatch
 

Tendances (20)

Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり
Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり
Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦いマイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
 
Cognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しようCognitive Complexity でコードの複雑さを定量的に計測しよう
Cognitive Complexity でコードの複雑さを定量的に計測しよう
 
C# における Redis 徹底活用
C# における Redis 徹底活用C# における Redis 徹底活用
C# における Redis 徹底活用
 
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
 
unity sprite animation・prefab (ハルフル)
unity sprite animation・prefab (ハルフル)unity sprite animation・prefab (ハルフル)
unity sprite animation・prefab (ハルフル)
 
10分で分かるRパッケージの作り方
10分で分かるRパッケージの作り方10分で分かるRパッケージの作り方
10分で分かるRパッケージの作り方
 
業務システムとマイクロサービス
業務システムとマイクロサービス業務システムとマイクロサービス
業務システムとマイクロサービス
 
Rdraモデリングをしよう
RdraモデリングをしようRdraモデリングをしよう
Rdraモデリングをしよう
 
Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話
 
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォームApache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
 
Airflowで真面目にjob管理
Airflowで真面目にjob管理Airflowで真面目にjob管理
Airflowで真面目にjob管理
 
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
 
Kantocv 2-1-calibration publish
Kantocv 2-1-calibration publishKantocv 2-1-calibration publish
Kantocv 2-1-calibration publish
 
Nextcloud 16,15の新機能とOnline Office機能
Nextcloud 16,15の新機能とOnline Office機能Nextcloud 16,15の新機能とOnline Office機能
Nextcloud 16,15の新機能とOnline Office機能
 
How to let them in house of quality
How to let them in house of qualityHow to let them in house of quality
How to let them in house of quality
 
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
 
Eclipseデバッガを活用するための31のtips
Eclipseデバッガを活用するための31のtipsEclipseデバッガを活用するための31のtips
Eclipseデバッガを活用するための31のtips
 
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
Nippondanji氏に怒られても仕方ない、配列型とJSON型の使い方
 

Similaire à Kustoの入門編.pdf

実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...NTT DATA Technology & Innovation
 
20130329 rtm3
20130329 rtm320130329 rtm3
20130329 rtm3openrtm
 
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...NTT DATA Technology & Innovation
 
2018年01月27日 Keras/TesorFlowによるディープラーニング事始め
2018年01月27日 Keras/TesorFlowによるディープラーニング事始め2018年01月27日 Keras/TesorFlowによるディープラーニング事始め
2018年01月27日 Keras/TesorFlowによるディープラーニング事始めaitc_jp
 
2010 in-depth-v11
2010 in-depth-v112010 in-depth-v11
2010 in-depth-v11kmiyako
 
Robomec2014 rtm講習会第1部(その2)
Robomec2014 rtm講習会第1部(その2)Robomec2014 rtm講習会第1部(その2)
Robomec2014 rtm講習会第1部(その2)openrtm
 
インメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギインメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギMasaki Yamakawa
 
TOPPERSプロジェクト紹介 OSC2016京都
TOPPERSプロジェクト紹介 OSC2016京都TOPPERSプロジェクト紹介 OSC2016京都
TOPPERSプロジェクト紹介 OSC2016京都Takuya Azumi
 
OCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCPOCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCPTetsuya Sodo
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)NTT DATA Technology & Innovation
 
KubeCon EU報告(ランタイム関連,イメージ関連)
KubeCon EU報告(ランタイム関連,イメージ関連)KubeCon EU報告(ランタイム関連,イメージ関連)
KubeCon EU報告(ランタイム関連,イメージ関連)Akihiro Suda
 
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~Takanori Suzuki
 
Eucalyptus infra technology
Eucalyptus infra technologyEucalyptus infra technology
Eucalyptus infra technologyEtsuji Nakai
 
Dockerコミュニティ近況
Dockerコミュニティ近況Dockerコミュニティ近況
Dockerコミュニティ近況Akihiro Suda
 
Osc tokyo20141019-last
Osc tokyo20141019-lastOsc tokyo20141019-last
Osc tokyo20141019-lastKiyoshi Ogawa
 
iREX2015 RTM講習会
iREX2015 RTM講習会iREX2015 RTM講習会
iREX2015 RTM講習会openrtm
 

Similaire à Kustoの入門編.pdf (20)

実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
 
20130329 rtm3
20130329 rtm320130329 rtm3
20130329 rtm3
 
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
 
2018年01月27日 Keras/TesorFlowによるディープラーニング事始め
2018年01月27日 Keras/TesorFlowによるディープラーニング事始め2018年01月27日 Keras/TesorFlowによるディープラーニング事始め
2018年01月27日 Keras/TesorFlowによるディープラーニング事始め
 
2010 in-depth-v11
2010 in-depth-v112010 in-depth-v11
2010 in-depth-v11
 
Robomec2014 rtm講習会第1部(その2)
Robomec2014 rtm講習会第1部(その2)Robomec2014 rtm講習会第1部(その2)
Robomec2014 rtm講習会第1部(その2)
 
インメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギインメモリーで超高速処理を実現する場合のカギ
インメモリーで超高速処理を実現する場合のカギ
 
TOPPERSプロジェクト紹介 OSC2016京都
TOPPERSプロジェクト紹介 OSC2016京都TOPPERSプロジェクト紹介 OSC2016京都
TOPPERSプロジェクト紹介 OSC2016京都
 
Storm×couchbase serverで作るリアルタイム解析基盤
Storm×couchbase serverで作るリアルタイム解析基盤Storm×couchbase serverで作るリアルタイム解析基盤
Storm×couchbase serverで作るリアルタイム解析基盤
 
OCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCPOCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCP
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
 
KubeCon EU報告(ランタイム関連,イメージ関連)
KubeCon EU報告(ランタイム関連,イメージ関連)KubeCon EU報告(ランタイム関連,イメージ関連)
KubeCon EU報告(ランタイム関連,イメージ関連)
 
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~
デブサミ2014-Stormで実現するビッグデータのリアルタイム処理プラットフォーム ~ストリームデータ処理から機械学習まで~
 
RICC update meet34
RICC update meet34RICC update meet34
RICC update meet34
 
Eucalyptus infra technology
Eucalyptus infra technologyEucalyptus infra technology
Eucalyptus infra technology
 
Dockerコミュニティ近況
Dockerコミュニティ近況Dockerコミュニティ近況
Dockerコミュニティ近況
 
Upstream University
Upstream UniversityUpstream University
Upstream University
 
Aerospike deep dive LDTs
Aerospike deep dive LDTsAerospike deep dive LDTs
Aerospike deep dive LDTs
 
Osc tokyo20141019-last
Osc tokyo20141019-lastOsc tokyo20141019-last
Osc tokyo20141019-last
 
iREX2015 RTM講習会
iREX2015 RTM講習会iREX2015 RTM講習会
iREX2015 RTM講習会
 

Kustoの入門編.pdf

  • 1. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 解き明かす未知の可能性 美しいクエリ ~ Kusto入門編 ~ 2023年7月17日 渡邊晶
  • 2. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 2 Kustoって Kusto Kusto Query Language KQL ※ ジャック・クストーは、フランスの海洋学者・地球科学者。
  • 3. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 3 Kusto(KQL)とは Azureサービスのためのクエリ言語  読みやすく書きやすい設計  大量のログ・テレメータデータに対して高速に検索  Azureの運用・セキュリティ・ガバナンスツールで利用され、Azure運用に必須  ビッグデータ処理において、Azure Data Explorerとしても知られている Kustoは強力なツール Azure運用 セキュリティ管理 データ利活用
  • 4. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 4 Kusto(KQL)とAzureの関係 Kusto(KQL)を利用しているAzureサービス  Azure Resource Graph  Application Insights  Log Analytics  Microsoft Sentinel  Microsoft Defender Azure Data Explorer
  • 5. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 5 Kustoの構文例 SecurityEvent | where TimeGenerated >ago(1h) | where EventID ==4624 | summarize count() by Account | order by Account asc | project Account, SuccessfulLogons =count_ Table Pipe Filter Data aggregation Order Data Modify Columns
  • 6. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 6 Kustoクエリの利用環境 SigninLogs | where TimeGenerated > ago(1h) | where Location =='JP' | summarize count() by Identity | order by Identity asc | project Identity, SuccessfulLogons=count_ クリエ Table一覧表 出力結果
  • 7. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 7 Kustoクリエの利用するため ログ・データ分析するため7つのオペレーション 1. レコード数を調べる 2. スキーマを表示 3. サンプルレコードの表示 4. フィルターをかける 5. Summarize 演算子の利用 6. Project と Extend演算子の利用 7. データの可視化
  • 8. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 8 1. レコード数を調べる TABLENAME |count 調査対象となっているテーブルの名称 テーブル(SecurityEvent)の レコード数の結果 Kustoクエリ
  • 9. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 9 2. スキーマを表示 TABLENAME |getschema 調査対象となっているテーブルの名称 スキーマの結果 Kustoクエリ
  • 10. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 10 3. サンプルレコードの表示 TABLENAME |take 3 調査対象となっているテーブルの名称 レコードの表示結果 Kustoクエリ
  • 11. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 11 4. フィルターをかける (1/2) TABLENAME |where 条件#1 |where 条件#2 調査対象となっているテーブルの名称 SecurityEvent | where TimeGenerated > ago(1d) | where Computer == 'CH-AMAVM' Kustoクエリサンプル
  • 12. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 12 4. フィルターをかける (2/2) レコードの表示結果 Kustoクエリ
  • 13. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 13 5. Summarize演算子の利用 (1/2) TABLENAME | Summarize count by 列名#1 調査対象となっているテーブルの名称 by の後ろに指定した列の個数を数える Kustoクエリ
  • 14. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 14 5. Summarize演算子の利用 (2/2) TABLENAME | Summarize countif ( 列名 ==xxx) 調査対象となっているテーブルの名称 条件にある列の個数を数える Kustoクエリ
  • 15. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 15 6. Project と Extend演算子の利用 (1/2) TABLENAME | Extend 列名 = XXX | Project 列名#1,列名#2 Kustoクエリサンプル SecurityEvent | Extend Time = TimeGenerated | Project Time, Computer, EventID,Process
  • 16. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 16 6. Project と Extend演算子の利用 (2/2) 表示結果 Kustoクエリ
  • 17. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 17 7. データの可視化 (1/3) TABLENAME | Render XXX ※ render 演算子はクエリの最後の演算子である必要がある
  • 18. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 18 7. データの可視化 (2/3) 表示結果 Kustoクエリ
  • 19. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 19 7. データの可視化 (3/3) 表示結果 Kustoクエリ
  • 20. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 20 Demo  https://clipchamp.com/watch/Xa2KjdqjGPt
  • 21. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 21 Kustoクエリを利用できるツール  Azure Log Analytics  Application Insights  .NETやJava等の言語用の SDK も提供され、コード内で KQL を組み立てて実行可能  Azure Data Explorer (ADX)  Kusto.Explorer  Azure Data Studio すでにログが収集され、実際にクエリを使える環境 https://aka.ms/LADemo
  • 22. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 22 OpenAI(ChatGPT)を使ってKustoを書きましょう
  • 23. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 23 データから未知の可能性を発見 解き明かす未知の可能性 DX推進 脅威検知 システム保全
  • 24. Copyright © Tokyo Electron Device LTD. All Rights Reserved. 24 【お問い合わせ】 東京エレクトロン デバイス株式会社 クラウドIoTカンパニー エッジクラウドソリューション部 URL: https://esg.teldevice.co.jp/iot/ Mail: esg@teldevice.co.jp TEL: 045-443-4021