これは主に通信の問題ですが、いくつかの単純な技術的および組織的対策により、エラーを少なくすることができます。最初に、構成ファイルのすべてのエントリの適切で高品質なドキュメントと、簡単にアクセスできる例または「デフォルト」構成ファイルを提供する必要があります。サンプルファイルは、prodチームが直接変更することを目的としていないため、各環境に自動的にデプロイできます。
次に、新しいリリースごとに、重要な変更が文書化されている変更ログを提供します。欠落しているときにシステムが機能しなくなる可能性のある構成の変更は常に重要であるため、情報がそこにあることを確認してください。
たとえば、開発チームが環境のapplication.propertiesにいくつかのキーと値のペアを追加するとします。これらの新しいキーを記録する最良の方法は何ですか?そうすることで、展開がopsチームで発生したときに、追加するキーが正確にわかるため、新しいサービスを開始して、キーが見つからないために失敗するというリスクが最小限に抑えられますか?
失敗のリスクを減らす最善の方法は、新しいキーを必要とする方法でアプリケーションを変更しないようにすることです。そのため、アプリケーションは可能な限り古い構成ファイルと下位互換性を保つ必要があります。多くの場合、アプリケーションは、新しいキーが欠落している場合に備えて、組み込みのデフォルト値を提供することにより、適切な方法で動作できます。
ただし、それが不可能な場合は、システムにより、prodチームがキーが欠落しているときに新しいサービスの開始に失敗する理由をできるだけ簡単に見つけられるようにする必要があります。どのファイルにどのキーが欠落しているか、必要に応じて欠落しているキーに関する情報の場所、またはこのキーの意味のあるエントリに関するヒントまたは例を示す明確なエラーメッセージが表示されます。
構成が複雑で、手動編集でエラーが発生しやすい方法でフォーマットが変更される場合は、構成を編集して新しいバージョンに移行するためのツールを提供することも検討してください。
たとえば、Firefox Webブラウザーを使用していて、新しいリリース(自動的に取得される)ごとに、「about:config」ページで検査できるローカル構成に特定のものが追加されます。これは、「実稼働」環境の構成に相当します。構成全体が完全に下位互換性を維持しているため、ブラウザーの新しいリリースがあるという理由だけで、手動で構成に新しいキーを追加する必要はありません。そして、そこで何かを変更したい場合(おそらく、以前のバージョンの一部ではなかった新しいエントリ)、[ツール]メニューの[オプション]または[about:config]ページを使用して、エントリに加えて一種のドキュメント。だから私はあなたのシステムを同等の方法で実装しようとすることを勧めます。