良いが少し複雑な製品があるとしましょう。製品はワイルドになりました。顧客は中規模および比較的大規模な企業です。顧客の官僚主義のレベルは非常に高いです。
- 多くの異なる役割と責任
- 保護された環境
- 数十のルールとポリシー
- 高度に専門化されたエンジニア (DB-guy はある部署に所属し、tomcat-guy は別の部署に所属するなど)
このようなアプローチでは、些細な操作 (再起動とアプリ、ログの取得など) でさえ、数時間または数日かかる場合があります。ログへのアクセスを制限するか、完全に禁止することができます。前に述べたように、製品は複雑であるため、展開および初期構成段階で問題が発生する可能性があります。これは、顧客がサポート チームからの支援と支援を必要とすることを意味します。
問題は、エンド ユーザーが通常 R&D 部門に属しており、アプリケーション、アプリケーション ログ、データベースなどにアクセスできないことです。つまり、エンド ユーザーは貴重な情報をまったく提供できません。利用可能なフィードバックはスクリーンショットのみです。
この問題の良い解決策を知っている人はいますか?
アイデアは、顧客を満足させ、サポートチームをオフロードし、あらゆる要求に迅速に対応することです. また、センシティブ情報などに関してはいくつかのルールがありますのでご注意ください。
アプリケーションがエラーを処理する方法がいくつか考えられます。
- サニタイズされた例外またはエラー コードを提供する「詳細」オプションを使用して、高レベルの問題情報を提示します。
- 同じことを行いますが、いくつかの追加情報を収集し、ログに記録し、暗号化し、ユーザーがファイルをダウンロードできるようにします
- ログと追加のシステム情報にアクセスできる非表示の「サービス」画面を提供する
- 初期段階で使用されるデバッグモードのようなものを導入する
- 最後に、ログへの永続的なアクセスを要求できます (個人的には、これは安全でない解決策だと思います)。
これらのオプションはすべて、使いやすさとセキュリティの観点からあまり良くありません。
そのような状況であなたはどうしますか?