SCVMM の PRO 機能を利用しようと思い SCOM 2007 の SQL Server 2008 の対応状況を調べていたところ
KB がありましたのでメモ。
Microsoft SQL Server 2008 の System Center Operations Manager 2007 Service Pack 1 サポートの説明
<http://support.microsoft.com/kb/958170/>
今後サポートされるようですね。
SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿
SCVMM の PRO 機能を利用しようと思い SCOM 2007 の SQL Server 2008 の対応状況を調べていたところ
KB がありましたのでメモ。
Microsoft SQL Server 2008 の System Center Operations Manager 2007 Service Pack 1 サポートの説明
<http://support.microsoft.com/kb/958170/>
今後サポートされるようですね。
リモート コンピュータをシャットダウンする方法として [shutdown.exe] があります。
Windows NT / Windows 2000 ではリソースキットに含まれています。
ダウンロードできる Windows 2000 のリソースキットには shutdown.exe が含まれていないため、リソースキットの
書籍を持っていない場合は NT のリソースキットのダウンロードモジュールを流用できるようです。
Windows 2000 Resource Kit Tools 管理タスク
Windows NT 4.0 Resource Kit Support Tools
ftp.microsoft.com
Windows XP 以降では標準で shutdown.exe が含まれています。
以下は XP で表示したヘルプになります。
使用法: shutdown.exe [-i | -l | -s | -r | -a] [-f] [-m コンピュータ名] [-t xx] [-c "コメント"] [-d up:xx:yy] ??????? 引数なし?????????????????????? このメッセージを表示します (-? と同じです) |
[-m] オプションを使用するとリモート コンピュータをシャットダウンできるのですがこのコマンドでは資格情報 (ユーザー名) が
指定できないためリモート コンピュータに対してシャットダウンのできる権限を持ったユーザーからコマンドを実行しないと
シャットダウンをすることができません。
WMI であれば資格情報を設定できますので [WMIC] コマンドを使用するとリモート コンピュータを資格情報を設定して
シャットダウンすることができます。
以下のようなコマンドで実行可能です。
# 改行されていますが一行で入力します。
WMIC /NODE:"<コンピュータ名>" /USER:"<ユーザー名>" /PASSWORD:"<パスワード>" OS WHERE Primary=1 CALL Win32Shutdown 5 または WMIC /NODE:"<コンピュータ名>" /USER:"<ユーザー名>" /PASSWORD:"<パスワード>" OS WHERE Primary=1 CALL Shutdown |
再起動の場合は以下のコマンドで
WMIC /NODE:"<コンピュータ名>" /USER:"<ユーザー名>" /PASSWORD:"<パスワード>" OS WHERE Primary=1 CALL Win32Shutdown 6 または WMIC /NODE:"<コンピュータ名>" /USER:"<ユーザー名>" /PASSWORD:"<パスワード>" OS WHERE Primary=1 CALL Reboot |
?
# Shutdown / Reboot だと強制終了 / 強制再起動はできなさそうです。
これでリモート コンピュータのシャットダウン / 再起動を資格情報を指定して実行できます。
これでドメイン環境でなくてもリモート コンピュータを操作できます。
ただし、XP に対して実行したい場合は以下の KB の情報にあるように XP の設定を変更する必要があります。
# XP の SP 2 でセキュリティ強化されたことにより設定を明示的にする必要があります。
Windows XP SP2 の WMI に関する問題のトラブルシューティング方法
<http://support.microsoft.com/kb/875605/ja>
最小限の設定だけであれば以下の設定で大丈夫だと思います。
# Administrator で接続すること前提の設定です。
以上で設定は終了です。
グループポリシー (gpedit.msc) でファイアウォールの例外設定をしない状態では以下のエラーが発生します。
エラー: |
?
ローカルセキュリティポリシーを設定しない状態では以下のエラーが発生します。
エラー: |
Win32Shutdown の引数の値は以下の URL に記載されています。
Win32Shutdown Method of the Win32_OperatingSystem Class
Value | Meaning |
0 (0x0) | Log Off |
4 (0x4) | Forced Log Off (0 + 4) |
1 (0x1) | Shutdown |
5 (0x5) | Forced Shutdown (1 + 4) |
2 (0x2) | Reboot |
6 (0x6) | Forced Reboot (2 + 4) |
8 (0x8) | Power Off |
12 (0xC) | Forced Power Off (8 + 4) |
?
Administrator 以外で接続する場合には COM のセキュリティ設定や WMI のセキュリティが必要になりそうです。
以下は覚書として WMIC の使用例を。
[リモートコンピュータでコマンドを実行] [CSV 形式で出力] [HTML 形式で出力] [別コンピュータの情報を取得] [CALL のヘルプを出力] [フォーマットの形式を取得] [リストで取得できる項目を取得] |
Exchange の基礎と Exchange を外部メールサーバーとして使用する場合の設定する場合の初期設定の覚書です。
[Exchange の基礎]
基礎を学習するときには @IT の以下の記事がわかりやすい
# Exchange 2007 は マイクロソフト 公式解説書が便利だった。
? Exchange 2007 であればひと目でわかるシリーズもある
Exchange 2003
Windows Server Insider 基礎解説 - @IT
# 基礎から学ぶExchange Server 2003運用管理
Exchange 2007
Windows Server Insider 運用 - @IT
# Exchange Server 2007システム管理入門
[Exchange の組織]
[DNS 設定]
外部の DNS が A (ホスト) レコードと MX (メールエクスチェンジャ) を解決できるようにしておく。
[ドメイン名の設定]
Active Directory ドメイン名とメールアドレスのドメイン名は別のものを設定しておくと管理上良い。
AD ドメイン名は内部管理用として使用するため、外部公開のドメイン名と一致させる必要はない。
といった設定が可能。
ユーザーアカウントにドメイン名と異なるメールアドレスを設定する場合は、[受信者の構成] → [メールボックス] で
対象のユーザーのプロパティを開き [電子メールアドレス] タブで設定可能?
[電子メール アドレス ポリシー] の設定によっては、追加したメールアドレスを [プライマリに設定] することができないため、
ポリシーが設定できていない場合は [電子メールアドレス ポリシーに基づいて電子メールアドレスを自動更新する] を無効にし
プライマリのアドレスとして設定する。
[電子メール アドレス ポリシー] は [組織の構成] → [ハブトランスポート] → [電子メール アドレス ポリシー] で設定
[Exchange → 外部メール送信設定]
送信先によっては MX レコードと送信元の情報が一致していないと受信が拒否される??
デフォルトでは送信コネクタが作成されていないのでインターネット向けの送信コネクタを作成する。
外部の DNS に送信元ドメインのメールアドレスの MX レコードが正常に登録されていないと以下の NDR (Non-Delivery Report) が
送信されることがある。
# メールの送信先によっては NDR が返されないことも。
次の受信者または配布リストへの配信に失敗しました。: <送信先メールアドレス> メッセージは次の組織に拒否されました。<送信先メールアドレスの GW>。 _____ Microsoft Exchange Server 2007 により送信されました 管理者向けの診断情報: 生成サーバー: <Exchange サーバー名> <送信先メールアドレス> <送信先メールアドレスの GW> #554 5.1.8 <送信元メールアドレス>: Sender address rejected: Domain not found ## 元のメッセージ ヘッダー: Received: from <Exchange サーバー名> ([::1]) by <Exchange サーバー名> ([::1]) |
?
これで Exchange → 外部にメール送信が可能
[外部メール → Exchang 受信設定]
DNS の A レコードが登録されていない状態では 外部メール → Exchange にメールを送信すると以下の NDR が送信されることがある。
<送信先メールアドレス>: Host or domain name not found. |
NDR に表示されているとおり DNS でドメイン名の A レコードが解決できていないことが原因。
?
A レコード登録後は以下の NDR が送信されることがある。
<送信先メールアドレス>: host |
これは受信コネクタの設定が影響している。
[サーバーの構成] → [ハブ トランスポート] から受信コネクタの設定が確認可能。
デフォルトで作成されている [Default <サーバー名>] の受信コネクタが ポート 25 の受信コネクタとなっているため
このコネクタのプロパティを開く。
[Client <サーバー名>] となっている受信コネクタはポート 587 (サブミッションポート用)
# 受信にもポート 25 (SMTP) を使用するためルーター側の設定は考慮する必要がある。
[匿名ユーザー] が許可されていないため、外部メールサーバーからのメールで認証エラーとなっている。
[匿名ユーザー] を許可することで 530 5.7.1 の NDR は回避可能。
[匿名ユーザー] を設定しても以下の NDR が送信されることがある。
<送信先メールアドレス>: host |
これは受信コネクタの [認証] が影響しているようである。
[外部的にセキュリティで保護] を有効にすると回避が可能。
メッセージ表示内容通り、[外部的セキュリティで保護] は [基本認証] [Exchange Server 認証] [統合 Windows 認証] と合わせて
設定することはできないため最終的な設定は以下の画像の内容となる。
# 以下の設定だとオープンリレーサーバーになってしまう可能性があるので TLS と 相互認証 TLS だけ有効にしておくに留めたほうがよいかも。
外部的にセキュリティ保護が有効だと、承認済ドメインによる第三者中継のブロックができない??
以下の URL の情報が参考になる。
Allowing application servers to relay off Exchange Server 2007
これでインターネット向けのメールサーバーとして Exchange でメールが受信可能になる。
外部からの踏み台やスパム用として悪用されないようにこの状態をベースにセキュリティ設定を考えていく。
Exchange 2007 に更新プログラムを適用した後にサービスが起動しない現象についての覚書です。
Exchange 2007 に更新プログラム (RU) を適用しようとした際に環境によっては 2時間以上かかり、
更新プログラム適用後にいくつかのサービスが起動しないという現象が発生。
詳細までは追えていないが Exchange 2007 がインターネットにつながらない場合に発生するようである。
更新プログラムを適用すると一部の .NET アセンブリが更新され http://crl.microsoft.com に証明書を確認しに
行くために現象が発生している??
.NET Framework 2.0 SP1 はを導入していれば以下の方法で回避可能。
この設定をすることにより、発行者ポリシーを無効にすることができる。
.NET Framework 2.0 Non SP の場合は以下の KB からパッチを入手 / 適用すると上記対応が可能となる。
[FIX]: A .NET Framework 2.0 管理を持つ、Authenticode 署名の開始するには、通常より時間がかかるアプリケーション
<http://support.microsoft.com/kb/936707/>
参考↓
<generatePublisherEvidence> 要素
Exchange 2007 用更新プログラムのロールアップをインストールすると Exchange2007 マネージ コード サービスが開始されない
<http://support.microsoft.com/kb/944752/>
の英語 KB の情報を参考に EXE 個別に構成ファイルを作成することで署名確認を無効にすることも可能かもしれない。
Exchange Server 2007 managed code services do not start after you install an update rollup for Exchange Server 2007
<http://support.microsoft.com/kb/944752/en-us>
# 日本語の KB では対象の EXE が公開されていないため。英語版を参照。
SP1 UR6 の KB にもこの現象は記載されている↓
Microsoft Exchange Server 2007 Service Pack 1 の更新プログラムのロールアップ 6 について
SQL Server 2005 SP1 で SSIS をインストールしている場合は同様の現象が発生
<http://support.microsoft.com/default.aspx/kb/918644>
<http://exchangepedia.com/blog/2009/02/applying-exchange-2007-sp1-update.html>
の内容によると .NET Framework 2.0 SP 2 で解消されている??
GroupBoardWorkspace 2007 がインストールされている MOSS / WSS で更新プログラムが適用できない現象の覚書です。
Microsoft Office SharePoint Server 2007 / Windows SharePoint Services 3.0 に GroupBoardWorkspace 2007 を
インストールした環境で更新プログラム (機能追加 /HotFix) をインストールすると構成ウィザードの実行に失敗し、
更新プログラムの適用を完了することができないという現象が発生。
更新プログラムを適用する際は事前に GroupBoardWorkspace 2007 を削除。
詳細は以下の KB ↓
GroupBoard Workspace 2007 がインストールされているコンピュータで SharePoint製品とテクノロジ構成ウィザードが正常に完了しない
http://support.microsoft.com/kb/941678/ja
<[Web サーバー立ち上げ体験日記]動的 IP アドレスと Dynamic DNS でサーバーを公開
前回投降した内容を固定 IP アドレスと独自ドメイン名で実施するための作業です。
タイトルにもありますようにこちらのパターンでは
の 2 つが必要になります。
動的 IP アドレスと固定 IP アドレスの違いは名前そのまま外部からの接続に使用する IP が固定化されるということです。
固定 IP アドレスですので DiCE で定期的に IP アドレスを通知する必要はありません。
そのため安定した接続ができそうですね。
Dynamic DNS と独自ドメイン名では自分が好きなドメイン名が取得できるかどうかという違いがあります。
Dynamic DNS の場合はサービス提供元のドメイン名が固定で設定されますが独自ドメイン名の場合は
.com / .net / .jp といった好きなドメイン名を使用することができます。
固定 IP アドレスと独自ドメイン名の取得例を以下にまとめてみました。
[固定 IP アドレス]
固定 IP アドレスのサービスを提供しているところから割り当ててもらうのが一般的かと思います。
プロバイダによっては固定 IP アドレスのサービスをしているところもあるようですね。
私の場合はインターネットに B フレッツを使用していますので以下のサービスを利用することができます。
提供元 | URL | 価格 |
i-revo ゲーム専用コース | http://access.i-revo.jp/web/isp/campaign/mgo/index.jsp | 月額 525 円 |
ASAHI ネット 固定 IP アドレスオプション | https://asahi-net.jp/service/fixedip/ | 月額 840 円 |
B フレッツの場合は同時接続セッション数が 2 セッションとなっていますので通常使用しているプロバイダの接続設定とは別に
固定 IP アドレスで使用する接続を設定することが可能です。
Bフレッツファミリー
# 参考として B フレッツファミリーのリンクを記載しておきます。B フレッツの場合ビジネス以外は 2 セッションみたいですね。
ルーター側の設定としては以下のような設定になります。
# 接続設定を 2 つ設定し、同時接続セッション数が 2 になっています?
設定方法は使用しているルーターによって異なると思いますのでここでは記載しませんが、最初にプロバイダの情報を
登録した際の設定をもう一度別の接続として設定することになると思います。
この設定をすることによりルーターが 2 つの IP を持つことができるようになります。
Web サーバーからインターネットに出る場合は動的 IP ではなく固定 IP を使用して外に出るようにするためには
また別の設定をする必要があります。
こちらもルーターによって設定方法が異なると思いますが、LAN 側の IP アドレスによって使用する接続先を
変更する設定ができると思います。
この設定をするとルーターは下図のような設定になります。
どちらの接続を使用しているかはコマンドプロンプトで以下のコマンドを実行してください。
tracert microsoft.com |
通常のプロバイダの接続を使用する端末 (クライアント PC) と固定 IP の接続を使用する端末 (Web サーバー) で
コマンドを実行してみて tracert の結果が違っていれば別の接続設定を使用してインターネットに出ていることになります。
続いては独自ドメイン名の取得です。
[独自ドメイン名]
独自ドメイン名を簡単に取得できるサービスとしては以下のものが有名かと思います。
提供元 | URL | 価格 |
お名前.com | http://www.onamae.com/ | 年額 3,440 円 ~ |
VALUE DOMAIN | https://www.value-domain.com/ | 年額 990 円 ~ |
ムームードメイン | http://muumuu-domain.com | 年額 950 円 ~ |
ドメイン名の情報は WHOIS 等で調べることができます。以下のようなサイトがあります。
Whois Gateway ドメイン検索
企業のサイトでは上記のようなサービスを使用していることは少ないかと思いますが個人サイトでは使用していることがありますので、
よく参照しているサイトと同じサービス提供元を使用してみようという考えてで良いかもしれません。
独自ドメイン名を取得するとそのドメイン名に IP を関連付ける必要があります。
このような登録を行える組織をレジストラというのですが大抵はサービスを提供しているところがレジストラとしての
機能を持っているはずですので独自ドメイン名を取得したら取得したところでドメイン名と IP アドレスの関連付けができます。動的 IP アドレスの設定と同様に DNS への反映にはしばらく時間がかかりますが、ある程度時間がたったら以下のコマンドで
自分が意図している内容が登録されているか確認します。
nslookup <ドメイン名> |
以下のような結果が取得でき、回答のIP アドレスが固定 IP アドレスになっていれば登録完了です。
>nslookup engineer-memo.spaces.live.com 権限のない回答: |
?
これで外部公開の準備は完了です。
IIS 7.0 虎の巻にも書かれていますが、Netcraft 社のサイトで接続ができることを確認します。
Netcraft
# 普通にブラウザを開いて URL にアクセスでも確認ができますが、家庭外のネットワークから確認したほうが確実です。
ドメイン名と固定 IP が DNS に登録されていて接続ができないのであればおそらくルーター側の問題かと思います。
ルーターに以下のような設定がされているかを確認してみて下さい。
サーバー側のファイアウォールでポート 80 が許可されているかも確認してみるとよいかもしれないです。
# IIS をインストールすると自動で許可されているはずですが。
設定完了後はネットワークは以下のような構成になっていると思います。
[設定完了後のネットワーク構成]
固定 IP + 独自ドメインで公開する場合は定期的に IP を通知する必要はありませんので DiCE のようなソフトの導入は不要です。
他にも 固定 IP + Dynamic DNS という組み合わせでも公開することが可能です。
# MyDNS を使用して一度試してみました。
公開に関しての投稿はこれぐらいで。
次からはReporting Services の初期設定やコンテンツについてまとめていきたいと思います。
<[Web サーバー立ち上げ体験日記]SQL Server のデータを Reporting Serivces で表示のイメージ
ぼちぼちサーバーを公開するための投稿をしてみようかと
まずは動的 IP アドレスでと Dynamic DNS でサーバーを公開する方法についてまとめてみたいと思います。
通常の家庭のネットワークは以下のような構成になっていると思います。
# リモートデスクトップの時に使用した図を変更しました。
?
[一般的なネットワーク]
インターネットからの接続はプロバイダから割り当てられている [動的 IP] になります。
動的とついているようにこの IP は定期的に変化します。
# プロバイダによって変更されるタイミングは違うようですね。
このような環境でサーバーを公開する際に使用するのが Dynamic DNS になります。
IIS7.0 虎の巻にも書かれている内容ですね。
[Dynamic DNS による DNS 名の取得]
Dynamic DNS を使用するとインターネットからドメイン名 (engineer-memo.spaces.live.com のような名前) を使用して
動的 IP に対して接続できるようになります。
以下のような流れで接続がされます。
インターネット → Dynamic DNS で取得したドメイン名 → プロバイダの動的 IP → Web サーバー
国内では以下のような Dynamic DNS サービスが提供されています。
# 以下のサービスは無償て利用できます。
サービス提供元 | URL |
私的 Dynamic DNS | http://www.mydns.jp/ |
Dynamic DO!.jp | http://ddo.jp/ |
ieServer.Net | http://ieserver.net/ |
CyberGate | http://cybergate.planex.co.jp/ddns/ |
これらのサービスの提供元から DNS 名を取得します。
取得した DNS 名を使用すればインターネットからの接続名を固定することができます。
ただし、接続名を固定できても動的 IP を使用していることは変わりませんので、DNS 名と動的 IP アドレスの
関連付けをする必要があります。
[DNS名と動的 IP の関連付け]
インターネットからの接続口は Dynamic DNS で取得できましたが動的 IP と DNS 名を定期的に関連付けないと
外部からの接続を固定することができません。Dynamic DNS のサービス提供元の URL に定期的にログインすることにより現在の動的 IP と取得した DNS 名を
関連付けることができますが、動的 IP はいつ変更されるかわかりませんし自宅からサービス提供元の URL に
ログインして変更しないといけません。
定期的に変更される動的 IP と DNS 名を関連付ける時に便利なソフトが [DiCE] になります。
DiCE はフリーソフトとして公開されており、以下の URL から入手することができます。
DiCE Dynamic DNS Client
# 64ビットの Windows Web Server 2008 でも正常に動作しています。
このソフトをサーバーで起動しておくと定期的なタイミングでサービス提供元にログインし現在の動的 IP を通知、
動的 IP が変更されたタイミングで IP を通知といった設定をすることができます。
DiCE は以下の手順で設定することができます。
これで DiCE のインストールは完了です。
続いて DiCE を設定します。
[ホスト名] は Dynamic DNS で取得したドメイン名からドメイン部を省いたものを入力します。
# engineer-memo.spaces.live.com であれば engineer-memo.spaces がホスト名になります。
[ドメイン名] は取得したドメイン名のドメイン部をを入力します。
# engineer-memo.spaces.live.com であれば spaces.live.com がドメイン名になります。
[ユーザー名] [パスワード] はドメイン名を取得した際に作成したユーザー情報になります。
[IP アドレス] は空白で問題ありません。
# 動的 IP アドレスのため
[スケジュール] は [周期的] で [1時間毎] か [IP アドレス変化時] が良いかと思います。
周期的に更新していれば DiCE を起動していれば設定しているタイミングで情報が更新されますので。
nslookup <ドメイン名> |
以下のような結果が取得でき、回答のIP アドレスが DiCE に表示された IP アドレスになっていれば正常に
DNS の更新がされています。
# DiCE の右上またはステータスバーに IP が表示されています。
>nslookup engineer-memo.spaces.live.com 権限のない回答: |
これで DNS 名と動的 IP の関連付けは完了です。
無償版の DiCE はサービスとして登録はできないのでサーバーを起動したタイミングで手動で起動しておく必要があります。
スタートメニューのスタートアップに登録するかシステム構成のスタートアップに登録しておくとログイン時に自動的に
起動されるので便利だと思います。
?
これでスタートアップに登録完了です。
これでシステム構成のスタートアップに登録完了です。
どちらのスタートアップの登録状況もファイル名を指定して実行 → [msconfig] を実行して [スタートアップ] から
確認することができます。
場所が [HKLM] で始まっているものがレジストリに登録したものです。
パス指定になっているのはスタートメニューに登録したものになります。
スタートメニューに登録したものに関しては作業をしたユーザーでログインしないと有効ではありませんが、
レジストリに登録したものは全ユーザーに対して適用されるといった違いがある程度ですのでどちらで登録しても
問題はありません。?
これで一度ログオフしてログインすると DiCE が起動してくると思います。
この状態では最大化された状態で DiCE が起動してきますので DiCE の [環境設定] → [オプション] から
[最小化で起動する] を有効にしておいたほうが良いかもしれません。?
最小化で起動するにすると通知領域に最小化された状態で起動します。
DiCE は常に起動した状態にしておく必要がありますのでサーバーを起動したら一度ログインし、ログインした後は
[ログオフ] はせずに作業を終了する場合は [コンピュータのロック] でログインした状態を維持するのが良いかと思います。
# タスクスケジューラで [コンピュータの起動時] をトリガとして DiCE を起動してもよいかも。
リモートデスクトップについて考える際にも記載しましたがルーター側のファイアウォールの設定があるかと思いますので、
ポート 80 に対してファイアウォールの設定を変更する必要があるかと思います。
[設定完了後のイメージ図]
ざっくりとですがこれで動的 IP アドレスでサーバーを公開する手順は完了です。
次は固定 IP と独自 DNS でサーバーを公開する手順をまとめてみたいと思います。
<[Web サーバー立ち上げ体験日記]IIS のアクセスログを SQL Server に格納
手順は次回まとめようと思っていますが、まずはこんなことを考えていましたという投稿を。
SQL Server 2008 With Advanced Services ではローカルのデータを使用して Reporing Serivces を使用することができます。
また、レポートビルダー 2.0 も無償でダウンロードできますので IIS のアクセスログを SQL Server のテーブルに格納しておけば
以下のようなアクセスログのレポートが簡単に作成できます。
ODBC ログで直接 SQL Server に格納するのではなく、テキストのログファイルを LogParser を使用して SQL Server に
格納するようにすれば、安定したデータベースへのログ格納ができるかも。
ログ管理はもう少し考えないと駄目ですね。
スキルチャージプログラムの連絡期限も一カ月を切っていますのでぼちぼちコンテンツのほうも考えていかなくては。
<[Web サーバー立ち上げ体験日記]SQL Server 2008 SP1 + CU1 のインストール
IIS のアクセスログは ODBC ログを使用することによって SQL Server のデータベースに格納することができます。
設定をするにあたり、以下のサイトを参考にさせていただきました。
# 私もこういった情報を提供できるように精進したいと思います。
IIS7 – post #57 – How to setup ODBC Logging in IIS 7.0
How to configure IIS 7.0 for ODBC logging?
【IIS7】 そろそろいいことばかりでなく、現実的なことも重要か
手順としては
になります。
[機能の追加]
ODBC ログを使用するために、IIS に [ODBC ログ] の役割サービスを追加します。
[ODBC ログ] をインストールすることにより、[C:WindowsSystem32inetsrvlogtemp.sql] が追加され、ODBC ログの
Class ID がレジストリに追加されるようですね。?
ODBC ログはカスタム ログとして実装されているのでカスタムログの役割サービスも必要になります。
# カスタムログの一種として実装されているイメージでしょうか。
[SQL Server の設定]
ODBC ログの記録用のデータベースとテーブルを SQL Server 上に作成する必要があります。
また、情報を見たところ SQL Server 認証でないとログを保存できなさそうですので Windows 認証から SQL Server 認証に
変更する必要があります。
[ODBC の設定]
作成したデータベースを使用する ODBC を作成します。
[IIS の設定]
ODBC ログの設定は GUI から行うことはできません。
IIS サービスマネージャでも以下のような画面が表示されます。?
[appcmd.exe] を使用するか、[applicationHost.config] を直接修正することによって設定します。
参考にさせていただいた URL の情報にコマンドが載っていますので今回はそれを使って設定してみたいと思います。
cd %systemroot%system32inetsrv |
cd %systemroot%system32inetsrv |
以上で ODBC ログの設定は完了です。
テーブルを検索したところきちんとレコードが格納されていました。
ただし、SQL Server に接続できないと [500] のエラーになってしまうようです…。
実運用で使うには少し厳しそうですね。
あと取得項目として [Referer] がないのも気になります。インターネット公開サイトでは欲しいですよねこの項目は。
カスタムログとして自作すると [500] のエラーも回避できるようになるのでしょうか??
# 取得項目は増やせると思いますが。
ODBC ログの設定はできたので、せっかくですから Reporting Service を使ってアクセスログを表示することにチャレンジしたいと思います。
# アクセスログを Reporting Serivce で表示したかったのでSQL Server Express に With Advanced Services を使っています。
>[Web サーバー立ち上げ体験日記]SQL Server のデータを Reporting Serivces で表示のイメージ