Java監視ツール「ENdoSnipe5.1」を使ってみる 〜 導入編
◎環境
・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のみとなっている。
OracleかMySQLで使用する予定だったので、ここでいったん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: �f�[�^�x�[�X"endosnipedb"��������������
JDBCの設定ミスか。
インターネットに接続されていない環境だったので、スタックビルダによるインストールをしていなかった。そのため、JDBCドライバがインストールされていない模様。