Splunk Enterpriseから任意のRESTサービスにJDBCで接続


はじめに

Splunkは、オペレーショナルインテリジェンスとデータ処理のプラットフォームで、すぐれたログ解析を提供します。IT基盤で起きていることをリアルタイムで監視、検索、調査、可視化、レポートできる強力なエンジンです。

REST APIは、エンタープライズ環境でデータアクセスを行うための良い方法です。しかし、REST APIからSplunkにデータをもってきてSplunk内のマシンデータと結びつけ、より深いレベルの解析とオペレーショナルインテリジェンスを行うことは、簡単ではありません。SplunkのDB ConnectとProgress DataDirect Autonomous REST Connectorを使えば、任意のREST APIからSplunkにデータを取り込めます。

この記事では、DataDirect Autonomous REST Connectorを用いて、リアルタイム株式情報を提供するAlpha Vantage REST APIに接続します。それでは始めましょう。

始める前に

チュートリアルを始める前に、下記のインストールおよび設定が適切に行われていることを確認してください。
1. Splunk Enterpriseがインストールされ、実行中であること。
2. アプリケーションSplunk DB Connectが、Splunk Enterpriseにインストールされていること。

Autonomous RESTコネクターのダウンロードとインストール

1. ウェブサイトからAutonomous REST JDBC connectorをダウンロードし、インストールして下さい。
2. マシン上でセットアップ実行ファイルを実行し、コネクターをインストールして下さい。
3. 別の場所を指定していなければ、インストールの終了後には下記のデフォルトパスにAutonomous REST Connectorがあるはずです。

C:\Program Files\Progress\DataDirect\JDBC_60\lib\autorest.jar

SplunkでAutonomous REST Connectorをセットアップ

1. Autonomous REST Connectorをインストールした場所に移動し、libフォルダにautorest.jarを置きます。

C:\Program Files\Progress\DataDirect\JDBC_60\lib\autorest. jar

2. Splunkをインストールしたディレクトリ内の以下の場所に、autorest.jarをコピーします。

C:\Program Files\Splunk\etc\apps\splunk_app_db_connect\drivers

3. db_connection_types.conf というファイルを以下のディレクトリに生成します。

C:\Program Files\Splunk\etc\apps\splunk_app_db_connect\local

4. db_connection_types.conf ファイルを開き、以下の設定をペーストします。

[datadirect_autorest]
displayName = Progress DataDirect Autonomous REST Connector
serviceClass = com.splunk.dbx2.DefaultDBX2JDBC
jdbcDriverClass = com.ddtek.jdbc.autorest.AutoRESTDriver
supportedVersions = 1.0
jdbcUrlFormat = jdbc:datadirect:autorest:sample=[http://api.example.com/data](http://api.example.com/data);

5. Splunk Enterpriseを再起動し、変更が反映されたことを確認します。下の図のように、driversのページにProgress DataDirect Autonomous REST Connectorがリストされ、ドライバーがインストールされたことを示すステイタスが確認できるはずです。

Alpha VantageのAPIキーを取得する

1. 株式データを参照するためのAlpha VantageのAPIキーはここから取得できます。

Splunkの接続を生成

1. App Splunk DB Connect -> Configuration Tab -> Databases -> Identities と辿り、新しいidentityを生成します。

2. Basic認証またはパスワード認証以外の場合は、ユーザ名を匿名で記入し、パスワード欄は空欄として、設定を保存して下さい。

3. Configuration -> Connections に行き、新しいコネクションを生成します。下記のように埋めます:
(1) Connection Name: 任意の名前
(2) Identity: 先ほど生成したIdentityを選択
(3) Connection Type: Progress DataDirect Automonous REST Connectorを選択
(4) Time Zone: タイムゾーン
(5) Edit JDBC URLをチェックすると、JDBC URLのフィールドが有効になります。
(6) 下記は、AlphaVantageへの接続のためのJDBC URLの例です。

jdbc:datadirect:autorest:sample="https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=5min&outputsize=full";AuthenticationMethod=UrlParameter;authparam=apikey;securitytoken="Your API Key"

(7) Security Token 接続パラメータに自分のAPIキーを入れて、保存(Save)をクリックします。

4. 設定を保存すると、Splunkが接続を検証し、設定が正しければ接続が生成されます。

5. DataLab -> SQLExplorerと辿り、Splunkとの接続テストを実施します。下のような結果が表示されるはずです。

参考URL: https://www.progress.com/tutorials/jdbc/connect-to-any-rest-api-from-splunk-enterprise