こんにちは、技術本部のH.T.です。ブログを久しぶりに書いてみました。
先日SumoLogicに新機能として追加されたMo Copilotを使ってみたので、使い方や注意点をまとめました。
これからSumoLogicを使ってみようと検討している方や、クエリを書くのが難しいと感じる方にとって良い機能なのではと感じました。
Mo Copilotとは
SumoLogic Copilot(Sumo Logic Mo Copilot)は、Sumo Logic Log Analyticsプラットフォームに統合されたAIアシスタントです。
自然言語からのクエリ作成とコンテキストに基づくトラブルシューティングを可能にし、ユーザーがログから実用的な情報を引き出せるようにします。
参照:https://help.sumologic.com/docs/search/copilot/#key-features
特徴/注意点/FAQ
特徴
- 自然言語クエリ:簡単な英語で質問をします。
- コンテキストに応じた提案:トラブルシューティングと調査のコンテキストに関連する提案を取得します。
- 履歴:コンテキストを失うことなく、過去のトラブルシューティングや調査のセッションを保存して再開できます。
- 自動可視化:クエリ結果に適したグラフを生成し、ダッシュボードに直接追加することができます。
- クエリ エクスペリエンス:自動補完により自然言語クエリが効率化されます。
注意点
- 日本語が未対応。作成したい内容を一度翻訳にかけて英語で質問を行います。
- ログの構造化が必要。デフォルトではJSON形式のログが対応。Syslog形式などのログはFERを作成しキーバリュー形式にする必要があります。 FERの作成方法などについては下記のヘルプ記事をご確認ください。
FAQ
- 顧客データ/PIIはAIモデルのトレーニングに使用されますか?
- いいえ、顧客データや個人情報はAIモデルのトレーニングには使用されません。
- いいえ、顧客データや個人情報はAIモデルのトレーニングには使用されません。
- どのような基盤を利用していますか?
- CopilotはAmazon Bedrock経由で提供される基盤モデルを使用して動作し、データプライバシーとセキュリティが確保されます。
- CopilotはAmazon Bedrock経由で提供される基盤モデルを使用して動作し、データプライバシーとセキュリティが確保されます。
- Copilotモデルのレビューはどのように実施されますか?
- Copilotに追加された主要な機能は、すべて法的、コンプライアンス、アプリケーションセキュリティのレビューを受けます。これらのレビューは、洞察を拡張したり、新しいタイプのデータを処理したりする新しいリリースと同時に行われます。
FAQ参照:https://www.sumologic.com/solutions/machine-learning-powered-analytics/
コツ
- シンプルな命令文にする
- 一文を短くする
- ざっくりとした命令から、だんだん絞り込みをかける
- Copilotを子供だと想定して質問する、平易な言葉で依頼する
実際に使ってみた
簡単なユースケースでクエリがうまく生成されるのか確認してみました。
今回はメーカーが提供しているトレーニング環境を利用して動作確認をおこないました。
ユースケース
ApacheのアクセスログからIPアドレスを取得し、アクセス状況を地図上に表示する。
脅威データベースとIPアドレス情報を突合し、結果を見たい。
アクセス元IPアドレスを数えたいので、show me counts of source ip.
いい感じにクエリが生成されましたね。_sourceCategory=Labs/Apache/Access | count by %"src_ip”
次はIPアドレスを地図上に表示します。show me counts of source IP address on a map.
チャート形式がmap chartになり、集計結果が表示されました。
_sourceCategory=Labs/Apache/Access
| lookup latitude, longitude, continent, country_code, country_name, region, city, state, postal_code from geo://location on ip = %"src_ip"
| count by latitude, longitude
最後にIPアドレスをCrowdStrikeの脅威データベースと突合してみましょう。Match source IP addresses with CrowdStrike threat intelligence to display only registered IP addresses.
show me that counts on a map.
| lookup ~ from sumo://threat/cs on threat=%”src_ip”
がCrowdStrikeとの突合クエリとなるので、うまく生成できていそうです。
また、 !isNull(malicious_confidence)
で脅威情報に登録されていないログ情報を結果から除外しています。
_sourceCategory=Labs/Apache/Access
| lookup type, actor, raw, threatlevel as malicious_confidence from sumo://threat/cs on threat=%"src_ip"
| where type="ip_address" and !isNull(malicious_confidence)
| lookup latitude, longitude, continent, country_code, country_name, region, city, state, postal_code from geo://location on ip = %"src_ip"
| count by latitude, longitude
まとめ
本記事では、SumoLogicに新機能として実装されたSumoLogic Mo Copilotを利用してみました。
今回はうまくほしい情報を取得できるクエリが生成することができました。
ただ、やはり生成AIなので命令の仕方でクエリ生成のされ方が若干異なっていました。
しかし、今までほしい結果を得るまでにクエリの構文を考えて、入力してというかなり重めのステップがありましたが、こうなってほしいという情報を翻訳機をかませてMo Copilotに投げるだけでクエリができてしまうので、かなり楽ができる印象でした。
皆さんがどんどんMo Copilotを利用して、生成されたクエリのフィードバックを返す(生成されたクエリについて「👍」や「👎」で評価できます)ことで今後生成されるクエリの精度がどんどん良くなると思います。
また、本文のほうで触れられませんでしたが、Suggestions機能があり、ログソースを見てよく検索されている内容が提案として表示されます。
監視すべき内容に悩んでいる際はSuggestionsの内容をみて、作成してみるのもよいかもしれません。
JSON形式のログを取り込んでいる場合は、すぐ利用できるので、物は試しと気軽に利用してみてください。
- カテゴリ:
- Sumo Logic
- 技術情報
- 技術コラム
- 機能説明