Share Pointのユーザ利用状況を調べるには、標準機能で”利用状況の分析処理”という機能があります。

(微妙な不具合が多いようですが。。。)

http://technet.microsoft.com/ja-jp/library/cc263250.aspx

また、SharePoint Designer2007でも利用状況を見れます。

http://office.microsoft.com/ja-jp/sharepointdesigner/HA101741361041.aspx?pid=CH100667731041

しかし、「サブサイトAのヒット数から、特定の人(サイト管理者やコンテンツ編集者)のアクセス数を除外した値が欲しい。」

など、小回りの利く分析機能が必要な場合、いっその事IISログから要件に応じて集計するのも良いかと思います。忘れがちですが、SharePointはIISで動くWebアプリケーションです。よって、IISログから色々なユーザ利用動向が分かります。

 

そんな中、以下のドキュメントがリリースされました。

Log Parserを使って、IISログからユーザー動向などを調べるノウハウです。

 

Analyzing Microsoft SharePoint Products and Technologies Usage

http://blogs.msdn.com/sharepoint/archive/2009/02/10/analyzing-microsoft-sharepoint-products-and-technologies-usage.aspx

 

Log Parserは開発経験が無くても取り組み易く、色々と小回りが利きますので便利です。

また、Log ParserによるIISログの解析はSharePointだけの話では無いので、国内でもネット上にノウハウが沢山あります。

 

■Log Parserを使ったIISログ解析の基礎を知りたい方

http://codezine.jp/article/detail/541

などなど、Log Parser日本語版があるのも素敵です。

 

実のところ、私はLog Parserに取り組み始めたのは先月からです(笑)

こんな感じで作ってたりします。MOSSDOM1ドメインでAdministrator以外の人がpdfファイルを開いた回数。(1時間単位)

(整合性は確認中ですが。。。)

 

SELECT
    date,
    QUANTIZE(time, 3600) AS Hour,
    sc-status  AS Status,
    COUNT(*) AS hit
FROM
    ex*.log
WHERE
    cs-uri-stem like ‘%.pdf’
  and

   cs-method = ‘GET’
    and
    sc-status = 200
    and
    cs-username <> ‘MOSSDOM1¥Administrator’
GROUP BY
    date,
    Hour,
    sc-status

 

上記をテキストエディタなどへ書き出し、moss.sqlなど適当にファイル名を付けて保存し、Log Parserのコマンドラインからfile:オプションで読ませます。

コマンド画面でSQL文を長々と書くのは好きでは無いので、上記のようにSQL文はテキストファイルに分けて作っています。

 

などなど、IISログの解析結果をCSV出力し、OS標準のパフォーマンスログを使ってCPU使用率をCSVへ吐き出したデータをエクセル上で組み合わせると

 

 image

 

の、ようにアクセス数とCPU使用率を連携させたレポートが出来ますね。あ、上の図は実データではありません。イメージってトコで。

ちゃんと綺麗に作った細かい実データもありますが、さすがにネット上に出す訳には。。。

 

■その他参考サイト

以外と奥が深い?エクセルのグラフ作成手順

http://www.eurus.dti.ne.jp/~yoneyama/Excel/graph_menu.htm

GMT時刻でIISログを出してますので、エクセル上で+TIME(9,0,0)にて9時間を足してしまう私は甘い。。。