Splunk 5.0.2 Splunk チ ュ ー ト リ ア ル 作成:2013 年 3 月 13 日 午前 8 時 5 分 Copyright (c) 2013 Splunk Inc. All Rights Reserved Table of Contents はじめに 5 Splunk チュ ー トリアルにようこそ! Splunk とは? 誰が Splunk を使用するの? このチュ ー トリアルの 内 容 5 5 5 5 Splunk の 概 要 新規デ ー タのインデックス作成 サ ー チと調査 ナレッジの捕捉 自動モニタリング 分析とレポ ー ト 5 6 6 6 6 6 チュ ー トリアルを開始する前に 7 このチュ ー トリアルの要件 システム要件 Splunk ライセンスの 概 要 7 7 7 Splunk のダウンロ ー ドとインスト ー ル Splunk のダウンロ ー ド Linux へのインスト ー ル Windows へのインスト ー ル Mac OS X へのインスト ー ル 7 7 8 8 8 Splunk の開始と Splunk Web の起動 Windows 上での Splunk の開始 UNIX および Mac OS X での Splunk の開始 Splunk Web の起動 9 9 9 10 Splunk へのデ ー タの取り 込 み 10 デ ー タの取り 込 みについて Splunk がインデックスを作成するデ ー タの種類 Splunk へのデ ー タの取り 込 み方法 Splunk のデ ー タ保管場所 App と入力 10 11 11 11 11 Splunk へのサンプルデ ー タの取り 込 み サンプルデ ー タファイルのダウンロ ー ド Splunk へのサンプルデ ー タの取り 込 み 次のステップ 11 12 12 14 サ ー チとサ ー チ言語 14 この章について 14 サ ー チ App サ ー チ App への移動 サマリ ー ダッシュボ ー ド サ ー チの開始 サ ー チダッシュボ ー ド 15 15 15 16 17 サ ー チの開始 キ ー ワ ー ドサ ー チ 論理演算子の使用 サ ー チの詳細 次のステップ 18 18 19 20 20 タイムラインの使用 タイムラインオプションについて タイムライン調査 次のステップ 21 21 21 23 時間範 を 更 時間範 の選 その他の時間範 オプション 次のステップ 23 23 24 25 フィ ー ルドを使用したサ ー チ フィ ー ルドの 概 要 フィ ー ルドサイドバ ー とダイアログ フィ ー ルドを使ったサ ー チ 次のステップ 25 25 26 28 30 サ ー チ言語について サ ー チアシスタントによるサ ー チの作成 サ ー チ結果のドリルダウン サ ー チ結果を再フォ ー マットします。 次のステップ 30 30 32 33 34 サ ー チの保存 サ ー チの保存について サ ー チの保存チュ ー トリアル サ ー チの管理とスケジュ ー ルについて 次のステップ 34 34 34 35 36 サブサ ー チの使用 例 1:サブサ ー チを使用しない 例 2:サブサ ー チを使用する 次のステップ 36 36 37 37 フィ ー ルドルックアップの使用 ルックアップの使用 ルックアップファイルのアップロ ー ド フィ ー ルドルックアップの定義 38 38 39 40 ルックアップの自動化 新しいルックアップフィ ー ルドを使ったサ ー チ サ ー チの高速化 次のステップ 40 42 42 43 その他のサ ー チ例 Search Reference Manual 例 1 - 要求されたペ ー ジ 参 照 数 は? 例 2 - ペ ー ジ 参 照 数 と 実 際の購入 数 の違いは? 例 3 - どの商品がどのくらい購入された? 例 4 - 購入の失敗回 数 は? 次のステップ 43 43 43 44 45 46 47 レポ ー トとダッシュボ ー ドの作成 47 レポ ー トとダッシュボ ー ドについて 47 レポ ー トの例 レポ ー トビルダ ー の使用 各商品の購入 数 と 参 照 数 のグラフ 商品名別上位購入 数 購入 数 上位の傾向 保存 みレポ ー トへのアクセス レポ ー ト生成の高速化 次のステップ 47 47 48 51 52 53 53 54 ダッシュボ ー ドの例 ダッシュボ ー ドパネルの作成 ダッシュボ ー ド 1: Flower & Gift ショップの商品 ダッシュボ ー ド 2: Flower & Gift ショップの運 営 次のステップ 54 54 54 58 59 ダッシュボ ー ドの表示と印刷 保存したダッシュボ ー ドの表示 ダッシュボ ー ドの印刷および PDF 生成オプション 統合 PDF 生成機能の詳細 次のステップ 59 59 60 61 61 もっと Splunk を活用しよう! 61 次は何? 61 はじめに Splunk チュ ー トリアルにようこそ! Splunk とは? Splunk は、IT インフラを構成する任意のアプリケーション、サーバー、またはネットワーク機器からの IT データ のインデックスを作成するソフトウェアです。強力で多彩なサーチ/分析エンジンにより、IT インフラで発生して いるあらゆる事態を 1 ヶ所からリアルタイムに調査、トラブルシューティング、モニター、アラート、レポートす ることができます。 誰が Splunk を使用するの? Splunk は多機能で、さまざまな用途、そしてさまざまなユーザーに することができます。システム管理者、ネッ トワークエンジニア、セキュリティアナリスト、開発者、サービスデスク、サポートスタッフなどだけではなく、 マネージャ、副社長、CIO なども Splunk を使って各自の業務を改善し、効率を向上することができます。 アプリケーションサポートスタッフは Splunk を使ってエンドツーエンドで調査を行い、アプリケーション 環境全体の修正を行えます。また、アラートやダッシュボードを作成して、サービス全体のパフォーマン ス、可用性、ビジネス上の指標を積極的にモニターすることも可能です。ロールを使って各自の分担に じて データアクセスを制限することで、セキュリティを脆弱化することなく、アプリケーション開発者やサポー ト担当者に生産環境の多彩なログの中から必要な情報にアクセスさせることができます。 システム管理者や IT スタッフは、Splunk を使ってサーバー上の問題の調査、各種設定の理解、ユーザーア クティビティのモニターなどの作業を行えます。また、パフォーマンスの閾値、重大なシステムエラー、シ ステム負荷などに してサーチを実行し、予防的なアラートを生成できます。 上級ネットワーク管理者は、エスカレートされた問題のトラブルシューティング、ルーターの設定誤りや近 隣ノードの 更などの日常的な問題を示唆するイベントやパターンの判別に Splunk を活用し、またこれらの イベントにサーチを実行して予防的なアラートを生成することができます。 セキュリティアナリストやインシデント担当チームならば、問題のあるユーザーのアクティビティおよび機 密データへのアクセスの調査、既知の有害イベントの自動モニター、サーチと洗練された相関機能によるブ ルートフォース攻 、データ漏洩、アプリケーションレベルの不正行為などの既知のリスクパターン 出に Splunk を活用できます。 各種業務を統括するマネージャは、IT インフラやビジネスのヘルス状態、パフォーマンス、アクティビ ティ、キャパシティをモニターし、その概略を提供するレポートやダッシュボードの作成などの作業を行え ます。 このチュ ー トリアルの 内 容 初めて Splunk をご利用になる場合、このチュートリアルを利用して、ダウンロード後の作業から多機能な 話型 ダッシュボードの作成まで、Splunk の使用を開始するために必要なさまざまな知識を学習することができます。 PDF を 作 成 このマニュアルの PDF 版が欲しい場合は、このページの目次の左下にある赤い [Download the Splunk Tutorial as PDF] リンクをクリックしてください。PDF 版のマニュアルがその場で作成されます。作成された PDF は後で 利用するために保存、印刷することができます。 Splunk の 概 要 Splunk は強力かつ多機能な IT サーチソフトウェアで、多数の情報を追跡管理する手間を省きながら、データセン ター内の情報を最大限に活用することができます。Splunk を利用すれば、複 なデータベース、コネクタ、カスタ ムパーサーやコントロールなどは必要ありません。Web ブラウザと想像力さえあれば、さまざまな目的に有効活 用できます。Splunk は REST API を取り扱っています。 Splunk の使用方法: すべての IT データにリアルタイムかつ 続的にインデックスを作成する。 データに埋め込まれている有益な情報を自動的に 出する (手作業で探す必要がない)。 物理/仮想 IT インフラのあらゆる情報をサーチして、結果を瞬時に表示する。 サーチを保存して、有益な情報にタグを付ける。 特定の繰り返されるイベントに するアラートを設定し、システムのモニターを自動化する。 5 インタラクティブなチャート、グラフ、テーブルを持つ分析レポートを生成して、それを他のユーザーと共 有する。 保存 みサーチおよびレポートを他の Splunk ユーザーと共有し、結果をメールでチームメンバーやプロジェ クト関係者に配布する。 サーバーのダウンタイムやセキュリティ上の問題を発生前に防止するために、積極的に IT システムをレ ビューする。 自社の幅広いニーズに する、豊富な情報を持つ特別なビューやダッシュボードを設計する。 新規デ ー タのインデックス作成 Splunk には、アプリケーション、サーバー、ネットワーク危機からのログファイル、設定、トラップとアラー ト、メッセージ、スクリプト、パフォーマンスデータ、統計情報などのデータを含め、 IT インフラ内のあらゆる 情報のインデックスを作成するために、多彩で柔軟なデータ入力手段が用意されています。ファイルシステム内の スクリプトや設定の 更をモニターできます。ファイルシステムまたは Windows レジストリのモニタリング 更を 有効にできます。アーカイブファイルや SNMP トラップデータを捕捉できます。ライブアプリケーションサー バーのスタックトレースやデータベース監査テーブルを 索、追跡できます。ネットワークポートに接続して、 syslog や他のネットワーク関連情報を取得できます。 データの取得方法にかかわらず、それがどのような形式でも、Splunk は一貫した方法でそれらのインデックスを 作成します。特定のパーサーを用意したり、アダプタを作成、管理したりする必要はありません。raw データとイ ンデックスの両方が、 縮されてファイルシステムベースのデータストアに効率的に保管されます。データの整合 性を確保する必要がある場合は、データの署名や監査を行うことも可能です。 サ ー チと調査 システム内のすべてのデータを取り込んだら、それをどのように取り扱いますか?まず、Splunk の強力なサーチ 機能を使用して、定義されている一部のフィールドだけではなく、いろいろな情報を探してみましょう。時間によ るサーチと単語によるサーチを組み合わせられます。IT インフラ内のあらゆるレイヤのエラーを 索して設定の 更 を追跡し、システム障害の発生を防止してください。サーチを実行すると、Splunk がレコードからフィールドを 判別していきます。事前に 密なフィールドマッピングルールセットの定義が必要な他のソリューションと比べ て、比類のない柔軟性を提供しています。システムに数テラバイトのデータが存在している場合でも、Splunk な らば正確にそれらのデータをサーチすることができます。 ナレッジの捕捉 raw データのフリーサーチはほんの手始めにすぎません。フィールド、イベント、トランザクションに関する独自 のナレッジを追加して、データの価値を強化してサーチ精度を向上しましょう。優先度の高い資産にタグ付けし、 ビジネス機能や監査要件に基づいてイベントに注釈を付けられます。関連する一連のサーバーエラーに 1 つのタグ を付け、そのタグを使うようにサーチ方法を工夫すれば、それらのエラーに関連したイベントのみを取り出して、 レポートを生成することができます。頻繁に実行するサーチは保存して共有できます。Splunk は、あらかじめ データを正規化する従来のアプローチとは異なり、サーチ時にナレッジをデータにマッピングすることで、より効 率的なログ管理を行えます。社内で使用されているさまざまな Splunk App 間で、サーチ、レポート、ダッシュ ボードを共有することができます。 自動モニタリング スケジュールに基づいて任意のサーチを実行することができます。また、特定の条件が発生したらその旨を通知す るように設定することも可能です。この自動アラート機能は、アプリケーションからファイアウォールのアクセス 制御まで、IT インフラ内のさまざまなコンポーネントや技術に適用できます。メールまたは SNMP で他の管理コ ンソールに通知を送信することができます。アラートを契機に、アプリケーション、サーバー、ネットワーク機器 の再起動、またはトラブルチケットの発行などのアクティビティを実施するスクリプトを実行できます。既知の有 害なイベントに するアラートを設定し、サーチを介した相関機能を活用することで、ブルートフォース攻 、デー タ漏洩、アプリケーションレベルの不正行為など、既知のリスクパターンを発見することができます。 分析とレポ ー ト 大量のデータを素早く分析できる Splunk を利用すれば、任意のサーチ結果を 話型のチャート、グラフ、テーブル にまとめることができます。統計コマンドを使ったレポートをその場で生成し、指標の推移、上位値の比較、最 大/最小頻度の条件タイプなどの傾向を判断できます。レポート結果は、 話型の線グラフ、横棒グラフ、 棒グラ フ、円グラフ、散布図、温度分布図などでビジュアル化できます。 Splunk には、チームメンバーやプロジェクト関係者とレポートを共有するためのさまざまな手段が用意されてい ます。レポートを定期的に実行するようにスケジュールして、それをメール送信、印刷して配布、コミュニティラ イブラリへの保存、特定のダッシュボードへの追加などの手段により、関係者に提供することができます。 6 チュ ー トリアルを開始する前に このチュ ー トリアルの要件 Splunk の使用を開始する前に、Splunk インスタンスをダウンロード、インストール、起動する必要があります。 何も心配する必要はありません。5 分程度で作業は完了します。 すでに稼働している Splunk サーバーにアクセスできる場合は、「Splunk へのデータの追加」に進んでください。 システム要件 Splunk は、大半のコンピュータプラットフォーム上で動作しますが、ここでは Windows 版および Mac OS X 版の Splunk を前提に 明していきます。もちろん、どのプラットフォームで実行する場合でも、Splunk は Splunk で す。「Splunk の開始」から、順番に作業を行ってください。 Splunk はローカルマシン上にインストールするソフトウェアですが、Splunk にアクセスするには Web ブラウザ を使用します。Splunk は最新バージョンの Firefox、Chrome、Safari、および Internet Explorer 6、7、8、9 をサ ポートしています。 Splunk は高性能のアプリケーションですが、このチュートリアルでは以下の要件を たす 1 台の Windows または Mac コンピュータを利用していきます。 Platform サポートする最低ハードウェア要件 Windows 以外のプラットフォーム 1x1.4 GHz CPU、1 GB RAM Windows プラットフォーム Pentium 4 または同等の 2GHz CPU、2GB RAM 完全な仕 の一覧については、『Installation manual』の「System Requirements」を参照してください。 Splunk ライセンスの 概 要 Splunk は Enterprise ライセンスまたは Free ライセンスで動作します。初めて Splunk をダウンロードした場合 は、60 日間有効な Enterprise トライアルライセンスが付いています。このトライアルライセンスでは、500 MB/ 日のインデックスを作成でき、すべての Enterprise 機能を利用できます。 Splunk をインストールすると、Enterprise トライアルライセンスを失効するまでの期間利用することができま す。その後は、無期限の Free ライセンスに切り替えるか、または Enterprise ライセンスをご購入ください。 詳細は、『管理マニュアル』の「Splunk ライセンスの種類」を参照してください。 Splunk のダウンロ ー ドとインスト ー ル Splunk は、Unix、Windows、および Mac OS X にインストールすることができます。サポートしている OS の一 覧については、『Installation manual』の「System Requirements」を参照してください。 ここでは、Splunk のダウンロード方法および Linux、Windows 、および Mac OS X へのインストール方法につい て簡単に 明していきます。その他のサポートしている OS については、『Installation manual』の「Step-by-step installation instructions」を参照してください。 Splunk のダウンロ ー ド ダウンロードページから、最新版の Splunk をダウンロードしてください。 Linux 版の Splunk には、RedHat 用 RPM ダウンロード、Debian Linux 用 DEB パッケージ、および tar ファ イルインストーラの 3 種類のオプションが用意されています。 Windows 版のインストーラは、MSI ファイルと 縮形式の zip ファイルが提供されています。このチュートリ アルでは、MSI ファイルのインストーラを使用します。 Mac OS X 版のインストーラは、DMG パッケージと tar ファイルインストーラの 2 種類が提供されていま す。このチュートリアルでは、DMG パッケージのインストーラを使用します。 注意:Splunk.com にログインしていない場合、ダウンロードパッケージをクリックすると、登 用フォームにリダ イレクトされます。Splunk.com のアカウントをまだお持ちでない場合は、まず登 してください。 7 Linux へのインスト ー ル Linux に Splunk をインストールするには、コマンドラインインターフェイス (CLI) を使用します。CLI の使用方法 の詳細は、『管理マニュアル』の「CLI について」を参照してください。 デフォルトで Splunk は、Linux の /opt/splunk ディレクトリにインストールされます。 Splunk RPM をインストールするには、CLI に以下のコマンドを入力します。別のディレクトリに Splunk をイン ストールする場合は、オプションの --prefix フラグを指定してください。 rpm -i --prefix=/opt/new_directory splunk_package_name.rpm Splunk DEB パッケージをインストールするには、CLI に以下のコマンドを入力します。Splunk DEB は、デフォ ルトの /opt/splunk ディレクトリにのみインストールできます。 dpkg -i splunk_package_name.deb 縮形式の tar ファイルをインストールするには、tar コマンドを使って適切なディレクトリにファイルを解凍しま す。デフォルトのインストールディレクトリは、現在の作業ディレクトリ内の /splunk ディレクトリになります。 とくてい/opt/splunk などの特定のディレクトリにインストールする場合は、-C オプションを使用します。 tar xvzf splunk_package_name.tgz -C /opt Linux への Splunk のインストール方法の詳細は、『Installation manual』に記載されている Linux のインストール 手順を参照してください。 Windows へのインスト ー ル 1. インストーラを開始するには、splunk.msi ファイルをダブルクリックします。 2. [ようこそ!]パネルで、[次へ] をクリックします。 3. ライセンス条項をお読みの上、[I accept the terms in the license agreement] (ライセンス条項に同意します) の隣 にあるボックスを選 します。[次へ] をクリックして、インストールを続行します。 4. [Customer Information] (顧客情報) に、要求されている情報を入力して、[次へ] をクリックします。 5. [Destination Folder] (宛先フォルダ) パネルで、[Change...] ( 更) をクリックして Splunk のインストール場所を 更するか、または [次へ] をクリックして、デフォルト値をそのまま使用します。 デフォルトでは、Splunk は \Program Files\Splunk ディレクトリにインストールされます。 [Logon Information] (ログオン情報) パネルが表示されます。 6. [Logon Information] パネルで、[Local system user] (ローカルシステムユーザー) を選 して、[次へ] をクリック します。 その他のユーザーオプションについては、Windows への Splunk のインストールに関する 明を参照してくださ い。 7. ユーザーを指定すると、インストール前のサマリーパネルが表示されます。続行するには、[Install] (インストー ル) をクリックします。 8. [Installation Complete] (インストール完了) パネルで、[Launch browser with Splunk] (Splunk をブラウザで起 動) および [Create Start Menu Shortcut] ([スタート] メニューのショートカットを作成) ボックスを選 します。 9. [完了] をクリックします。 インストールが完了し、Splunk が開始され、サポートされているブラウザ内で Splunk Web が開始されます。 Mac OS X へのインスト ー ル 1. DMG ファイルをダブルクリックします。 2. Finder ウィンドウで、splunk.pkg をダブルクリックします。 Splunk インストーラが開始され、[Introduction] (紹介) が表示されます。 3. [Continue] (続行) をクリックします。 8 4. [Select a Destination] (宛先の選 ) ウィンドウで、Splunk をインストールする場所を選 します。 デフォルトのディレクトリ /Applications/splunk にインストールするには、ハードドライブアイコンをク リックします。 別の場所を選 する場合は、[Choose Folder...] (フォルダを選 ...) を選 します。 5. [Continue] (続行) をクリックします。 インストール前のサマリーが表示されます。何か 更する必要がある場合: 新しいフォルダを選 するには、[Change Install Location] (インストール先の 更) をクリックします。また は、 [Back] ( る) をクリックして、前のステップに ります。 6. [インストール] をクリックします。 インストール作業が開始されます。この処理には数分ほどかかる場合があります。 7. インストールが完了したら、[Finish] をクリックします。 インストールが完了し、Splunk を開始できるようになります。 Splunk の開始と Splunk Web の起動 Splunk を起動すると、ホスト上では 2 つのプロセス splunkd および splunkweb が開始されます。 は、ストリーミングマシンデータへのアクセス、処理、インデックス作成を行い、サーチリクエス トを処理する分散 C/C++ サーバーです。 splunkweb は、マシンデータのサーチや Splunk デプロイの管理に使用する Splunk Web インターフェイスを 提供する、Python ベースのアプリケーションサーバーです。 splunkd Windows 上での Splunk の開始 Windows で Splunk を開始するには、3 種類のオプションがあります。 [スタート] メニューから Splunk を開始する。 Windows のサービスマネージャを使って、splunkd および splunkweb を開始/停止する。 cmd ウィンドウを開いて、\Program Files\Splunk\bin に移動し、以下のコマンドを入力する > splunk start UNIX および Mac OS X での Splunk の開始 コマンドラインインターフェイス (CLI) の使用: $SPLUNK_HOME/bin/splunk start $SPLUNK_HOME は、Splunk のインストールディレクトリです。UNIX の場合は /opt/splunk、Mac OS X の場合は になります。 /Applications/splunk/bin/ 管理者 限またはルート 限がある場合は、Splunk 環境 数を設定して CLI の使用を簡素化できます。方法の詳細 は、『管理マニュアル』の「CLI について」を参照してください。 Splunk ライセンスの承諾 start コマンドを実行したら、ライセンス条項が表示されます。表示される条項を承諾しないと、処理を続行する ことはできません。 ライセンスを承諾すると、スタートアップシーケンスが表示されます。処理の最後の方では、Splunk Web へのア クセス方法が表示されます。 The Splunk Web interface is at http://localhost:8000 Splunk の起動について何か問題がある場合は、『Installation manual』の「Start Splunk for the first time」を参照 してください。 その他のコマンド 9 Splunk サーバーの停止、再起動、またはステータス確認を行う場合は、以下の CLI コマンドを使用します。 $ splunk stop $ splunk restart $ splunk status Splunk Web の起動 Splunk のインターフェイスは Web サーバーとして動作します。スタートアップ後には、Splunk Web インター フェイスの場所が表示されます。ブラウザを起動して、指示された場所に移動してください。 デフォルトで Splunk Web は、インストールされているホスト上のポート 8000 で動作します。ローカルコン ピュータ上で Splunk を実行している場合、Splunk Web にアクセスするための URL は http://localhost:8000 にな ります。 Enterprise ライセンスをご利用の場合、Splunk を初めて起動すると、このようなログイン画面が表示されます。 表示されるメッセージに従って、デフォルトの資格情報で認証を行ってください。 Free ライセンスをご利用の場合は、認証せずに Splunk を使用できます。この場合、Splunk を起動してもログイ ン画面は表示されません。代わりに Splunk ホームまたは設定されているデフォルト App が表示されます。 デフォルトのパスワードでサインインすると、新しいパスワードの作成を依頼するメッセージが表示されます。 この手順はスキップすることも、パスワードを 更してから続行することも可能です。 Splunk へのデ ー タの取り 込 み デ ー タの取り 込 みについて 10 Splunk を使用する場合、Splunk インデックス内のデータに して作業を行うことになります。 以下の項目をご覧ください。 Splunk がインデックスを作成するデータの種類について。 Splunk インデックスへのサンプルデータの追加。 Splunk がインデックスを作成するデ ー タの種類 Splunk は、任意のソースからの任意のマシンデータに して、リアルタイムにインデックスを作成できます。 Splunk へのサーバーまたはネットワーク機器の syslog の指定、WMI ポーリングの設定、任意のアプリケーション のログファイルのモニター、ファイルシステムまたは Windows レジストリの 更のモニター、システム情報収集用 スクリプトのスケジュールなど、さまざまな作業を行えます。データの取得方法に関係なく、またデータがどのよ うな形式でも、Splunk は一貫した方法でそれらのインデックスを作成します。特定のパーサーを用意したり、ア ダプタを作成、管理したりする必要はありません。raw データとインデックスの両方が、 縮されて効率的にファ イルシステムベースのデータストアに保管されます。データの整合性を確保するために、データの署名や監査を行 うことも可能です。 このチュートリアルの例では、データを取り込むための入力方法としてローカルファイルのアップロードのみを取 り上げています。Splunk が している他のデータ入力/追加方法については、『Getting Data In manual』の「What Splunk can index」を参照してください。 Splunk へのデ ー タの取り 込 み方法 Splunk にデータを取り込む場合、Splunk Web、Splunk の CLI、inputs.conf 設定ファイルなど、さまざまなデータ 入力方法を利用することができます。 大部分のデータソースは、Splunk Web を使って追加できます。設定ファイルにアクセスできる場合は、 inputs.conf を使用することができます。この設定ファイルを使えば、よりきめ細かく入力方法を設定できます。 Splunk Web または Splunk CLI を使ってデータ取り込み方法を 更すると、それがこの inputs.conf に書き込まれま す。 「Splunk インデックスへのサンプルデータの追加」には、Splunk Web を使った新しいデータの追加方法に関する 一般的な手順が 明されています。データ取り込み方法の設定の詳細は、『Getting Data In manual』の「What Splunk can index」を参照してください。 Splunk のデ ー タ保管場所 「インデックス」と言う単語が、異なる意味で使われていることにお気づきでしょうか?まず、Splunk が新しい データのインデックスを作成する場合、データのサーチが可能になるように raw データを処理しています。つま り、このようなデータのインデックス作成処理を表しています。一方、Splunk インデックスについて 明している 場合、それは Splunk がデータの一部または全部を保管しているデータストアを表しています。つまり、新しい データのインデックスを作成する場合、Splunk はデータをインデックスに保管します。また、サーチ実行時に は、データを 1 つまたは複数のインデックスと照合することになります。 App と入力 Splunk にデータを取り込むための入力を追加すると、それはその時点で利用している App に追加されます。一部 の App は、入力データを独自のインデックスに書き込みます (たとえば、UNIX 版および Linux 版 Splunk App は、「os」インデックスを使用します)。Splunk に取り込んだはずのデータが見つからない場合は、適切なイン デックスを 象にサーチしているかどうかを確認してください。 Splunk ユーザーの方は、これさえを理解しておけば、サーチを開始してご自分のデータを有効活用することがで きます。インデックス内のデータの管理の詳細は、『インデクサーとクラスタマニュアル』の「インデックスの概 要」を参照してください。 Splunk へのサンプルデ ー タの取り 込 み このトピックは、すでに Splunk サーバーをダウンロード、インストール、起動していることを前提にしていま す。まだこれらの作業を行っていない場合は、前のトピックに って 明に従って作業を行ってください。 Splunk を起動してログインしたら、サーチ 象のデータを Splunk に取り込む必要があります。ここでは、サンプ ルデータセットのダウンロードおよびそのデータの Splunk への追加方法について 明していきます。 11 サンプルデ ー タファイルのダウンロ ー ド このチュートリアルでは、架空のオンラインストア Flower & Gift ショップのサンプルデータを使って、Splunk の 使用方法を紹介していきます。このサンプルデータには、以下の情報が含まれています。 Apache Web サーバーログ MySQL データベースログ ファイルやディレクトリ、ネットワークポート、カスタムスクリプトなどから Splunk にデータを取り込むことが できますが、このチュートリアルでは 縮ファイルを Splunk に直接アップロードしてデータを取り込みます。ま た、このチュートリアルは、数時間で完了できるように設計されています。もしこれを数日間のデータを 象に試 したい場合は、新しいサンプルデータファイルをダウンロードして追加してください。 このチュートリアルを続行するには、サンプルデータ sampledata.zip をダウンロードしてください (ただし、解 凍はしないでください)。このサンプルデータファイルは、 日更新されます。 Splunk へのサンプルデ ー タの取り 込 み Splunk にログインすると、Splunk ホームに移動します。このビューが表示されない場合は、[App] リストから [ホーム] を選 してください。 1. Splunk ホームで、[データの追加] をクリックします。 [Splunk にデータを追加] ダイアログボックスが表示されます。ここでは、[データタイプを選 してください] で データタイプを選 し、[または、データソースを選 してください] を追加できます。 2. [または、データソースを選 してください] で、[ファイルとディレクトリから] をクリックします。 [データのプレビュー] ダイアログボックスが表示されます。ここでは、Splunk インデックスにデータを追加する 前に、そのデータのプレビューを参照することができます。このチュートリアルの目的から、ここではこの作業は 必要ありません。データのプレビューの詳細を知りたい場合は、『Getting Data In manual』の「Overview of data preview」を参照してください。 3. [プレビューをスキップ] を選 して、[続行] をクリックします。 12 [ホーム] > [データの追加] > [ファイルとディレクトリ] > [新規追加] ビューが表示されます。ここから、サンプル データファイルをアップロードできます。一般的には、以上が必要な作業のすべてで、残りの処理は Splunk が担 当します。ただし、このチュートリアルの目的から、ここではいくつかのプロパティを編集します。 4. [ソース] で、[ファイルのアップロードとインデックスの作成] を選 して、先ほどダウンロードしたサンプルデー タファイルを選 します。 イベントの source は、データがどこから来たのかを表しています。ファイルとディレクトリからデータを収集し た場合、「source」はそのファイルまたはディレクトリのフルパス名になります。ネットワークベースのソースの 場合は、「UDP:514」のようなプロトコルとポートになります。 5. [その他の設定] を選 します。 これにより、ホスト、ソースタイプ、およびインデックスに する Splunk のデフォルト設定に優先する設定を定義 することができます。 イベントの host の値は、一般的にはイベントの発生元となるホスト名、IP アドレス、またはネットワークホスト の完全修飾ドメイン名になります。Sampledata.zip ファイルには、4 つのディレクトリ (フォルダ) が存在してお り、その中の 3 つのフォルダは Apache Web サーバー関連の名前が、1 つは MySQL サーバー関連の名前が付けら れています。 イベントのソースタイプは、そのデータの種類を表しています。一般的には、そのデータのフォーマットに基づい ています。ソースタイプの例としては、access_combined や cisco_syslog などが げられます。このような分類に より、複数のソースやホストにまたがって同じ種類のデータをサーチすることができます。Splunk のデータの ソースタイプ分類については、『Getting Data In manual』の「Why source types matter」を参照してください。 インデックス設定は、Splunk にデータの保管場所を指示します。デフォルトでは、main に保管されていますが、 多数のタイプが存在している場合には、データを異なるインデックスに分割して保管することも 討してくださ い。カスタムインデックスの作成の詳細は、『インデクサーとクラスタの管理マニュアル』の「複数のインデック スの設定」を参照してください。 このチュートリアルでは、ホストの設定のみを 更します。 6. [ホスト] および [ホスト設定] で、[正規表現パス] を選 します。 の値を、Sampledata.zip に含まれているフォルダ名と照合したいと考えています。[正規表現パス] を選 する ことで、 縮ファイル内のパスのセグメントを正規表現で照合し、それをホスト値として設定することを Splunk に 指示します。 host 13 7. [正規表現] で、コピーと貼り付けを行います。 Linux/Unix の場合: Sampledata.zip:./([^/]+)/ Windows の場合: Sampledata.zip:.\\([^/]+)/ この正規表現は、(Linux/Unix) Sampledata.zip/ または (Windows) Sampledata.zip\ 下のセグメントパスの、任意 の文字にマッチします。 8. [保存] をクリックします。 完了したら、アップロードが成功したことを知らせるメッセージが表示されます。 次のステップ [サーチ開始] をクリックして、このチュートリアルの次のトピックに進み、サーチ App でご自分のデータを調査 してください。 サ ー チとサ ー チ言語 この章について サンプルデータを Splunk に取り込んだら、データのサーチを開始できるようになります。 Splunk チュートリアルのこの章では: サーチ App を紹介します。 キーワードやフレーズから開始して、タイムレンジ、フィールド、およびサーチ言語の使用など、サーチに 関するさまざまな事項について 明していきます。 サーチの保存、および保存したサーチの再利用について 明します。 サブサーチの作成、フィールドルックアップによるイベント情報の強化など、さまざまなサーチ例を取り上 げていきます。 14 まずは、サーチ App について学習しましょう。 サ ー チ App このトピックは、オンラインの Flower & Gift ショップのサンプルデータを、Splunk に取り込んだことを前提にし ています。まだデータを取り込んでいない場合は、データの追加チュートリアルを参考に、データを追加して、 Splunk にデータを取り込んでください。 Splunk にサンプルデータを取り込んだら、サーチを開始できます。ここでは、データのサーチと分析を行うため の、Splunk のデフォルトインターフェイスであるサーチ App を紹介していきます。このサーチインターフェイス をすでに理解している場合は、ここを飛ばして先に進み、サーチを開始してください。 サ ー チ App への移動 Splunk 内の任意の場所から、右上にあるシステムナビゲーションバーの [App] リストを使って、サーチ App に移 動することができます。 App リストを利用できない場合は、ページの左上にある [<< ホームに る] リンクをクリックしてください。 ホームに ったら、[App] リストから [サーチ] を選 します。サーチ App には、サマリーダッシュボードが表示され ています。 サマリ ー ダッシュボ ー ド サマリーダッシュボードには、この Splunk サーバーにアップロードした (取り込んだ) データに関する情報が表示 されます。ここから、データのサーチを開始できます。 このダッシュボードに表示される指標は、保存 みサーチにより生成されます。保存 みサーチは、このページにア クセス、再読込した時に、その背後で実行されます。(このチュートリアルの終了時には、サーチの実行、保存、 およびそれを使った独自のダッシュボードの作成ができるようになる予定です。) 15 このダッシュボードの内容 サーチ App のナビゲーションバーを使って、サーチ App 内の各種ダッシュボード (サマリーダッシュボード (現在 のダッシュボード) やサーチダッシュボード (サーチ作業の大半を行う場所) など) にアクセスすることができま す。リンクをクリックすると、 するダッシュボードに移動するか、またはページが更新 (現在利用しているダッ シュボードを選 した場合) されます。 ナビゲーションバーのメニュー項目を以下に示します。 ステータス:ご利用の Splunk 上の、インデックスやサーバー活動に関するステータスをモニターできる ダッシュボードを表示します。 ダッシュボードとビュー:サーチ App 内の他のダッシュボードを表示する場合に使用します。 サーチとレポート:保存 みサーチとレポートにアクセス、管理する場合に使用します。 ダッシュボード内のその他の項目: サーチバー:サーチバーにサーチ文字列を入力します。 タイムレンジセレクタ:イベントを取得する時間範 を選 します。 すべてのインデックス作成されたデータパネル:インデックスが作成されたイベントデータに関する指標 (Splunk インデックス内に存在するイベント数合計など)、およびもっとも早く/もっとも くインデックスが作 成されたイベントのタイムスタンプが表示されます。また、データの最終更新日時 (または、このダッシュ ボードの前回の再読込時刻) も表示されます。 ソースパネル:Splunk サーバー上のデータの上位ソースを表示します。 ソースタイプパネル:Splunk サーバーのデータの上位ソースタイプを表示します。 ホスト:Splunk サーバーのデータの上位ホストを表示します。 サ ー チの開始 このチュートリアルを実施するために Splunk サーバーをインストールしたばかりの場合は、先ほどアップロード したサンプルデータファイルのみが表示されます。これは 1 回アップロードしたファイルからのデータで、それが 化することはありません。今後より多くのデータを追加していけば、このダッシュボードにはより多くの情報が 表示されるようになります。静的ではないソース (アプリケーションが常時データを書き込むログファイルなど) をデータ入力として追加した場合、[サマリー] ページの数値はソースからのデータの到着とともに 化していきま す。 企業環境内にデプロイされている共有 Splunk サーバーまたはすでにインストールされている Splunk サーバーを 使用している場合、おそらくこのダッシュボードにはより多くの情報が表示されていることでしょう。 1. サマリーダッシュボードをもう少し詳しく見ていきましょう。 [ソース] パネルには、先ほどアップロードしたオンラインの Flower & Gift ショップの 3 種類の Apache Web サー バーログと MySQL データベースログが表示されています。Apache Web サーバーログに詳しい方なら ば、access_combined_wcookie ソースタイプが、Web アクセスログに関連付けられているログフォーマットの 1 つであることにお気づきでしょう。このソースタイプのデータはすべて、Flower & Gift ショップ Web サイトにア クセスした人々に関する情報を提供しています。 Splunk でのサーチは 話型で行われます。サマリーダッシュボードにはサーチバーがありますが、今のところは何 も入力する必要はありません。サマリーダッシュボードに記載されている各ソース、ソースタイプ、およびホスト はリンクとなっており、それをクリックするとサーチが開始されます。 2. [ソースタイプ] パネルで、access_combined_wcookie をクリックします。 16 サーチダッシュボードにサーチ結果が表示されます。 サ ー チダッシュボ ー ド このビューにはさまざまなコンポーネントが存在しています。サーチを 続する前に、まずこれらのコンポーネン トを見ていきましょう。 サーチダッシュボードの内容 サーチバーとタイムレンジピッカーはすでにご存じかも知れません。これらはサマリーダッシュボードにもありま した。ただし、ここにはイベント数、タイムライン、フィールドメニュー、および取得したイベントまたはサーチ 結果のリストも表示されています。 サーチモード:サーチモードを使って、サーチを制御することができます。返されるイベントデータを減ら すことでサーチを高速化するように設定したり (高速モード)、できる限り多くの情報を返すように設定した り (詳細モード) できます。スマートモード (デフォルト設定) では、実行するサーチの種類に じてサーチモー ドを自動的に切り替えます。詳細は、『サーチマニュアル』の「サーチに合わせたサーチモードの設定」を 参照してください。 サーチアクション:これらのボタンを使って、サーチ完了前のサーチジョブを制御します。または、サーチ 完了後に、結果に してアクションを実行します。利用できないボタンは無効になり、灰色表示されます。 完了までに長時間かかるサーチを実行している場合、それをバックグラウンドで実行、一時停止、完 了、キャンセル、または 査することができます。 サーチ完了後、結果を印刷することができます。 [保存] メニューを使って、サーチおよびサーチ結果を保存するためのオプションを指定できます。 [作成] メニューを使って、ダッシュボード、アラート、レポートなどを作成できます。 一致したイベント数とスキャンしたイベント数:サーチを実行すると、イベントを取得するにつれて 2 種類 の実行カウント (一致したイベント数とスキャンしたイベント数) が表示されます。サーチが完了すると、タ イムラインの上部には一致したイベント数合計が表示されます。タイムラインの下部、そしてイベントリス トの上部に表示されるカウントは、選 した時間範 内のイベント数を表しています。後述するように、情報を ドリルダウンしていくと、この値が 化します。 イベントのタイムライン:タイムラインは、各時点で発生したイベント数を視 的に表したものです。サーチ 結果でタイムラインが更新されたら、そこのバーにパターン (クラスタ) があることにお気づきかも知れませ ん。各バーの高さは、イベント数を表しています。タイムライン内のピークや谷間は、その時点でのアク ティビティ数の急 やサーバー停止などの状態を表している場合もあります。このように、タイムラインはイ ベントのパターンを強調したり、イベントアクティビティの最多/最少発生時点を把握したりする場合などに 役立ちます。タイムラインオプションは、タイムラインの上にあります。ズームイン/アウトしたり、グラフ のスケールを 更したりすることも可能です。 フィールドサイドバー:データのインデックスを作成する場合、デフォルトで Splunk はデータ内の情報を 自動的に認識、抽出します。このような情報はフィールドと呼ばれており、名前と値のペアで構成されてい ます。サーチを実行すると、サーチ結果の隣にあるフィールドサイドバーに、Splunk が認識したすべての フィールドが表示されます。イベント内の他のフィールドを選 して表示することもできます。また、このサ イドバーを非表示にして、結果領域を 張することも可能です。 選 されたフィールドは、サーチ結果に表示するように設定されたフィールドです。デフォルトでは、 ホスト、ソース、およびソースタイプが表示されます。 関連するフィールドは、サーチ結果から抽出されたその他のフィールドです。 結果領域:タイムラインの下にある結果領域には、サーチに一致したイベントが表示されます。 17 デフォルトでは、結果はイベントのリストとして、最新のイベントから表示されます。パネルの左上 にあるアイコンを使って、結果をテーブル (テーブルアイコンをクリック) またはグラフ (グラフアイコ ンをクリック) として表示できます。 サーチ結果をエクスポートする場合は、[エクスポート] ボタンを使用します。出力形式としては、 CSV、raw イベント、XML、または JSON を指定できます。 結果領域へのイベントの表示方法を 更するには、[オプション] を選 します。たとえば、結果の折り返 し、行番号の表示/非表示などのオプションを設定することができます。 サ ー チの開始 このトピックでは、サーチインターフェイスを使った簡単なサーチの実行方法を 明していきます。サーチイン ターフェイスについてまだ学習していない場合は、サーチ App のチュートリアルを先にご覧ください。 背景:あなたはオンラインの Flower & Gift ショップの、カスタマーサポートチームに所属しています。今日がこ の職場での初めての仕事になります。そこで、このショップの詳細を知りたいと考えています。知りたいことの一 例を以下に示します。 ショップで何を売っているの?各商品の値段は? サイトを訪問した人々の数は?今日購入された商品数は? 各日に一番売れた人気商品は? 今日は、オンライン Flower & Gift ショップのカスタマーサポートチームの一員として働く最初の日です。顧客か らの電話がありました。彼女に贈り物をしようと思っているのに、何回もサーバーエラーが発生して商品を購入で きないと言う苦情です。そこであなたはショップの Web アクセスログを調査することにしました。顧客は、自分 の IP アドレスが 10.2.1.44 であることをあなたに伝えています。 キ ー ワ ー ドサ ー チ Splunk 内に保管されているすべてのデータをサーチすることができます。データにどのような情報が含まれてい るのかを理解する必要はありません。サーチバーにキーワードを入力して Enter キーを押す (またはサーチバーの 最後にある 色の矢印) だけで、自在にサーチを実行することができます。 先行入力またはサーチアシスタント 前のトピックでは、サマリーダッシュボードで Web アクセスソースタイプ (access_combined_wcookie) をクリッ クすることで、サーチを実行しました。同じサーチを使って、この顧客の最近の Flower & Gift ショップへのアク セス履歴を探してみましょう。 1. サーチバーに顧客の IP アドレスを入力します。 sourcetype="access_combined_wcookie" 10.2.1.44 サーチバーに入力を開始すると、サーチアシスタントが表示されます。 サーチバーに文字を入力するにつれて、サーチアシスタントにはそれを補足する先行入力テキストまたは文脈上適 切なテキストが表示されます。このような文脈上のテキストは、データの内容に基づいて表示されます。入力を続 けると、[一致する単語] に表示される項目がそれに じて 化します。 サーチアシスタントには、サーチ用語に一致する項目数も表示されます。この値は、Splunk から返されるサーチ 結果数の目安になります。データ内に当該の用語またはフレーズが存在していない場合、サーチアシスタントには 表示されません。 ここでは、右側のパネルに表示される項目は無視します。後述のサーチ言語を学習したら、サーチアシスタントが より役に立つことでしょう。サーチアシスタントを表示したくない場合は、[自動表示をオフにする] をクリックし た後、サーチバーの下にある 色の矢印を使ってウィンドウを閉じてください。 18 他のキーワードサーチ 2. まだ実行していない場合は、IP アドレスのサーチを実行します。(Enter キーを押す) Splunk は、顧客のオンライン Flower & Gift ショップへのアクセス履歴を取得します。タイムラインも更新されま すが、これについては後ほど 明します。今は、サーチ結果に注目してください。 サーチを実行すると表示されるサーチ結果では、サーチバーに入力したキーワードが強調表示されます。 3. サーチ結果を一読してください。 イベント内には、オンラインショップに関連する単語やフレーズ (flower、product、purchase など) が存在してい ることが分かります。 顧客によると、商品の購入途中で問題が発生しています。そこで、購入を表す単語「purchase」で 索し、どのよ うな情報が表示されるのかを確認してみます。 4. サーチバーに「purchase」と入力してサーチを実行します。 sourcetype="access_combined_wcookie" 10.2.1.44 purchase キーワードのサーチ時に、大文字と小文字は区別されません。イベントデータの raw テキスト内にそれらのキー ワードが存在しているイベントが抽出されます。 Splunk が取得した結果の中には、顧客がオンラインショップから商品の購入を試みた多数のイベントが存在して います。かなり大 なようです。 論理演算子の使用 Apache サーバーログを理解している方ならば、access_combined フォーマットに注目すると、これらのイベント の大部分が成功を示す HTTP ステータス 200 となっていることにお気づきでしょう。今のところこれらのイベン トは必要ありません。顧客は、問題が発生していると報告しているからです。 Splunk は論理演算子 AND、OR、および NOT をサポートしています。サーチに論理演算子を指定する場合、演 19 算子は大文字で指定する必要があります。 5. 論理演算子 NOT を使用して、これらの成功したページリクエストを除外しましょう。以下のように入力しま す。 sourcetype="access_combined_wcookie" 10.2.1.44 purchase NOT 200 複数の単語の間には、常に AND 演算子が存在するものとみなされます。つまり、ステップ 5 は以下のように指定 した場合と同じ意味を持っています。 sourcetype="access_combined_wcookie" AND 10.2.1.44 AND purchase NOT 200 HTTP サーバー (503) およびクライアント (404) エラーが発生していることが分かります。しかし、顧客は特 にサーバーエラーのことを問題にしていました。そこで、不要なイベントをさらに除外していきます。 サーチ結果を使用して、論理演算子を素早く追加することができます。Splunk では、サーチ結果内の任意のセグ メントを選 、強調表示した後、キーボードやマウスを使ってそれらを素早く追加、削除、除外することができま す。 サーチ単語を追加するには、サーチ結果内の目的に単語またはフレーズを強調表示して、それをクリックし ます。(ステップ 6 で実行) サーチから単語を削除するには、サーチ結果内の強調表示されている単語やフレーズをクリックします。 サーチ結果からイベントを除外するには、目的の単語を Alt キーを押しながらクリックします。 6. サーチ結果の「404」上にマウスカーソルを移動して、Alt キーを押しながらそれをクリックします。 サーチ文字列に「NOT 404」が追加され、この単語を含むすべてのイベントがフィルタリングされます。 これらの結果から、顧客が購入完了手続きを ませようとすると、 回サーバーエラーが発生していることが分かり ます。顧客から報告があった問題を確認できました。さらに調査を続けて原因を特定していきます。 サ ー チの詳細 サーチを実行する場合、暗 的に search コマンドが実行されて、Splunk インデックスからデータが取得されま す。search コマンドにより、キーワード、フレーズ、フィールド、論理演算式、比較式を使って、取得するイベ ントを正確に指定することができます。ここでは、キーワードと論理演算式を使ったサーチについて 明していき ます。このチュートリアルの後半では、時間、フィールド、およびサーチ言語の使用方法の詳細を 明します。 このチュートリアルでは、比較演算式およびフレーズの完全一致演算子 (TERM() および CASE()) については取り 上げません。これらの方法については、『サーチマニュアル』の「サーチコマンドの使用」を参照してください。 次のステップ 準備が完了したら次のトピックに進んで、Splunk のタイムラインを使った 話形式での調査とトラブルシューティ 20 ングの実行方法を学習してください。 タイムラインの使用 このトピックは、簡単なサーチを使ったイベントの取得方法を理解していることを前提にしています。まだ理解し ていない場合は、キーワード、ワイルドカード、および論理演算子を使ったエラーの特定方法について 明してい る、前のトピックを参照してください。 タイムラインオプションについて タイムラインは、サーチバーとタイムレンジセレクタの下にあります。タイムライン上部には、以下のようなオプ ションが用意されています。 非表示:タイムラインを非表示にします。 ズームアウト:タイムライン中のより多くのイベントを表示します (タイムライン内に表示されている時間 範 が 化します)。 選 項目にズーム:イベントのサブセットを選 して、それにズームできます (タイムライン内に表示されてい る時間範 が 化します)。 デフォルトの [線形スケール] から [ 数スケール] に 更します。 タイムラインスケールの隣には、タイムラインに表示されている各バーの期間を表す凡例が用意されています。こ の期間はサーチの時間範 によって異なります。たとえば、各 24 時間のサーチを実行した場合、期間は 1 bar = 1 hour になります。そこでズームアウトした場合、タイムラインには 1 bar = 1 day の期間でより多くのイベント が表示されます。 タイムライン調査 さて、Flower & Gift ショップに り、先ほどの顧客 (10.2.1.44) に関する調査を続けましょう。この顧客は、彼女へ の贈り物の購入手続き中にエラーが発生すると報告しています。この顧客のエラーに関するログ情報が見つかった ので、次にその原因を特定したいと考えています。 この顧客の失敗した購入を探した前回のサーチから、引き続き作業を行っていきます。 1. 以下のサーチを実行します。 sourcetype="access_combined_wcookie" 10.2.1.44 purchase NOT 200 NOT 404 前のトピックでは、このダッシュボードのイベントビューア領域に記載されているサーチ結果にのみ注目していま した。ここでは、タイムラインに注目してみましょう。 タイムライン上の各バーの位置は、サーチに一致するイベントが発生した時期に しています。バーがない期間 は、その期間中にイベントが発生していないことを表しています。 2. いずれかのバー上にマウスカーソルを移動します。 ツールヒントに、そのバーが表す期間 (1 つのバーが 1 時間) に見つかったイベント数が表示されます。 バーの高さが大きいほど、その期間中により多くのイベント発生したことになります。イベント数の急 や急減 は、しばしば何か普段とは異なる事態が発生したことを把握する手がかりとなります。 21 3. いずれかのバーをクリックします (例:一番高いバー)。 この操作により、サーチ結果が更新され、その期間のイベントのみが表示されます。バーをクリックしても、サー チは実行されません。その期間内に限定した結果のプレビューが表示されます。この時点で他のバーを選 するこ とも可能です。 1 時間のサーチ期間は今回の目的には少し長すぎます。もう少しサーチ期間を絞り込んでみましょう。 4. 同じバーをダブルクリックします。 サーチが再実行されて、選 した 1 時間の期間のイベントのみが取得されます。 イベントビューアにも同じサーチ結果が表示されますが、このサーチはタイムレンジピッカーよりも優先されて、 「カスタム時間」が表示されます。(タイムレンジピッカーの詳細は後述)また、各バーが 1 分間の期間を表すよう になっています (1 つのバーが 1 分)。 5. 別のバーをダブルクリックします。 再びサーチが更新され、その 1 分間の期間のイベントが表示されます。各バーは、1秒間の期間のイベント数を表 しています。 さらにサーチを展開して、特定の秒に発生した事象を見てみましょう。 6. 時間範 は 更せずに、サーチバー内の前のサーチを以下の文字に置換します。 * Splunk はワイルドカードとして、「すべて」を意味するアスタリスク (*) の使用をサポートしています。これを利 用してすべてのイベント、またはキーワードの一部に基づくイベントを取得することができます。今までは、単に Web アクセスログをサーチしてきました。このサーチは、この時間範 に発生したあらゆる事象を表示することを Splunk に指示します。 22 このサーチは、サーバー上のすべてのログからのイベントを返します。この操作では、他のユーザーの Web 活動 が表示されると予想していました。しかし、代わりに一連の MySQL データベースエラーが表示されています。こ れらのエラーが、顧客の商品購入失敗の原因です。これで、IT 運用チームにこの問題を報告することができま す。 次のステップ 準備が完了したら、次のトピックに進んで、異なる時間範 のサーチについて学習してください。 時間範 を 更 このトピックは、アドホックサーチの実行とタイムラインの使用について理解していることを前提にしています。 分からない場合は、前のトピックで「 索」および「タイムラインの使用」についてご確認ください。 このトピックでは、過去の時間範 に するサーチのスコープを絞り込む方法について 明していきます。Splunk の サーチをそのまま使用すると、すべてのデータを 象にサーチが実行されます (デフォルトのサーチ 象時間範 は 「全時間」)。大量のデータが存在していると、15 分前に発生したイベント、昨晩に発生したイベント、または先 週に発生したイベントのみを調査する場合に、全時間を 象にサーチを実行すると、目的の結果が得られるまでに とても時間がかかってしまいます。イベントの発生時期に関する情報が分かっている場合は、サーチ 象をその時 間帯に限定すればより素早く結果を得ることができます。 時間範 の選 Flower & Gift ショップのカスタマーサポートは、新たな日を迎えています。朝のコーヒータイムを しむ前に、何 か問題が発生していないかどうか簡単なサーチを実行してみましょう。 1. サーチダッシュボードから、全時間を 象に以下のサーチを実行します。 error OR failed OR severe OR (sourcetype=access_* (404 OR 500 OR 503)) サーチの指定方法が少し違っていることにお気づきでしょうか。 複 なサーチを実行するために、括弧を使って式をグループ化しています。論理演算式を評価する際には、一 番内側の演算子が先に評価され、次に外側の演算子が順次評価されていきます。括弧内のすべての演算子の 評価が完了すると、OR 句が評価され、次に AND または NOT 句が評価されます。 また、ここではワイルドカード「access_*」を使って、Web アクセスログを照合しています。ソースの種類 が異なる Apache サーバーログがある場合 (access_common や access_combined など)、これによりすべての ログに してサーチが行われます。 このように指定すると、「全時間」 (この例のサンプルデータでは先週) を 象に、イベント内の一般的なエラーが サーチされます。これは、1 種類のログだけではなく、インデックス内のすべてのログをサーチします。イベント データ内にある「error」、「failed」、または「severe」と一致する任意の情報が返されます。また、ログが Web アクセスログの場合、HTTP エラーコード「404」、「500」、または「503」が 索されます。 23 このサーチでは大量のエラーが返されます。まだ週の半ばであっても、「全時間」で発生したすべてのエラーを見 たいとは思わないでしょう。まだ仕事を始めたばかりで、昨晩や過去 1 時間などの短時間の情報があれば十分で す。ここでは、このデータセットの制限もあるため、昨日に発生したエラーを探してみましょう。 2. タイムレンジメニューをクリックして、[その他] > [昨日] を選 します。 3. リストから時間範 を選 すると、自動的にサーチが実行されます。実行されない場合は、Enter キーを押してく ださい。 このサーチでは、Web アクセスログだけではなく、すべてのログから一般エラーに関するイベントが返されま す。(サンプルデータファイルが 1 日以上古い場合でも、[カスタム時間] を選 してお手持ちのデータの最終日を指 定すれば、これらの結果を得ることができます。) サーチ結果を一読します。MySQL データベースエラーと 404 エラーがあるようです。さて、新入社員にコーヒー を持ってくるように頼んだら、その間に Web チームに 404エラーのことを、そして IT 運用チームには繰り返し発 生しているサーバーエラーのことを報告しましょう。 その他の時間範 オプション Splunk には、サーチの時間範 を独自に設定できるオプションや、到着したイベントストリームを 続的にサーチす るオプションが用意されています。 [リアルタイム] を利用すると、到着したイベントデータストリームを 続的にサーチできます。サンプルデー タは 1 回限りで取り込んだデータなので、現時点でリアルタイムサーチを実行しても新たな結果が得られる ことはありません。このオプションは後ほど試してみましょう。リアルタイムサーチの詳細および実行方法 については、『サーチマニュアル』の「リアルタイムサーチとレポートについて」を参照してください。 24 [カスタム時間] を選 すると、新しいウィンドウが表示されます。このウィンドウでは、特定の日付、相 日 付、リアルタイムウィンドウなどに基づく独自の時間範 を定義したり、サーチ言語を使用したりすることが できます。カスタム時間範 の設定方法については、『サーチマニュアル』の「サーチへの時間修飾子の指 定」を参照してください。 次のステップ ここまでは、イベント内の raw テキストを照合する単純なサーチを実行してきました。まだ Splunk でできること の、ほんの表面しか学習していません。次に進む準備ができたら、次のトピックでフィールドとそれを使ったサー チ方法について学習しましょう。 フィ ー ルドを使用したサ ー チ このトピックは、簡単なサーチの実行およびタイムレンジピッカーとタイムラインの使用方法を理解していること を前提にしています。まだ理解していない場合は、「サーチの開始」から始まる前のトピックを参照してくださ い。 キーワードと時間範 のみを指定した単純なサーチでも、データからさまざまな情報を引き出せることが分かりま した。しかし、まだ Splunk の高度なサーチ/レポート機能を有効活用しているとは言えません。そのためには、ど のようなフィールド存在しており、それをどのように使用するかを理解する必要があります。ここでは、以下の事 項を学習していきます。 Splunk が自動的に抽出するデフォルトのフィールドとその他のフィールド フィールドサイドバーと [フィールド] ダイアログを使った有用なフィールドの 索方法 フィールドによるサーチ 先ほどのオンラインの Flower and Gift ショップの例に りましょう。午前中は、一般的な問題の調査と、発見した 問題の他のチームへの報告に費やされました。オンラインショップや顧客について数多くのことが分かりとても 足していますが、それらの情報を収集して他のチームメンバーと共有したいと考えています。 そのための最良の方法は、フィールドを使用することです。 フィ ー ルドの 概 要 フィールドとは フィールドは、マシンデータ内にさまざまな形式で存在しています。しばしば、フィールドは値 (行内の固定さ れ、区切られた位置に存在) または名前と値のペア (各フィールド名に 1 つの値) と言う形で存在しています。複数 の値を持つフィールドも存在しています。この場合、そのフィールドは 1 つのイベント内に複数回登場し、それぞ れが異なる値を保有しています。 Splunk のフィールドは、サーチ可能な名前/値のペアで、あるイベントを他のイベントと区別しています (すべて のイベントが同じフィールドとフィールド値を持つことはない)。フィールドを利用すれば、より目的に適した サーチを作成し、本当に必要としているイベントを取得することができます。また、フィールドによりサーチ言語 を有効活用して、グラフやレポートを作成することができます。 フィールドの例としては、Web サーバーにアクセスした IP アドレスを表す clientip、イベントのタイムスタンプ を表す _time、およびサーバーのドメイン名を表す host などが げられます。複数値フィールドの一般的な例とし ては、メールアドレスフィールドが げられます。[From] フィールドには単一のメールアドレスしかありません が、[To] および [Cc] フィールドには複数のメールアドレスが指定されていることもあります。 詳細は、『Knowledge Manager Manual』のフィールドに関する記事を参照してください (その他さまざまな情報 が記載されています)。 抽出されたフィールド Splunk は、イベントデータからフィールドを 2 回抽出します。イベントを処理してデータのインデックスを作成 する際に、デフォルトのフィールドと他のフィールドを抽出します。また、サーチの実行時には、異なるフィール ドセットが抽出されます。詳細は、『インデクサーとクラスタマニュアル』の「インデックス時とサーチ時」を参 照してください。 インデックス時に Splunk は自動的にデフォルトのフィールドを探し出して抽出します。これらのフィールドに は、host、source、および sourcetype (すでにご存じかも知れませんが) が含まれます。すべてのデフォルト フィールドの一覧については、『Knowledge Manager Manual』の「Use default fields」を参照してください。 また、Splunk はサーチ時 (サーチの実行時) にも特定のフィールドを抽出します。このようなサーチの例のいくつ かは、後半で取り上げています。詳細は、『Knowledge Manager manual』の「Overview of search-time field 25 extractions」を参照してください。 フィ ー ルドサイドバ ー とダイアログ 1. サーチダッシュボードに って、Web アクセス活動をサーチします。タイムレンジピッカーから [その他] > [昨日] を選 します。 sourcetype="access_*" 実際には、当初からフィールドを使用しています。sourcetype=access_* のサーチ時には 回、Splunk に Web アク セスログからのイベントのみを取得するように Splunk に指示することになります。 特定のフィールドをサーチするには、フィールド名と値を指定します。 fieldname="fieldvalue" はフィールド名、そして access_combined_wcookie はフィールド値になります。ここで、ワイルド カードが指定された値は、access_ から始まるすべての値と一致します (access_common、access_combined,、 および access_combined_wcookie を含む)。 sourcetype 注意:フィールド名では大文字と小文字が区別されますが、フィールドの値では区別されません。 2. サーチ結果を一読します。 Apache ログの access_combined フォーマットを理解している方ならば、以下のような各イベントの情報にお気 づきでしょう。 Web サイトにアクセスするユーザーの IP アドレス。 ページリクエストと参照ページの URI と URL。 各ページリクエストの HTTP ステータスコード。 ページリクエストメソッド。 Splunk がこれらのイベントを取得するにつれて、フィールドサイドバーの [選 されたフィールド] および [関連す るフィールド] が更新されます。これらは、Splunk がデータから抽出したフィールドです。 デフォルトフィールドの host、source、および sourcetype は選 されたフィールドで、サーチ結果に表示されま す。 3. [関連するフィールド] に移動して、Splunk が抽出したその他のフィールドを参照します。 Web アクセスログで利用されているフィールド名が分かります。たとえば、clientip, method, and status が存 在しています。これらのフィールドはデフォルトのフィールドではありません。サーチ時に抽出されたものです (一般的には)。 4. フィールドサイドバーの [編集] リンクをクリックします。 [フィールド] ダイアログに Splunk が抽出したすべてのフィールドが表示されます。 [利用可能なフィールド] は、Splunk が現在のサーチで識別したフィールドです (これらのフィールドの一部 は [関連するフィールド] に表示されていました)。 [選 されたフィールド] は、サーチ結果に表示するように自分で ([利用可能なフィールド] から) 選 したフィー ルド (デフォルトでは、host, source, and sourcetype が選 されている) です。 26 5. [利用可能なフィールド] をスクロールしながら確認します。 すでに見慣れた、Web アクセスログから Splunk が抽出したフィールドが存在しています。また、Splunk が定義 したその他のデフォルトフィールドも表示されています。これらのフィールドは、各イベントの timestamp (date_* から始まるすべての項目)、句読点 (punct)、および場所 (index) に基づくフィールドです。 オンラインショップに関連する他の抽出されたフィールドも存在しています。たとえば、action、category_id、 および product_id などが存在しています。同僚に聞いたら、これらのフィールドは以下の事項を表していること が分かりました。 フィールド名 明 action オンラインショップでのユーザーの行動。 category_id ユーザーが表示または購入している商品の種類。 product_id ユーザーが表示または購入している商品のカタログ番号。 6. [利用可能なフィールド] リストで、action、category_id、および product_id を選 します。 7. [保存] をクリックします。 サーチビューに ると、サーチ結果には選 したフィールドが含まれます (その特定のイベント内に存在している場 合)。イベントによってフィールドは異なります。 27 フィールドサイドバーは、単に Splunk がデータから収集したフィールドを表示するだけではありません。これら のフィールドに存在している値数も表示されます。先ほど選 したフィールドに して、action には 2 つ、 category_id には 5 つ、product_id には 9 つの値が存在しています。これらが、各フィールドに存在しているすべ ての値と言う訳ではありません。これらは、単に Splunk がサーチ結果から分かっている値です。 これらの値は何でしょうか? 8. [選 されたフィールド] から、action フィールドの [action] をクリックします。 action フィールドのフィールドサマリーが表示されます。 このウィンドウによると、このサーチ結果セットから Splunk は action に して 2 つの値を 出し、それらは purchase と update であることが分かります。また、action はサーチ結果の 71% に存在していることが分かりま す。つまり、Web アクセスイベントの 3/4 は、商品購入または更新 (買い物かごの数量 更など) に関連するもので あることが分かります。 9. このウィンドウを閉じて、選 した他の 2 つのフィールド category_id (ショップが販売している商品の種類) お よび product_id (商品のカタログ名) を見ていきましょう。 データ内にオンラインの Flower and Gift ショップに関連するどのような情報が存在しているのかが、ある程度分 かってきました。オンラインショップでは、花、ギフト商品、 葉植物、キャンディ、および風船類を販売してい ます。これらの商品を表すフィールド category_id および product_id を使って、顧客がどのような商品を購入し ているのかを見ていきましょう。 フィ ー ルドを使ったサ ー チ 次の 2 つの例は、フィールドを使ったサーチと使わないサーチを比較する目的で用意されています。 例1 データ内のエラーをチェックするために実行したサーチに ります。タイムレンジピッカーから [その他] > [昨日] を 選 します。 error OR failed OR severe OR (sourcetype=access_* (404 OR 500 OR 503)) 28 もう一度サーチを実行します。ただし、今回はサーチにフィールドを使用します。 HTTP エラーコードは、status フィールドの値です。サーチは以下のようになります。 error OR failed OR severe OR (sourcetype=access_* (status=404 OR status=500 OR status=503)) 2 つのサーチのイベント数の違いにお気づきでしょうか。2 番目のサーチはより 象を絞り込んでいるため、返され るイベント数も少なくなります。 任意のキーワードに基づいて単純なサーチを実行する場合、データの raw テキストに してサーチが行われます。 サーチにフィールドを指定すると、その特定のフィールド/値のペアを持つイベントに してサーチが行われます。 例2 あなたがデータ内のフィールドについて学習する前に、このサーチを実行してオンラインショップで花が購入され た回数を表示したことがあるかもしれません。 sourcetype=access_* purchase flower* 「flower」と入力するにつれて、サーチアシスタントには先行入力として「flower」と「flowers」の両方が表示さ れます。どちらが目的のフィールドか分からないため、ワイルドカードを使って両方をサーチの 象にします。 多数のサーチ結果をスクロールしていくと、一部のイベントに flowers 以外の値を持つ action=update や category_id があることにお気づきでしょう。これらは目的のイベントではありません。 代わりにこのサーチを実行してください。タイムレンジピッカーから [その他] > [昨日] を選 します。 29 sourcetype=access_* action=purchase category_id=flower* 2 番目のサーチで、ワイルドカード文字「flower*」を使用しているにもかかわらず、category_id の 1 つの値しか 一致していません (FLOWERS)。 各サーチで Splunk が取得したイベント数の違いに注目してください。2 番目のサーチでは、イベント数が大幅に 減っています。フィールドを使ったサーチはより 象を特定し、より正確にマッチするデータを取得することがで きます。 次のステップ フィールドの使用方法が理解できたら、サーチ結果をフィルタリング、 更、並べ替え、グループ化するために、 サーチ言語を使用してみましょう。準備が完了したら、次のトピックに進んでサーチ言語の使用方法について学習 してください。 サ ー チ言語について このトピックは、キーワードやフィールド/値のペアを使った簡単なサーチの実行方法を、理解していることが前 提になっています。理解していない場合は、まず「フィールドを使ったサーチ」をご覧ください。 さて、オンラインの Flower & Gift ショップのカスタマーサポートオフィスに ります。この時点で実行したサーチ は Splunk インデックスからの一致するイベントのみを取得しています。たとえば、前のトピックでは、このサー チを使って花の購入状況を確認しています。 sourcetype=access_* action=purchase category_id=flowers このサーチ結果からは、購入された花の数の概算値が分かります。ただし、これでは以下のような疑問に する回 答は得られません。 オンラインショップでもっとも購入された商品は? 花を購入した顧客数は?それぞれの顧客が購入した花の数は? このような疑問の答えを得るには、Splunk のサーチ言語を使用する必要があります。サーチ言語には、サーチ結 果をフィルタリング、 更、並べ替え、グループ化するための、さまざまなコマンド、引数、関数が用意されてい ます。このチュートリアルでは、それらのごく一部を使用していきます。 サ ー チアシスタントによるサ ー チの作成 例 1: オ ン ラ イ ン シ ョ ッ プ で も っ と も 購 入 さ れ た 商 品 は ? 1. ダッシュボードに って、昨日の購入にサーチを制限します。 sourcetype=access_* action=purchase サーチバーに入力していくと、サーチアシスタントに search コマンドの構文と使用に関する情報が表示されます (右側)。サーチアシスタントが表示されない場合は、サーチバーの左下にある の矢印をクリックします。 30 サーチバーに入力していくと、サーチアシスタントにキーワードの先行入力が表示されることは、以前に学習しま した。また、サーチ方法に関する簡単な 明も表示されます。イベントの取得方法についてはすでに一通り学習し ました。さて、サーチコマンドの使用を開始しましょう。 2. サーチバーにパイプ文字「|」を入力します。 パイプはコマンドを使用することを Splunk に知らせるための文字です。パイプの左側のサーチからのサーチ結果 が、使用するコマンドの入力として渡されます。あるコマンドの結果を別のコマンドの入力として渡すことで、一 連のサーチコマンド (パイプライン) を実行できます。 今回はオンラインショップでもっとも購入されている商品を探します。リストを見ると、top コマンドあたりが役 に立ちそうです。 3. [一般的な次のコマンド] で、[top] をクリックします。 サーチ文字列に top コマンドが追加されます。 サーチアシスタントの 明と使用例によると、top コマンドは「フィールドで一番多い値を表示します。」となって います。まさにこれこそが必要な機能です。 目的は、オンラインショップでどの種類の商品が一番購入されているのかを確認することです (花だけではない)。 また、[関連するフィールド] も表示されています。これをクリックすると、それがサーチに追加されます。 4. リストから category_id フィールドをクリックするか、またはサーチバーにこれを入力してサーチを完成させま す。 sourcetype=access_* action=purchase | top category_id このサーチでは、category_id の上位値またはもっとも一般的な値のテーブルが表示されます。top コマンドのデ フォルトでは、上位 10 件の値が表示されます。ただし、商品の種類は 5 種類です。そのため、5 種類すべてが降 順にソートされて表示されます。各タイプの隣には、その数が記載されています。 31 top コマンドは、新たな 2 種類のフィールドも返します。count は各フィールド値の発生回数、percent は合計カ ウントと比較したその数の割合を表します。top コマンドの詳細は、『Search reference manual』を参照してくだ さい。 サ ー チ結果のドリルダウン 前回のサーチでは、オンラインショップで販売されている商品、およびそれらの商品の購入数を表すテーブルが返 されました。しかし、たとえば花など特定の商品のより詳細な情報を知りたい場合もあります。 例 2: 花 の 購 入 数 は ? 1. 結果テーブルの花 (Flowers) に する行をクリックします。 新たなサーチが開始されます。サーチが更新され、フィールド/値のペア category=flowers のフィルタが入れられ ます。このペアは、例 2 で結果テーブルでクリックした行の項目です。 Splunk のドリル ダウン操作により、サーチ結果のテーブルやチャートから、さらに詳細な情報を調査することが できます。ドリルダウン操作の詳細は、『データのビジュアル化マニュアル』を参照してください。 返されたイベント数は、花の購入回数を表しています。 例 3: 何 人 の 顧 客 が 花 を 購 入 し た の か ? 1. ここでは、花の購入に関する情報を調査しています。そこで、前の例のサーチから続けて作業を行います。 sourcetype=access_* action=purchase category_id=flowers Flower & Gift ショップにアクセスする顧客は IP アドレスで区別できます。IP アドレスは、clientip フィールドの 値です。 2. stats コマンドと distinct_count() または dc() 関数を使用します。 sourcetype=access_* action=purchase category_id=flowers | stats dc(clientip) パイプ文字でサーチ結果を stats コマンドに入力し、distinct_count() 関数でそれらのイベント内の一意の clientip 値の数をカウントします。これにより、単一値が返されます。 32 この値から、オンラインショップで花を購入した顧客は約 300 人いたことが分かります。 例 4a: そ れ ぞ れ の 顧 客 が 購 入 し た 花 の 数 は ? 先ほどの例では、花を購入した一意の顧客数を調査しました。そのサーチを利用していきます。 1. stats コマンドを使用します。 sourcetype=access_* action=purchase category_id=flowers | stats count count() 関数は単一値であるイベント数を返します。(これは例 2 の結果と一致するはずです。) 今回は、この中で各顧客が購入した花の数を調査していきます。 2. stats コマンドに by 句を追加します。 sourcetype=access_* action=purchase category_id=flowers | stats count BY clientip このサーチでは、各顧客 (clientip) および購入された花の数 (count) を含むテーブルが返されます。 サ ー チ結果を再フォ ー マットします。 このテーブルの見出しが何を表しているか理解しているかもしれませんが、誰もが一目見るだけで分かるような形 ではありません。上司や他のメンバーに結果を見せるには、少し工夫が必要です。 例 4b: 4a の 結 果 の 表 示 方 法 を 改 善 す る に は ? 例 4a から、結果の表示方法を少し 更してみましょう。 1. まず、count フィールドの名前を 更します。 sourcetype=access_* action=purchase category_id=flowers | stats count AS "# Flowers Purchased" by clientip コマンドの構文では、AS 句を使ってフィールド名を 更することができます。一連のフレーズを新しい フィールド名にする場合は、二重引用符で みます。stats コマンドの構文では、 by 句内のフィールド名の 更は行 えません。そのためには、別のコマンドを使用する必要があります。 stats stats コマンドとその使用法、引数、関数の詳細は、『Search Reference manual』の stats コマンドの 明を参照し てください。 2. rename コマンドを使って、clientip の名前を 更します。 sourcetype=access_* action=purchase category_id=flowers | stats count AS "# Flowers Purchased" by 33 clientip | rename clientip AS Customer これにより、テーブルの見出し「clientip」および「count」が、それぞれ「Customer」 (顧客) および「# Flowers purchased」 (花の購入数) に 更されます。 rename コマンドの詳細は、『Search Reference manual』の rename コマンドの 明を参照してください。 次のステップ 2 つのサーチを実行する際に、結果を保存して後ほど再利用したり、同僚と共有したりすることができます。次の トピックでは、サーチの保存および共有方法について学習していきます。 サ ー チの保存 このトピックは、実行しているサーチに 足していることを前提にしています。そうでない場合は、前のトピック に って「フィールドを使用したサーチ」について学習してください。 サ ー チの保存について Splunk には、[保存] メニューを使ってサーチまたはサーチ結果を保存するための、さまざまなオプションが用意 されています。サーチは実行中または完了後に保存することができます。このトピックでは、Splunk Web を使っ たサーチの手動保存および保存したサーチへのアクセス方法の基本を紹介する前に、保存オプションの概要を簡単 に 明していきます。 以下の保存オプションが用意されています。 サーチの保存...:サーチを保存します。これにより、サーチ文字列を再入力することなく、手 にサーチを再 実行することができます。詳細は、『Knowledge Manager Manual』の「Save searches and share search results」を参照してください。 結果の保存:サーチ結果を保存します。保存した結果は、ジョブ管理から取り出せます。 結果の保存と共有:サーチ結果を保存して、結果を共有するための URL を取得します。詳細は、「サーチ の保存とサーチ結果の共有」を参照してください。 サ ー チの保存チュ ー トリアル Flower & Gift ショップに話しを します。サーチを実行して、昨日にエラーが発生していないかどうかを確認しま した。これは 朝実行するサーチです。 日手動入力する代わりに、このサーチを保存することにします。 例 1:昨日発生したすべてのエラーを表示するサーチを実行します。 error OR failed OR severe OR (sourcetype=access_* (status=404 OR status=500 OR status=503)) 1. サーチバーの下にある [保存] をクリックします。 34 2. リストから [サーチの保存...] を選 します。 [サーチの保存] ダイアログボックスが表示されます。 3. サーチ名を指定します。ここでは、「Errors (Yesterday)」と指定します。 4. [完了] をクリックします。サーチが保存されたことを知らせるメッセージが表示されます。 5. 保存 みサーチは [サーチとレポート] リストにあります。 保存 みサーチ名に「Error」が含まれているため、Splunk はそれを [エラー] のサブメニューに記載しています。 保存 みサーチの隣にある のドットは、それがローカル Splunk アカウントのサーチであることを表しています。 現時点では、この保存 みサーチを利用できるのはあなただけになります。このサーチをチーム内の他のメンバー にも利用させる場合は、それらの人々もアクセスできるようにグローバル保存 みサーチとして設定する必要があ ります。詳細は、『Knowledge Manager Manual』の「Saving searches and sharing search results」を参照して ください。 サ ー チの管理とスケジュ ー ルについて サーチとレポートの管理 サーチを 更する場合、[サーチとレポート] メニューの [サーチとレポートの管理] を選 します。この操作により、 Splunk 管理のページに移動します。ここには、自分がアクセスできるすべてのサーチとレポートが表示されます (アクセスが許可されている場合)。このリストから、目的のサーチを選 することができます。選 すると、その サーチの編集ウィンドウが表示され、サーチ文字列、 明、時間範 、およびスケジュールオプションを編集するこ 35 とができます。保存 みサーチの管理の詳細は、『Knowledge Manager Manual』を参照してください。 保存 みサーチとアラートのスケジュール Enterprise ライセンスをお持ちの場合、保存したサーチの実行をスケジュールしたり、スケジュール みサーチに基 づくアラートを設定したりすることができます。初めて Splunk をダウンロードする場合は、60 日間有効な Enterprise トライアルライセンスが付いています。Free ライセンスをお使いの場合は、保存 みサーチをスケ ジュールすることはできません。保存 みサーチのスケジュールとアラートの設定の詳細は、『アラートマニュア ル』を参照してください。 次のステップ これ以降、サーチ実行後にはそれを保存します。前回のサーチでは、オンラインショップで各顧客が購入した花の 数が分かりました。しかし、ある特定の日にもっとも商品を購入した顧客を探す場合はどうしたらよいでしょう か?準備ができたら、次のトピックに進みましょう。次のトピックでは新たなサーチ方法、サブサーチの使用につ いて学習していきます。 サブサ ー チの使用 前回のトピック、「サーチ言語の使用」ではサーチコマンド、サーチパイプライン、およびドリルダウン操作につ いて紹介しました。 ここでは、よく利用している買い物客とその購入内容を 索するサーチについて紹介していきます。目的の結果を 得るための、2 種類のアプローチ (サブサーチを使用およびサブサーチを使用しない) を取り上げています。 サブサーチは、サーチパイプラインを引数に持つサーチです。サブサーチは角括弧で まれ、最初に評価されま す。サブサーチの結果をプライマリ、または外部サーチの引数として使用できます。サブサーチの詳細は、『サー チマニュアル』を参照してください。 例 1:サブサ ー チを使用しない Flower & Gift ショップに話しを します。上司から、昨日にもっとも商品を購入した顧客と購入明細を記載したレ ポートの作成を命じられました。単純なサーチだけでこの結果を得ることは容易ではありません。詳細を 討して いきましょう。 まず、昨日オンラインショップに頻繁に訪れた顧客をサーチします。 1. top コマンドを使って、サーチを昨日に限定します。 sourcetype=access_* action=purchase | top limit=1 clientip コマンドを使って、clientip の結果を 1 つだけ返すようにします。複数の上位購入顧客を表示する場合は、こ の制限値を 更してください。使用方法と構文については、『サーチリファレンスマニュアル』の top コマンドの 明を参照してください。 top このサーチは、clientip 値を 1 つ返します。これを使って、VIP 顧客を判断します。 2. stats コマンドでこの VIP 顧客の購入数を数えます。 sourcetype=access_* action=purchase clientip=10.192.1.39 | stats count by clientip 36 このサーチは count() 関数を使用し、clientip の購入数のみを返します。また、何を購入したかに関する情報も必 要なので、別の stats コマンドを使用します。 3. この目的で、values() 関数を使用することができます。 sourcetype=access_* action=purchase clientip=10.192.1.39 | stats count, values(product_id) by clientip これにより、購入内容を製品 ID で表す列がテーブルに追加されます。 この方法の欠点は、このテーブルを作成するために 回 2 つのサーチを実行しなければならないことです。任意の 時間範 における上位購入者は、常に同じとは限りません。 使用方法と構文については、『サーチリファレンスマニュアル』の stats コマンドの 明を参照してください。ま た、その他の stats 関数の一覧については、『サーチリファレンスマニュアル』の「stats 関数の一覧」を参照し てください。 例 2:サブサ ー チを使用する 1. パート 1 のサーチ内でサブサーチを使用します。以下のように入力またはコピーします。 sourcetype=access_* action=purchase [search sourcetype=access_* action=purchase | top limit=1 clientip | table clientip] | stats count, values(product_id) by clientip コマンドは count および percent フィールドも返すため、table コマンドを使って clientip 値のみを保持しま す。 top 同じ時間範 で実行すると、これらの結果は前の結果と一致するはずです。ただし、時間範 を 更すると、上位購入 客が異なり別の結果が表示されることもあります。 2. 結果を参照しやすい形式に再フォーマットします。 sourcetype=access_* action=purchase [search sourcetype=access_* action=purchase | top limit=1 clientip | table clientip] | stats count, values(product_id) as product_id by clientip | rename count AS "How much did he buy?", product_id AS "What did he buy?", clientip AS "VIP Customer" 次のステップ このレポートでも十分ですが、より見やすくすることも可能です。たとえば、上司が製品 ID を見て商品を思い浮 37 かべられるとは思いません。このような場合、VIP 顧客の購入明細を分かりにくい ID ではなく、製品名で表示で きます。次に進む準備が完了したら、次のトピックでフィールドルックアップを使ったイベントへの情報の追加方 法を学習していきます。 フィ ー ルドルックアップの使用 前回のトピックではサブサーチの使用について取り上げました。まだ理解していない方は、前に って「サブサー チの使用」方法を学習してください。 このトピックでは、フィールドルックアップを使って新しいフィールドをイベントに追加する方法について 明し ていきます。 フィールドのルックアップとは? フィールドのルックアップにより、イベントデータ内のフィールドとマッチする外部 CSV ファイル内の フィールドを参照することができます。このマッチを使用して、より有益な情報やサーチ可フィールドをイベ ントデータに追加することで、データの価値をさらに高められます。 たとえば、フィールドのルックアップを使って Web アクセスイベントデータに HTTP ステータスコードを追 加する方法の詳細については、『Knowledge Manager Manual』を参照してください。 前の例では、上位購入客が購入した商品数とその商品名を記載したレポートテーブルを作成しました。商品は製品 ID 番号で記載されており、それ自体ではどのような商品なのかを思い浮かべることは困難です。このレポートを 上司に提出する前に、実際の製品名を追加してみましょう。この情報はデータ内には存在していませんが、フィー ルドのルックアップを使って外部ファイルから追加することができます。 続行するには、この CSV ファイル product_lookup.csv.zip をダウンロードしてください。 重要:このチュートリアルの残りの作業を完了するためには、このトピックの手順に従う必要があります。このト ピックの手順に従って作業を行わない場合、以降のトピックのサーチで正しい結果は得られません。 ルックアップの使用 1. Splunk のナビゲーションメニューで、右上にある [管理] をクリックします。 Splunk 管理に移動します。ここでは、Splunk サーバーの App、ナレッジオブジェクト、その他の設定 (システ ム、データ、デプロイ、認証など) にアクセス、編集することができます。これらのオプションのいずれかが表示 されない場合は、それを表示または編集する 限がないことを意味しています。 ここでは、ナレッジ設定のみが関係しています。 2. [ナレッジ] で、[ルックアップ] をクリックします。 38 [管理] > [ルックアップ] ビューに移動します。 このビューでは、[ルックアップテーブルファイル]、[ルックアップ定義]、および [自動ルックアップ] のテーブル 内のリンクをクリックして、既存のルックアップを編集することができます。新しいルックアップを追加するに は、当該ルックアップ項目のアクション下にある [新規追加] をクリックします。 ルックアップファイルのアップロ ー ド [管理] > [ルックアップ] ビューで: 1. [ルックアップテーブルファイル] の [アクション] から、[新規追加] をクリックします。 [管理] > [ルックアップ] > [ルックアップテーブルファイル] ビューに移動します。ここでは、フィールドルック アップに使用する CSV ファイルをアップロードすることができます。 2. [宛先 App] は [サーチ] のままにします。 これは、ルックアップテーブルファイルをサーチ App に保存することを Splunk に指示しています。 3. [ルックアップファイルのアップロード] で、アップロードする CSV ファイル (product_lookup.csv) を選 しま す。 4. [宛先ファイル名] で、ファイル名として product_lookup.csv を指定します。 この名前を使ってルックアップ定義内でファイルを参照します。 5. [保存] をクリックします。 これにより、ルックアップファイルが Splunk のサーチ App にアップロードされます。ただし今は、設定するルッ クアップの種類を定義する必要があります。 注意:Splunk は、ファイルを認識しないし、ファイルをアップロードすることはできません。アップロードする 前に、解凍されていることをご確認ください。 6. 階層リンクをクリックして、[管理] > [ルックアップ] に ります。 39 フィ ー ルドルックアップの定義 [管理] > [ルックアップ] ビューで: 1. [ルックアップ定義] の [アクション] から、[新規追加] をクリックします。 これにより、[管理] > [ルックアップ] > [ルックアップ定義] ビューに移動します。ここでは、フィールドルック アップを定義できます。 2. [宛先 App] は [サーチ] のままにします。 3. ルックアップの名前を product_lookup にします。 4. [タイプ] で、[ファイルベース] を選 します。 5. [ルックアップファイル] で、[product_lookup] (ルックアップテーブル名) を選 します。 6. [時間ベースのルックアップの設定] および [詳細オプション] の選 は解除状態のままにします。 7. [保存] をクリックします。 これで、Splunk は product_lookup がファイルベースのルックアップであることを認識します。 ルックアップの自動化 [管理] > [ルックアップ] ビューで: 1. [自動ルックアップ] の [アクション] から、[新規追加] をクリックします。 これにより、[管理] > [ルックアップ] > [自動ルックアップ] >> [新規追加] ビューに移動します。ここでは、ルック アップを自動実行できます。 40 2. [宛先 App] は [サーチ] のままにします。 3. 自動ルックアップの名前を product_lookup にします。 4. [ルックアップテーブル] で、[product_lookup] を選 します。. 5. [適用先] および [named] で、[sourcetype] を選 して、「access_combined_wcookie」と入力します。 6. [ルックアップ入力フィールド] に、以下のように入力します。 入力フィールドは、ルックアップテーブル内のフィールドとのマッチに使用する、イベントデータ内のフィールド です。 7. [ルックアップ出力フィールド] に、以下のように入力します。他のフィールドも追加する場合は、[他のフィー ルドの追加] リンクを使用します。 出力フィールドは、入力フィールドのマッチングに基づいてイベントデータに追加する、ルックアップテーブル内 のフィールドです。ここでは、各 product_id の料金を含む price フィールド、および product_id の 明的な名前 を含む product_name フィールドを追加します。 8. [フィールド値を上書き] は選 を解除します。 このボックスを選 すると、イベントデータ内に存在する任意のフィールドが、ルックアップテーブルからマップ する するフィールドの値で上書きされてしまいます。ここでは 2 つの新規フィールドを追加するため、このオプ 41 ションを気にする必要はありません。 9. [保存] をクリックします。 サーチダッシュボードに って ([<< サーチに る] をクリック)、時間範 が昨日の Web アクセスアクティビティに す るサーチを実行します。 sourcetype=access_* フィールドサイドバーまたは [フィールド] ダイアログをスクロールすると、追加した新しいフィールドを確認で きます。 新しいルックアップフィ ー ルドを使ったサ ー チ 先ほどのサブサーチ例を実行して、VIP 顧客の購入内容を確認できるようになりました。今回は、product_id フィールドをより分かりやすい product_name で置き換えます。 sourcetype=access_* action=purchase [search sourcetype=access_* action=purchase | top limit=1 clientip | table clientip] | stats count, values(product_name) AS product_name by clientip | sort - count | rename count AS "How much did he buy?", product_name AS "What did he buy?", clientip AS "VIP Customer" 結果は前のサブサーチの例と同一ですが、VIP 顧客の購入内容がより分かりやすく表示されます。 このサーチを「VIP Customer」として保存します。 サ ー チの高速化 「VIP Customer」サーチを保存する場合、保存用ダイアログには新しい [アクセラレーション] オプションが表示 されます。 42 サーチに大量のイベントが存在しており、完了までに時間がかかる場合、将来的にそのサーチを再実行する際によ り早く完了するようにサーチを高速化できることがあります。このオプションは、サーチが高速化の要件を たし ている場合にのみ利用できます。このサーチはレポート用サーチとなります。 このチュートリアルで利用しているサンプルデータは、量の面でかなり限定されており、サーチは 1 日分 (昨日) のデータに して行われています。このようなサーチ、およびこのチュートリアルで今後使用、保存するサーチに してこのボックスを選 しても、特に 著な効果はありません。 サーチの高速化および高速化に適したサーチについては、『Knowledge Manager manual』の「Save searches and share search results」を参照してください。 次のステップ 準備が完了したら、次のトピックに進んで「その他のサーチ」の実行方法について学習してください。 その他のサ ー チ例 前のトピックでは、ルックアップテーブルを使ってオンラインショップのイベントデータに、新しい 2 つのフィー ルドを追加しました。これらのフィールドを追加していない場合は、前に ってフィールドルックアップの使用方 法を学習し、手順に従ってフィールドを追加してください。これらのフィールドがないと、ここで 明するサーチ で正しい結果が返されません。 再び Flower & Gift ショップに ります。昨日の購入レコードに関するレポートを上司に提出するために、サーチを 実行して情報を収集するように依頼されました。 要求されたページ参照数は? ページ参照数と実際の購入数の違いは? どの商品がどのくらい購入された? 購入が失敗した回数は? このトピックは、これまでに学習した事項を活用して、このような問題に 処するサーチを作成していきます。 Search Reference Manual ここで取り上げている例では、利用できるほんの一部のサーチコマンドと関数しか使用していません。利用できる すべてのサーチコマンドの構文、使用方法、および 明については、『Search Reference Manual』を参照してく ださい。 サーチコマンドの全リスト eval コマンドの関数リスト stats コマンドの関数リスト 例 1 - 要求されたペ ー ジ 参 照 数 は? 昨日に、ユーザーが Web サイトでページを参照した回数は? 1. すべてのページ参照に するサーチを開始します。時間範 として、[その他] > [昨日] を選 します。 sourcetype=access_* method=GET 43 次に、ページ参照数をカウントします (method で分類)。 2. stats コマンドを使用します。 sourcetype=access_* method=GET | stats count AS Views ここでは、stats コマンドの count() 関数を使って、Web アクセスログの GET イベント数をカウントします。こ れはサーチにより返されたイベント数の合計で、取得したイベント数を一致するはずです。基本的にこのサーチは このカウント数を収集して、それを利用可能なフィールドに保存します。 ここで、count フィールド名の Views への 更は必須ではありません。ただし、名前を 更しておけば、後ほど再利 用する際の混乱を防止することができます。 3. このサーチを保存します。ここでは、「Pageviews (Yesterday)」として保存します。 例 2 - ペ ー ジ 参 照 数 と 実 際の購入 数 の違いは? 例 1 から、合計参照数が分かりました。サイトを参照したビジターの中で、どれだけの人が商品を購入したので しょうか?参照したユーザーと実際に購入したユーザーの違いの割合はどの程度でしょうか? 1. まず、例 1 のサーチを実行します。タイムレンジピッカーから、[その他] > [昨日] を選 します。 sourcetype=access_* method=GET | stats count AS views 2. stats を使って、購入数をカウントします (action フィールドで分類): sourcetype=access_* method=GET | stats count AS Views, count(eval(action="purchase")) AS Purchases count() 関数ももう 1 回使用します。今回は eval() 関数を一緒に使って、購入アクションの回数をカウントし、 フィールド名を Purchases に 更します。 ここでは、名前の 更が必要です。stats コマンドで eval() 関数を使用する構文では、フィールド名の 更が必須と なります。 44 これで、後は合計ビュー数と購入数を元に割合を算出するだけです。 3. eval コマンドを使い、パイプ文字を指定して結果を rename に渡します。 sourcetype=access_* method=GET | stats count AS Views, count(eval(action="purchase")) as Purchases | eval percentage=round(100-(Purchases/Views*100)) | rename percentage AS "% Difference" コマンドを利用すれば、式を評価してその結果をフィールドに保存できます。ここでは、round() 関数を使っ て算出した Purchases の Views に する割合を、最寄りの整数に四捨五入します。 eval 5. サーチを「% Difference Purchases/Views」として保存します。 例 3 - どの商品がどのくらい購入された? この例では、フィールドルックアップの例で追加した、product_name および price の 2 つのフィールドが必要で す。これらを追加していない場合は、その例の手順に従って追加してください。 昨日に購入された商品およびその数、そして算出した各商品の収益をテーブルに表示します。 1. まずすべての購入を商品別にサーチします。時間範 を、[その他] > [昨日] に 更します。 sourcetype=access_* action=purchase | stats count by product_name 2. stats 関数を使って、商品の購入カウント、各商品の価格、および各商品の合計収益を含めます。 sourcetype=access_* action=purchase | stats count, values(price), sum(price) by product_name 45 関数は、イベント数をカウントします。values() 関数は、各 product_name の price の値を返しま す。sum() 関数は、各 product_name のすべての price 値を追加します。 count() 3. 後は、フィールド名を 更して、テーブルをより見やすくするだけです。 sourcetype=access_* action=purchase | stats count AS "# Purchased", values(price) AS Price, sum(price) AS Total by product_name | eval Total="$ ".tostring(Total, "commas") ここでは、テーブルの見出し名の 更に「AS」を使用しています。また、eval コマンドの tostring() 関数を使っ て、算出した合計料金値を文字列に 換し、それにドル記号「$」とカンマを入れるように再フォーマットします。 (ドット「.」は、文字列連結の簡易表記) 5. このサーチを保存します。ここでは、「Purchases and Revenue (Yesterday)」として保存します。 例 4 - 購入の失敗回 数 は? 前の例では、成功した購入数をサーチしました。ここでは、失敗した購入試行回数を調査します。 1. 失敗した購入の試みをサーチします。タイムレンジピッカーから、[昨日] を選 します。 sourcetype=access_* action=purchase status=503 (このサーチは、このチュートリアルの前半にある「サーチの開始」で取り上げたものです。) このサーチはイベントのリストを返すので、その結果数をカウントします。 2. stats コマンドを使用します。 sourcetype=access_* action=purchase status=503 | stats count これにより、単一値が返されます。 46 これは、昨日に購入の失敗はなかったことを意味しています。 3. このサーチを保存します。ここでは、「Failed purchases (Yesterday)」として保存します。 次のステップ これで、サーチ言語やサーチコマンドの機能とその有用性をお分かりいただけたでしょうか。準備が完了したら、 次のトピックに進んでレポートとダッシュボードについて学習してください。 レポ ー トとダッシュボ ー ドの作成 レポ ー トとダッシュボ ー ドについて この章では、このチュートリアルで保存したサーチを利用した、Splunk Web によるレポートとダッシュボードの 作成方法について 明していきます。 Splunk のレポートビルダーでは、終了/完了したサーチからの結果を使って、洗練されたレポートを手 に作成する ことができます。レポートパラメータやグラフタイプなどの面で、幅広いレポートオプションを提供しています。 Splunk Web を利用すれば、単純なダッシュボードを手 に作成、編集することができます。実行したサーチを新規 または既存のダッシュボードに追加したり、ダッシュボードエディタを使ってダッシュボードを作成し、それに ダッシュボードパネルを 入したりすることができます。 準備が完了したら、次のトピックに進んでレポート生成サーチの実行について学習してください。 レポ ー トの例 ここでは、前のサーチ例で実行、保存したサーチを使った、グラフやレポートの作成方法について 明していきま す。 再び Flower & Gift ショップに ります。まだ、レポートの作成途中です。以前に実行したサーチでは、単一値 (たと えば、エラー数) または結果のテーブル (購入商品のテーブル) が返されていました。今回は、以下のような昨日の アクティビティに関するレポートに、いくつかの視 エフェクトを追加してみましょう。 各商品カテゴリの購入数と参照数 商品購入数の推移 商品購入数の推移の傾向 レポ ー トビルダ ー の使用 Splunk では、サーチ結果の取得に じて、生成したグラフを動的に更新することができます。サーチを開始した ら、サーチが完了する前にレポートの作成を開始することができます。フィールドメニューを使って、事前定義さ れている簡単なレポートを素早く作成することができます。また、レポートビルダーを利用して、コンテンツを表 示するグラフの種類を選 し、レポートのフォーマットを定義、生成、調整することも可能です。 長い時間がかかるサーチを実行しており、サーチが実際に完了する前にそれに基づくレポートを定義したい 場合は、[作成] をクリックして [レポート...] を選 し、レポートビルダーを起動することができます。レポー トビルダーの起動後もサーチは続行されます。レポートには、返されたイベントデータがすべて反映されま す。 サーチ文字列にレポートコマンドが含まれている場合、[レポートの表示] をクリックして、レポートビル ダーにアクセスします。この場合、すでにレポートコマンドでレポートが定義されているため、レポート作 成プロセスの書式設定ステージに直接移動します。 レポートビルダーを使用するためにレポートコマンドを完全に理解しておく必要はありません。ただし、コマンド 47 を理解しておけば、レポートビルダーでより多彩な作業を行えます。 レポートビルダーを使った基本的なレポートパラメータの設定、グラフの書式設定、完成したレポートのエクス ポート/印刷の詳細は、『データのビジュアル化マニュアル』の「レポートビルダーによるレポートの定義」を参 照してください。 各商品の購入 数 と 参 照 数 のグラフ この例では、各商品の参照数と購入数をグラフ化します。前のトピックで、同 のサーチを実行したことを思い出 してください。 少しそれを手直ししましょう。 1. このサーチを時間範 [昨日] で実行します。 sourcetype=access_* method=GET | chart count AS views, count(eval(action="purchase")) AS purchases by category_id | rename views AS "Views", purchases AS "Purchases", category_id AS "Category" ここでは、stats コマンドの代わりに chart コマンドを使用します。chart コマンドを利用すれば、グラフを作成 できます。X 軸は by 句で指定します。 2. [作成] をクリックして、[レポート...] を選 します。 コマンドを使用し、またすでにレポートを定義しているため、この操作を行うとレポートビルダーの [レ ポートの書式設定] ページが表示されます。 chart 48 このウィンドウに何か違う内容が表示された場合 (たとえば、グラフの種類が違うなど)、デフォルト設定が 更さ れている可能性があります。ただし、気にする必要はありません。 3. [書式設定] オプションで: グラフの種類を [ 棒] にします。 グラフ名を「Purchases and Views by Product Type」にします。 chart コマンドを使用しているため、グラフの軸を定義する必要があります。 4. [全般] で、[凡例の位置] を [上] に設定します。 5. [書式設定] で、[X 軸] をクリックします。 [X 軸タイトル] に「Product type」と入力します。 49 6. [書式設定] で、[Y 軸] をクリックします。 [Y 軸タイトル] に「Count of events」と入力します。 7. [適用] をクリックします。 購入数と参照数が 棒グラフに表示されます。ここで、X 軸には商品種別 (types of products) が表示されます。 7. [保存] をクリックして、[レポートの保存...] を選 します。 [レポートの保存] ダイアログウィンドウが表示されます。 50 レポート名として「Purchases & Views (Yesterday)」を指定します。 [完了 >>] をクリックします。 商品名別上位購入 数 このレポートは、フィールドのルックアップ例からの product_name フィールドが必要です。ルックアップを追加 していない場合は、その例の手順に従って追加してください。 このレポートでは、昨日に購入された各商品数をグラフ化します。 1. 以下のサーチを実行します。 sourcetype=access_* | timechart count(eval(action="purchase")) by product_name usenull="f" ここでも、count() 関数を使用します。ただし、usenull 引数も使って、product_name の値があるイベントだけを カウントするようにします。 2. [作成] をクリックして、[レポート...] を選 します。 サーチ文字列内で timechart コマンドを使用しているため、この操作はレポートビルダーのステップ 2 に移動しま す。そこでは、レポートの書式設定を行います。 3. [書式設定] オプションで: グラフの種類を [ 棒] にします。 グラフ名を「Top purchases by Product」にします。 スタックモードを [スタック] に 更します。 51 コマンドを使用しているため、軸にはすでに名前が付けられています。X 軸は「time」、Y 軸は「count of events」になります。軸を「Time」および「Count of purchases」に 更します。 timechart 4. [適用] をクリックします。 それぞれの棒が、その 30 分の期間に購入された各商品数を表しています。 5. [保存] をクリックして、[レポートの保存...] を選 します。 レポート名として「Products Purchased (Yesterday)」を指定します。 [完了 >>] をクリックします。 購入 数 上位の傾向 および chart を使ったサーチの場合、結果テーブルにスパークラインを追加することができます。スパーク ラインはサーチ結果テーブル内に表示されるインライングラフで、各行のプライマリキーに関連する時間ベースの 傾向を表示することを目的にしています。詳細は、『サーチマニュアル』の「サーチ結果へのスパークラインの追 加」を参照してください。 stats この例では、スパークラインを使って昨日に行われた購入数の傾向を表しています。 この例では、フィールドのルックアップ例からの product_name フィールドが必要です。ルックアップを追加して いない場合は、その例の手順に従って追加してください。 このサーチを時間範 [昨日] で実行します。 sourcetype=access_* | chart sparkline(count(eval(action="purchase"))) AS "Purchases Trend (Yesterday)" by product_name このサーチは、前のレポートを作成するために実行した 2 つのサーチと同 です。chart コマンドを使って各製品 product_name に して、購入数 count(eval(action="purchase")) をカウントします。ここでの違いは、購入数が sparkline() 関数の引数になることです。(また、昨日に購入された商品数の傾向を示すために、結果名が 「Purchases Trend (Yesterday)」に 更されます。) 52 これを、表示するレポートに追加します。昨日の合計購入数だけでなく、その日の購入数の傾向も表示します。 sourcetype=access_* | chart sparkline(count(eval(action="purchase"))) AS "Purchases Trend (Yesterday)" count(eval(action="purchase")) AS Total by product_name | rename product_name AS "Product Name" このサーチを、「Top Purchases Trend (Yesterday)」として保存します。 保存 みレポ ー トへのアクセス レポートを保存したら、[<< サーチに る] に移動します。保存 みレポートはすべて、サーチダッシュボードの [サーチとレポート] メニューに表示されます。 レポ ー ト生成の高速化 このチュートリアルでは比較的小さなサンプルデータセットを使用しています。そのため、レポートを作成する サーチは比較的素早く完了します。Splunk は、大量のデータからレポートを作成できますが、大量のデータセッ トに関するレポートを作成するにはかなり時間がかかります。このようなレポートを定期的なスケジュールに基づ 53 いて実行している場合、サーチ実行時にデータのサマリーを作成し、それらのサマリーに してレポートを作成す る方が効率的です。 レポートコマンドを使用するサーチ (テーブルやグラフ形式のレポートを生成するサーチ) には、レポート高速 化機能を利用できます。大きなデータセットを 象にしたサーチにこの機能を適用には、単にチェックボックスを 選 して、時間範 を設定します。以降のサーチをこの時間範 内に実行した場合 (最低でも部分的に実行)、それらの サーチはより高速に実行されます。 レポート高速化機能は、10 万件以上のホットバケツイベントを持ち、完了までに時間がかかるサーチが、 『Knowledge Manager Manual』の「About report acceleration and summary indexing」に記載されている条件を たしている場合に効果的です。 この機能の利用に適したサーチと適さないサーチの詳細は、『Knowledge Manager Manual』の「Manage report acceleration」を参照してください。 次のステップ 足できるレポートを作成したら、さまざまな手段で保存して、それを他のユーザーと共有することができます。 これらのオプションについては、「Saving searches and sharing search results」を参照してください。 また、サーチやレポートからダッシュボードを作成することもできます。複数のパネルで構成されるダッシュボー ドを作成することも可能です。各パネルには、グラフ、リスト、その他のデータなど、事前定義したサーチからの 情報を表示します。 準備が完了したら、次のトピックに進んで、ダッシュボードパネルの作成方法を学習してください。 ダッシュボ ー ドの例 このトピックを開始する前に、いくつかのレポートを作成、保存した、「フィールド値のレポート」をもう一度確 認してください。ここでは、前のトピックで保存したサーチとレポートを使用する、簡単なダッシュボードの作成 方法について 明していきます。 再び Flower & Gift ショップに ります。上司から、ダッシュボードにオンラインショップで販売された商品の各種 指標をまとめて表示するダッシュボードの作成を依頼されました。また、オンラインショップに関する問題の発見 とトラブルシューティングに役立つダッシュボードも作成することにしました。 ダッシュボ ー ドパネルの作成 すべてのダッシュボードパネルは、サーチをベースにしています。サーチをベースにしたダッシュボードパネルを 生成し、それを新たなまたは既存のダッシュボードに追加するには、[作成] をクリックして [ダッシュボードパネ ル...] を選 します。次に、[ダッシュボードパネルの作成] ダイアログで新しいまたは既存のダッシュボード用のパ ネルを作成します。パネルのベースとなるサーチも自動的に保存されます。 ダッシュボードの詳細は、『Splunk データのビジュアル化マニュアル』の「UI を使ったダッシュボードの作成と 編集」を参照してください。 ダッシュボ ー ド 1: Flower & Gift ショップの商品 最初のダッシュボードには、Flower & Gift ショップで日々販売された各種商品に関する指標を表示します。この ダッシュボードには、以下の保存 みサーチを使用します。 Products Purchased (Yesterday) (昨日購入された商品) Products & Revenue (Yesterday) (昨日購入された商品と収益) Purchases & Views (Yesterday) (昨日の商品購入数と参照数) Top Purchases Trends (Yesterday) (昨日の商品の販売傾向) 作業を開始する前に、サーチ App を使用していることを確認してください。 1. [ダッシュボードとビュー] をクリックして、[ダッシュボードの作成...] を選 します。 54 [新しいダッシュボードの作成] ダイアログが表示されます。ここから、新しいダッシュボードを定義することがで きます。 2. 新しいダッシュボードを作成するには: 2a. ダッシュボードに一意の ID を指定します。ここでは、「Products」と指定します。この ID は、Splunk 内の他 のオブジェクトからダッシュボードを参照する際に使用する名前です。 2b.ダッシュボード名を指定します。「Flower & Gift Shop - Products」と指定します。この名前は、ナビゲー ションメニューおよびダッシュボードの上部に表示されるラベルです。 2c.[作成] をクリックします。 新しいダッシュボードが表示されます。最初は、このダッシュボードは空です。これにパネルを配置していきま しょう。 3. ダッシュボードの上部にある名前の隣には、ダッシュボードオプションが表示されています。[編集] がオフに なっている場合、ダッシュボードを印刷、PDF を配信するためのオプションが表示されます。 今のところ、これらのオプションを気にする必要はありません。後で学習しましょう。 3a.ダッシュボードの編集を開始するには、[編集] を [オン] にします。 [編集] を [オン] にすると、3 種類のオプションが表示されます。 新しいパネル:ダッシュボードにパネルを追加できます。 XML の編集:ダッシュボード用に XML コードを編集できます。 限の編集:ダッシュボードにアクセスできるユーザーを制御できます。 3b.ダッシュボードにパネルを追加するには、[新しいパネル] をクリックします。 [新しいパネル] ダイアログが表示されます。ここから、パネルのプロパティを定義することができます。 4. ダッシュボードに新しいパネルを追加するには、パネル名とパネルに関連付けるサーチを指定します。 55 4a.[タイトル] に「Products Purchased (Yesterday)」と指定します。これがパネルのラベルになります。 4b.[サーチコマンド] で、[保存 みサーチ] を選 します。 ダッシュボードのパネルはすべてサーチと関連付けられます。パネルに事前定義された保存 みサーチからの情報 を表示するか、またはパネル用に特別に設計されたサーチを使って「インライン」に関連付けるかを指定すること ができます。これらのダッシュボードには、保存 みサーチおよびレポートを使用します。 4c.リストから、「Products Purchased (Yesterday)」と言う名前の保存 みサーチを選 します。 4d.[保存] をクリックします。 [Flower & Gifts Shop - Products] ダッシュボードに新しいパネルが追加されました。デフォルトでは、このパネル にはサーチ結果がテーブルとして表示されます。これは、このパネルに表示したい視 エフェクトではないので、 設定を 更しましょう。 5. パネルで [編集] をクリックして、リストから [視 エフェクトの編集...] を選 します。 [視 エフェクトの編集] ダイアログボックスが表示されます。ここでは、サーチ結果のパネルへの表示方法を 更す ることができます。データテーブル、イベントリスト、グラフ、単一値パネル、およびゲージなどを利用できま す。Splunk の視 エフェクトオプションの詳細は、「ビジュアル化リファレンス」を参照してください。 56 6. [視 エフェクト] の一覧から、[ 棒] を選 して、結果を積み上げ棒グラフで表示するようにします。 7. [保存] をクリックします。 これで、パネルは以下のようになります。 57 8. 他に 2 つの新しいパネルをダッシュボードに追加します。 8a.昨日の商品購入数と参照数 (# Purchases & Views) を表すパネルを追加します。名前には、「Purchases & Views (Yesterday)」と指定します。視 エフェクトを 棒グラフに 更します。 8b. 「Products & Revenue (Yesterday)」と言う名前のパネルを追加します。このパネルには、昨日に販売され た商品と売り上げから得られた収益 (Purchases and Revenue (Yesterday) を表示します。視 エフェクトをデータ テーブルを表示するように 更します。 8c.「Top Purchases Trends (Yesterday)」と言う名前のパネルを追加します。このパネルには、昨日に売れた商 品と、その日の商品購入傾向を表すスパークラインを表示します。視 エフェクトをデータテーブルを表示するよ うに 更します。 8d.新しいパネルを追加したら、各パネルをドラッグして以下のように配置します。 これが商品用のダッシュボードです。次に同じ手順で、運営用のダッシュボードを作成しましょう。 ダッシュボ ー ド 2: Flower & Gift ショップの運 営 2 番目のダッシュボードには、当日の業務開始時に最近の Web アクセス活動に関する情報を確認するため簡単な レポートを表示します。このダッシュボードには、以下の保存 みサーチを使用します。 Total views (Yesterday) (昨日の合計参照数) Failed purchases (Yesterday) (昨日の失敗した購入数) Errors (Yesterday) (昨日のエラー) 作業を開始するために、サーチ App に ります。 1. [ダッシュボードとビュー] をクリックして、リストから [ダッシュボードの作成...] を選 します。次に、 「Flower & Gift Shop - Operations」と言う名前の新しいダッシュボードを定義します。 58 2. このダッシュボードには、3 つのパネルを追加します。2 つは単一値パネル、もう 1 つはイベントリストパネル です。これで以下のようになります。 2a.最初のパネルは保存 みサーチ「Total views (Yesterday)」を使用する単一値パネルです。 2b.2 番目のパネルは保存 みサーチ「Failed purchases (Yesterday)」を使用する単一値パネルです。 2c.3 番目のパネルは保存 みサーチ「Errors (Yesterday)」を使用するイベントリストパネルです。 3. 新しいパネルを追加したら、上記のダッシュボードの画像にあるようにパネルをドラッグして並べ替えます。 これが、Flower & Gift ショップの運営用ダッシュボードです。 次のステップ ダッシュボードを作成、保存しました。これでダッシュボードの印刷、ダッシュボードパネルの PDF の生成、 PDF ファイル配信のスケジュールなどの作業を行えます。詳細は、次のトピックをご覧ください! ダッシュボ ー ドの表示と印刷 前のトピックでは、このチュートリアルで実行したサーチとレポートを使って 2 種類のダッシュボードを作成、保 存しました。 Splunk では、ボタンをクリックするだけでダッシュボードの PDF を生成できます。また、Splunk が定期的に PDF を生成し、それを関係者に送信するように設定することもできます。 このトピックでは、ダッシュボードの表示、印刷、PDF の生成に関するオプションを 明していきます。 保存したダッシュボ ー ドの表示 サーチ App の [ダッシュボードとビュー] から、保存したダッシュボードを探します。 59 このリストから、既存のダッシュボードを編集、管理することも可能です。ダッシュボードを 1 つ表示しましょ う。 リストから、[Flower & Gift Shop - Products] を選 します。 ダッシュボ ー ドの印刷および PDF 生成オプション [Flower & Gift Shop - Products] ダッシュボードの上部には、印刷および PDF 生成用のオプションが用意されて います。 (これらのオプションは、[編集] がオフの場合に表示されます。) ダッシュボードの印刷 [印刷] オプションは、Web ページの印刷と同 に単純です。ダッシュボードの内容を印刷する場合に選 してくだ さい。ダッシュボードが印刷 フォーマットで表示され、ブラウザの印刷用ダイアログが表示されます。 ダ ッ シ ュ ボ ー ド PDF の 生 成 Splunk でダッシュボードを表示している時に、[PDF の生成] をクリックすると PDF ファイルが生成されます。 この PDF はブラウザや他の PDF ビューアで表示できます。生成された PDF はブラウザウィンドウ、または PDF ビューアに表示されます。ここには、ボタンをクリックした時点までの結果が表示されます。 注意:グラフのタイトルにアンパサンド文字が含まれている場合、そのパネルは PDF には表示されません。この ような場合は、タイトル名を 更してください。 この機能の詳細は、『データのビジュアル化マニュアル』の「ダッシュボード PDF の生成」を参照してくださ い。 ダ ッ シ ュ ボ ー ド PDF の メ ー ル 配 信 の ス ケ ジ ュ ー ル 1. ダッシュボード PDF のメール配信をスケジュールするには、ダッシュボードの上部にある [PDF 配信のスケ ジュール] をクリックして、[PDF 配信のスケジュール] ダイアログを表示します。 60 2. [スケジュールのメール送信] リストから事前定義されているメール配信スケジュールを選 するか、または標準 の cron 表記を使って独自のスケジュールを定義します。リストから [cron...] を選 した場合、cron スケジュール を入力するフィールドが表示されます。 3. [配信先] に、1 人または複数のメールアドレスを入力します。複数指定する場合は、カンマで区切って指定しま す。また、[用紙設定] で、Splunk が生成する PDF の用紙サイズと向きを設定します。 4. 設定内容をテストすることができます。[プレビュー] をクリックすると、PDF のプレビューが表示されま す。[テストメールを送信] をクリックすると、メール設定が正しく機能するかどうかを確認できます。 5. すべて指定し終わったら、[スケジュール] をクリックします。 メール送信時に添付される各ダッシュボード PDF には、ダッシュボード PDF 生成時の結果が表示されます。 この機能の詳細は、『データのビジュアル化マニュアル』の「ダッシュボード PDF の生成」を参照してくださ い。 統合 PDF 生成機能の詳細 Splunk Web の PDF 機能を利用するために、PDF Report Server App をインストールする必要がなくなりました ( 止)。また、非 UI PDF レポート機能は、この新しい統合 PDF 生成機能を使用するようになりました。 ただし、アドバンスト XML で作成されたダッシュボード、および JavaScript ではなく Flash を使って表示され るパネルを持つシンプル XML ダッシュボードは例外となります。この機能の要件は、『Installation Manual』の 「Upgrade PDF printing for Splunk Web」を参照してください。 次のステップ これでチュートリアルは完了です。もっと Splunk を活用していきましょう! もっと Splunk を活用しよう! 次は何? このチュートリアルでは、サーチ、レポート生成、ダーと゜の作成など、Splunk の主要機能の一部を紹介してき ました。しかし、これらは Splunk の多彩な機能のほんの一部にしか過ぎません。 Splunk ドキュメントセットには、他にも以下のようなマニュアルが用意されています。 管理:このマニュアルは、Splunk 管理者向けの重要な情報や手順が記載されたドキュメントの 1 つです。 Knowledge Manager:このマニュアルは、イベントタイプ、タグ、ルックアップ、フィールド抽出、ワー クフローアクション、保存 みサーチ、およびビューなどの Splunk ナレッジオブジェクトの管理方法を 明 しています。 61 アラート:Splunk のアラートおよびモニター機能を 明しています。 データのビジュアル化:Splunk が提供するさまざまな視 エフェクトについて 明しています。 サーチ:サーチ方法および Splunk サーチ言語の使用方法を 明しています。 Search Reference:Splunk サーチコマンドの詳細を 明しています。 Developing Views and Apps for Splunk Web:アドバンスト XML を使ったビューと App の開発方法につ いて 明しています。カスタムスクリプトや Splunk の機能 張などの開発者向けの情報も記載されていま す。 REST API Reference:一般的にアクセス可能なすべての REST API エンドポイントに関する情報が記載さ れています。 リリースノート:新機能、既知の問題、修正された問題などの情報が記載されて言います。 Splunk の世界をお しみください! 62
© Copyright 2024 Paperzz