3

わかりました。WindowsAzureにデプロイしているときにElmahがエラーをログに記録しない理由はわかりません。もう1つは、以前は機能していたことです。環境は同じです。

  • SQLAzureでSqlErrorLogを使用する
  • メインサイトと同じデータベースを共有するSqlAzure。別のデータベースを使用しなかったため、同じ接続文字列を使用できます。
  • ソースを構築し、VistaDBとSQLiteのdllを除外しました。

web.configの設定を確認し、system.webServerでハンドラーとモジュールを定義しました。ローカル開発(webdev.exe)でメッセージを正常にログに記録しているようで、ローカルのsqlexpressスキーマがsqlazureスキーマ(ストアドプロシージャを含む)にエクスポートされました。

唯一の違いは、メインサイトでは、アプリが複数のサブドメインを持つメインドメインで実行されていることです。ローカルでは、これはホストファイルを変更することによってシミュレートされます。ログはローカルでは問題ありませんが、展開時には問題ありません。

何が悪いのかを見つけるために私が何をすべきかについてのアイデアはありますか?最後のオプションは、診断を使用して、展開中に何が問題になっているのかを追跡/特定することですが、それは重要です。

4

1 に答える 1

7

テーブル Elmah_Error が、Sql Azure でサポートされていないクラスター化されていない主キーを使用して作成されたことが判明しました。

SSMS 2008 R2 Nov CTP は、ターゲットを SQL Azure として指定した場合でも、非クラスター化 PK を非クラスター化 PK としてエクスポートしているようです。:(

于 2010-01-20T12:36:03.420 に答える