トップ回答者
ログ出力の挙動について

質問
-
Azureでのログ出力が思うように動作しません。
以下の現象について、何か分かることがありましたらご指摘お願いいただけますでしょうか。
1.
下記サイトのログ出力の記事の通り(+パフォーマンスカウンタ)に試したところ、Azure本番環境でも一応ログが出力されました。
http://www.atmarkit.co.jp/fdotnet/chushin/azurecasestudy_01/azurecasestudy_01_03.html
ところが、フィルタの設定値の変更、ログの転送間隔の設定を変更し、
Azure本番環境にアップデートしたところ、変更内容が反映されず既存の設定値のままログが出力されしまいました。
何度試しても状況に変化はありませんでした。
Azureから一度削除し、その後改めてデプロイしたところ設定値が反映されログが出力されました。
アップデート時に反映されない理由がわかりません。
2.
上記現象の調査中に調査用の別プロジェクトを作成しました。
内容としては、ウイザードでCloudテンプレートを選択し、
WebロールとWorlerロールを追加したものです。
ログ出力コードは1から丸コピーしました。
ウイザードで作成したコードなので、
WorkerRole.csにはTrace.WriteLineの記述があります。
ところが、デプロイしたところ何故かトレースログだけが出力されません。
その他のログは出力されていて、1の時にも出力されていたにもかかわらです。
以上、分かることがありましたらご指摘お願いいたします。
回答
-
2の方だけ
コンパイル時オプションに TRACE は付いていますか?(プロジェクトのプロパティ、ビルドページ TRACE 定数の定義にチェックはありますか?)
これが無いと Trace.WriteLine はコンパイラによって除去されます。
Kazuhiko Kikuchi
- 回答としてマーク Sunao TomitaMVP, Moderator 2012年7月10日 9:40
-
こんにちは。
1の状況はよくわからないのですが、Azureでログを指定通り出力してStorageに転送するには決まった設定を行う必要があります。
※参考にされたURLは情報としてはだいぶ古いと思います。(すべてがNGではなく)一度こちらの情報を参考にして設定を確認いただければと思います。
http://blogs.msdn.com/b/nakama/archive/2010/10/06/windows-azure.aspx
また転送はされなくてもインスタンス上に出力されている場合もある(転送だけされていない)と思うので、リモートデスクトップ接続を有効にして実際に出力されているか確認するのも切り分けとしては良いかと思います。
- 回答としてマーク Sunao TomitaMVP, Moderator 2012年7月10日 9:40
すべての返信
-
2の方だけ
コンパイル時オプションに TRACE は付いていますか?(プロジェクトのプロパティ、ビルドページ TRACE 定数の定義にチェックはありますか?)
これが無いと Trace.WriteLine はコンパイラによって除去されます。
Kazuhiko Kikuchi
- 回答としてマーク Sunao TomitaMVP, Moderator 2012年7月10日 9:40
-
こんにちは。
1の状況はよくわからないのですが、Azureでログを指定通り出力してStorageに転送するには決まった設定を行う必要があります。
※参考にされたURLは情報としてはだいぶ古いと思います。(すべてがNGではなく)一度こちらの情報を参考にして設定を確認いただければと思います。
http://blogs.msdn.com/b/nakama/archive/2010/10/06/windows-azure.aspx
また転送はされなくてもインスタンス上に出力されている場合もある(転送だけされていない)と思うので、リモートデスクトップ接続を有効にして実際に出力されているか確認するのも切り分けとしては良いかと思います。
- 回答としてマーク Sunao TomitaMVP, Moderator 2012年7月10日 9:40
-
お世話になっております。
レスありがとうございました。
2の方だけ
コンパイル時オプションに TRACE は付いていますか?(プロジェクトのプロパティ、ビルドページ TRACE 定数の定義にチェックはありますか?)
これが無いと Trace.WriteLine はコンパイラによって除去されます。
> kazuk 様
TRACEオプションは有効になっております。
こんにちは。
1の状況はよくわからないのですが、Azureでログを指定通り出力してStorageに転送するには決まった設定を行う必要があります。
※参考にされたURLは情報としてはだいぶ古いと思います。(すべてがNGではなく)一度こちらの情報を参考にして設定を確認いただければと思います。
http://blogs.msdn.com/b/nakama/archive/2010/10/06/windows-azure.aspx
また転送はされなくてもインスタンス上に出力されている場合もある(転送だけされていない)と思うので、リモートデスクトップ接続を有効にして実際に出力されているか確認するのも切り分けとしては良いかと思います。
> k.buchi 様
参考情報ありがとうございます。
参考にさせていただきますインスタンス上の出力先について確認させていただきたいのですが、このインスタンス上の出力先というのはAzure環境においては
C:\Resources\Directory\・・・\Monitor\Tables
のことでしょうか?上記のフォルダだとしてお聞きしたいのですが、
WADLogsLocalTable.tsf
WADLogsLocalTable_00000000000001.tsf
WADLogsLocalTable_00000001000001.tsf
という3つのファイルができております。が・・・デプロイした時刻からタイムスタンプが変更されていないのですが
これでよいのでしょうか?
それから、継続して調査したところ
TraceError、TraceInfomation etcは正常に動作しており、
フィルタの設定により、出力レベルを変更するetcも動作しております。
(但し、アップグレードで反映されないのは相変わらずですが・・・)文字通りWriteLine だけが動作していない状態です・・・。
引き続き、何かお気づきになることがあったらご指摘お願いいたします。