2010年3月17日水曜日

[GAE] JavaでAppstatsを使ってみる

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
3/26追記:やっと公式にドキュメントが追加されました

GAE SDK 1.3.2より、JavaでもAppstatsが使えるようになりました。1.3.2-preの段階ではまだlabsのjarに入っているので、appengine-api-labs-1.3.2.jarをWEB-INF/libに含めて、web.xmlに↓こんな感じで設定するだけ。※この設定だとstats自身もフィルタ対象になってしまうので除外する方法調査中。
<filter>
  <filter-name>AppstatsFilter</filter-name>
  <display-name>Appstats Filter</display-name>
  <description>Appstats Filter</description>
  <filter-class>com.google.appengine.tools.appstats.AppstatsFilter</filter-class>
</filter>

<filter-mapping>
  <filter-name>AppstatsFilter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>

<servlet>
  <servlet-name>AppstatsServlet</servlet-name>
  <servlet-class>
    com.google.appengine.tools.appstats.AppstatsServlet
  </servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>AppstatsServlet</servlet-name>
  <url-pattern>/stats/*</url-pattern>
</servlet-mapping>

ブラウザで/stats/でを開くと、↓こんな統計が見れます。
※/stats て最後のスラッシュを抜かすとなぜかリダイレクトループしてしまいます…
※IE8だと表示が崩れてました。

これだけだとURLが分かれば誰でも見えてしまうので、管理者のみアクセスできるような設定もした方がよいでしょう。
<security-constraint>
  <web-resource-collection>
    <url-pattern>/stats/*</url-pattern>
  </web-resource-collection>
  <auth-constraint>
    <role-name>admin</role-name>
  </auth-constraint>
</security-constraint>

0 件のコメント:

コメントを投稿