2016-06-15 8 views
4

Azure App Servicesのスロットアプリケーション設定をよく理解する必要があります。それらが適用され、正しく使用する方法。Azure App Servicesのスロット設定に関する問題

2つのApp Servicesがそれぞれ2つのスロットを以下のように設定しています。スロット付き

  1. サイト1 - 建物、ステージング
  2. サイト1スロットと - スロットと建物生産

  3. サイト2 - - スロットと

  4. サイト2をステージング生産

サイトごとに、アプリケーション設定ブレードのビルドスロットに無効な接続文字列を入れて、si teはアクセスできず、基本的にそのスロットのazuerwebsites.net URLにエラーページを表示します。

それぞれの私の生産用スロットには、正しい接続文字列を入れて、スワップすると正しく動作するようにします。

私はこれを確実に動作させることができません。スワップすると設定が適用されません。プロダクションスロットの接続文字列をスロット設定としてマークする必要がありますか?ビルドスロットの元のものはスロットの設定ですか?私は認識していないいくつかの種類のナゲットパッケージが必要ですか?

私が正しくあなたの質問を理解している場合は、スロットの設定として、それらすべてをマークする必要があり

答えて

2

私の質問に対する答えがこの文書に見つかりました。一言で言えば(どのAzureのチームから誰もがaccross来る場合、実際に展開スロットセクションhereの設定からリンクされなければならない)

Windows Azure Web Sites: How Application Strings and Connection Strings Work

、あなたはアプリケーションから設定を取得するためのConfigurationManagerを使用しないでください設定ブレード.NET 4.5フレームワークを使用していない限り。

.NET 4.5フレームワークを使用しない場合は、代わりにEnvironment.GetEnvironmentVariableを使用する必要があります。

これは私の既存の環境をApp Servicesに変換していたため、これは私を驚かせました。私はこれを確かめるためにどこかで大きな警告を受けたでしょう。

編集:これはすべての話ではありません。

もう1つの部分は、ドキュメントの「スティッキー」と「スティッキーではない」設定の意味です。私は設定が実際にあなたのweb.configファイルに入れられるのではなく、あなたのアプリにアクセス可能なメモリ内のプロパティバッグに住んでいるという事実への言及を探し続けました。私はこの神秘的な袋に何が入っていたかをどのように見ることができるかについての参考文献を見つけることができませんでしたが、あなたがそれを知ったら明らかに答えました。

スワップ中に、ステージングスロットの設定は実際に本番スロットの設定にコピーされます。つまり、実稼働スロットの「アプリケーション設定」ブレードで実際に変更されます。スロットのアプリケーション設定ブレードにあるものは、メモリ内のプロパティバッグにあるものです。

+0

REST-APIは、現在のアプリの設定を見て「この神秘的なバッグに入っていたものを確認する」ことができますか? など。 https://mysite.scm.azurewebsites.net/api/settings –

+0

ええ、上記のように、神秘的な袋は本当に謎ではありません。あなたのアプリケーションの設定に関係するものだけです。ブレードの設定が実際にウェブサイトのバイナリと交換されたということは王室で混乱しました。すべてがスロット設定だったのであれば、私は混乱していませんでしたが、そうではなく、私のスワップが配備パイプライン中にパワーシェルスクリプトを使って行われたため、手動で行うときにスワップの警告が表示されませんでした。実際に何が起こっているのかを理解するのに役立つのは、これらの警告でした。 –

4

を助けてください。

スロット設定としてマークされたアプリケーション設定と接続文字列は、スワップが完了するとスロットに残ります。スロット設定としてマークされていない設定/接続文字列は、アプリケーションとスワップされます。

+0

変数のスワップは即時ですか?私は両方のスロット設定でそれを試しましたが、スワップ後に新しい設定を適用しません。展開後に設定を微妙に編集すると、突然適用されますが、スワップ時には発生しません。 –

関連する問題