Java監視ツール「ENdoSnipe5.1」を使ってみる 〜 導入編

ENdoSnipeのセットアップ

◎環境
Windows Server Enterprize 64bit
JVM 1.6.0_31
Apache Tomcat 7.0

ENdoSnipeのセットアップ
0.下記1,2,3を用意する。

1.Javelin_5.1.0.zip
2.endosnipe-datacollector-5.1.0.zip(※Windowsなので。Linuxの場合は、endosnipe-datacollector-5.1.0.tar.gzを利用する)
3.Dashboard.war


1.Javelinの設定
Javelin_5.1.0.zip を展開して、/conf/javelin.properties を編集する。

javelin.connectHost=localhost
javelin.clusterName=mycluster

2.解析対象のアプリケーションの起動引数への -javaagentオプションの追加

解析対象のアプリケーションの起動引数に -javaagentオプションを追加して,アプリケーションの起動時にJavelinがロードされるようにする。

今回はTomcatであるから、「「スタートメニュー」→「Apache Tomcat 7.0」→「Configure Tomcat」から「Java」タブを開く。」でJava Optionsに必要な起動オプションを加える。

-javaagent:/opt/ENdoSnipe/Javelin/lib/javelin.jar

3.DataCollectorの設定
データ収集サーバ上の任意のディレクトリに,endosnipe-datacollector-5.1.0.zipを展開する。

4.collector.properties を編集する
フリーバージョンのためか、対応DBがpostgresのみとなっている。
OracleMySQLで使用する予定だったので、ここでいったんPostgresSQLをインストールする(→「Windows ServerにPostgresSQLを導入する」)。

# Database host address
database.host=localhost

# Database port number
database.port=5432

# Database Name
database.name=endosnipedb

# Database login user name
database.username=postgres

# Database login password
database.password=postgres

# Host Name
accept.host=localhost

5.DataCollectorを起動する
ENdoSnipeDataCollector.exeを実行する。
※)ENdoSnipeDataCollectorW.exeを実行したらサービスが存在しないといわれて起動しなかった。いったん無視した。

6.ダッシュボードサーバ上のTomcatのwebappsディレクトリにDashboard.war を配置する
7.Tomcatを再起動する
再起動すると、Dashboard.warが展開されて、webappsフォルダ直下にDashboardフォルダが作成される。

8.webapps/Dashboard/WEB-INF/web.xmlを編集して,collector.propertiesの場所を指定する

web.xmlの変更箇所

<init-param>
<param-name>collector.property</param-name>
<param-value>/opt/ENdoSnipe/DataCollector/conf/collector.properties</param-value>
</init-param>

9.Tomcatを再起動する
http://(ダッシュボードサーバ):8080/Dashboard/にアクセスして動作確認をする。

とりあえず、失敗したw。

org.apache.ibatis.exceptions.PersistenceException: 
### Error querying database.  Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.postgresql.util.PSQLException: FATAL: &#65533;f&#65533;[&#65533;^&#65533;x&#65533;[&#65533;X"endosnipedb"&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;&#65533;

JDBCの設定ミスか。

インターネットに接続されていない環境だったので、スタックビルダによるインストールをしていなかった。そのため、JDBCドライバがインストールされていない模様。

ここをみながらJDBCドライバをインストールする。(試行錯誤中)