Geolocationは、IPアドレスの物理的な場所を決定するために使用されるプロセスであり、コンテンツのパーソナライズやトラフィック分析など、さまざまな目的に活用できます。位置情報によるトラフィック分析は、ユーザーがどこから来たのかを簡単に確認できるため、ユーザーベースに貴重な洞察を提供できます。これにより、アプリケーションサーバーの理想的な地理的位置と現在の対象者について、十分な情報に基づいた決定を下すことができます。このチュートリアルでは、Elasticsearch、Logstash、Kibanaを使用して、アプリケーションのユーザーのIPアドレスの視覚的なジオマッピングを作成する方法を示します。すべての仕組みを簡単に説明します。LogstashはGeoIPデータベースを使用して、IPアドレスを緯度と経度の座標ペアに変換します。IPアドレスのおおよその物理的な場所。+`文字列にも変換されます。KibanaはGeohash文字列を読み取り、それらを地球の地図上のポイントとして描画できます。4では、これはタイルマップビジュアライゼーションとして知られています。前提条件を見てみましょう。前提条件このチュートリアルを実行するには、動作しているELKスタックが必要です。Webサーバーアクセスログなど、フィールドにフィルターできるIPアドレスを含むログが必要です。これらの2つのことをまだお持ちでない場合は、このシリーズの最初の2つのチュートリアルに従うことができます。最初のチュートリアルではELKスタックをセットアップし、2番目のチュートリアルではNginxまたはApacheのアクセスログを収集してフィルタリングする方法を示します。前提条件のチュートリアルに従っていると仮定すると、これはすでに完了しています。+」型として保存する必要があるため、スキップした場合に備えてこのステップを再度含めます。Elasticsearchがインストールされているサーバーで、Filebeatインデックステンプレートをホームディレクトリにダウンロードします。https://gist.githubusercontent.com/thisismitch/3429023e8438cc25b86c/raw/d8c479e2a1adcea8b1fe86570e42abab0f10f364/filebeat-index-template.json次に、次のコマンドでテンプレートをElasticsearchにロードします。protected]Geostを使用するようにLogstashを構成するLogstashでGeoIP座標を保存するには、個別のフィールドとしてフィルター処理できるパブリックIPアドレスを含むログを生成するアプリケーションを識別する必要があります。この情報を使用してログを生成するかなり一般的なアプリケーションは、NginxやApacheなどのWebサーバーです。例としてNginxアクセスログを使用します。別のログを使用している場合は、例に必要な調整を加えます。フィルタが他の場所にある場合は、代わりにそのファイルを編集します。Nginxフィルターを編集してみましょう。+`セクションの下に、強調表示された部分を下に追加します。*で指定)に保存されているIPアドレスを変換するようにフィルターが設定されます。+`として指定しているのは、それがNginxユーザーのIPアドレスが格納されているフィールドの名前だからです。IPアドレス情報を別のフィールドに保存する場合は、必ずこの値を変更してください。変更を有効にするには、Logstashを再起動しましょう。restartすべてが正しく構成されていれば、Logstashは現在、Nginxアクセスログ(またはログを生成しているアプリケーション)とともにGeoIP座標を保存しているはずです。この変更は遡及的ではないため、以前に収集したログにはGeoIP情報が追加されないことに注意してください。KibanaでGeoIP機能が適切に機能していることを確認しましょう。Kibanaに接続GeoIPを有効にしてLogstashが正しく構成されているかどうかを確認する最も簡単な方法は、WebブラウザーでKibanaを開くことです。今それをしてください。LogstashでGeoIPモジュールを有効にしたため、アプリケーションが生成したログメッセージを見つけます。“+`を検索して、ログの選択を絞り込むことができます。次に、メッセージの1つを展開して、フィールドのテーブルを確認します。+」フィールドが表示されます。[GeoIPフィールドの例]このビューに適切なGeoIP情報が表示されていれば、マップビジュアライゼーションを作成する準備ができています。Tutorial]をご覧ください。KibanaでIPアドレスをマッピングするには、タイルマップビジュアライゼーションを作成しましょう。メインメニューで[視覚化]をクリックします。[新しい視覚エフェクトの作成]で[タイルマップ]を選択します。[検索ソースの選択]の下で、いずれかのオプションを選択できます。マップするログメッセージを見つける保存済みの検索がある場合は、その検索を選択してください。[新しい検索から]をクリックしたかのように進みます。filebeat-**を選択します。これにより、空白のマップのあるページが表示されます。+」またはgeoip情報を含むログに一致する別の検索語を入力します。期間(ページの右上隅)が一部のログエントリと一致するのに十分であることを確認してください。マップの代わりに*結果が見つかりません*と表示された場合は、検索用語または時間を更新する必要があります。緑色の「再生」ボタンがアクティブになります。[複数のポイントを持つキバナタイルマップ]視覚化に満足したら、検索バーの横にある[視覚化を保存]ボタン(フロッピーディスクのアイコン)を使用して、視覚化を保存してください。結論KibanaでGeoIP情報がマップされたので、設定する必要があります。それ自体で、ユーザーの地理的な位置の大まかなアイデアを提供する必要があります。ダッシュボードに追加して他のログと関連付けると、さらに便利になります。