問題タブ [crash-reports]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
crash - クラッシュの「コスト」を計算するにはどうすればよいですか?
バックグラウンド:
少し前に、社内プログラムの 1 つについて、アプリケーションのクラッシュを記録して分類するためのシステムを構築しました。当時、クラッシュの種類に優先順位を付けるために、頻度と失われた時間の合計 (プログラムの起動からクラッシュまでの時間) を組み合わせて使用していました。それはかなりうまくいった。
現在、The Powers That Be は、取り組んでいる各タイプのクラッシュのコストについて確実な数値を求めています。または、少なくとも、堅実に見える数字。総損失時間にもっともらしい数字を掛けたものを使用できると思いますが、それは危険に思えます。
質問:
アプリケーション クラッシュの実際のコストを計算する確立された方法はありますか? それとも、そのようなコストを推測する研究を発表しましたか?
コンセンサス
正確さは不可能ですが、稼働時間に基づく見積もりは、それが一貫して適用され、その制限が明確に文書化されていれば十分です。これに答えるために時間を割いてくれてありがとう、マット、オリオン。
c++ - メモリ ダンプのコール スタックを見るときに、VS でソース コード ディレクトリを指定するにはどうすればよいですか?
作成された .dmp ファイルを分析しており、多くの情報を提供するコール スタックがあります。しかし、コール スタックをダブルクリックして、ソース コードに移動したいと考えています。
コール スタックを右クリックし、シンボル設定を選択します。ここで、場所を PDB に配置できます。ただし、ソース コード ディレクトリのオプションはありません。
windows - Windows Vista で [アプリケーションをデバッグ/閉じる] ダイアログを無効にするにはどうすればよいですか?
Windows でアプリケーションがクラッシュし、Visual Studio などのデバッガーがインストールされている場合、次のモーダル ダイアログが表示されます。
【タイトル:マイクロソフト・ウィンドウズ】
X が機能しなくなった
問題が発生したため、プログラムが正しく動作しなくなりました。Windows はプログラムを終了し、解決策が利用可能かどうかを通知します。
[デバッグ][アプリケーションを閉じる]
このダイアログを無効にする方法はありますか? つまり、プログラムがクラッシュして静かに焼き付くだけですか?
私のシナリオは、いくつかの自動テストを実行したいと考えています。そのうちのいくつかは、テスト対象のアプリケーションのバグが原因でクラッシュします。これらのダイアログが自動化の実行を停止させたくありません。
周りを検索すると、Windows XP でこれを無効にするための解決策を見つけたと思います。これは、このレジストリ キーを無効にします。
HKLM\Software\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger
ただし、これは Windows Vista では機能しませんでした。
crystal-reports - Crystal Reports - このテーブル、クエリ、またはプロシージャに対して行セットが返されませんでした - クラッシュ!
Crystal Reports 8.0.1.0 を使用しており、OLEDB 接続を「お気に入り」に設定しています。データベース上のいくつかのストアド プロシージャに対して実行されているいくつかのレポートがあります。このデータベースは、SQLExpress 2005 の名前付きインスタンスです。
レポートの 1 つは残高に関するものです。つまり、特定の会社または一連の会社の残高レポートを提供する必要があります。
ただし、顧客は、特定の経済勘定類型の最後のセクションを別のセクションにするように具体的に要求してきました。これを行うには、このセクションを他のセクションから分離する必要があり、代わりに 2 つの並列サブレポートを使用して表示されます。
したがって、構造は次のようになります。
一般的な見出しの下の最初の 2 つのセクションは、2 つの並列サブレポートで実現されるため、3 番目のセクションを表示する必要があります。ここまでクリア?お気づきかもしれませんが、CR サブレポートでは、メイン レポート用に既にデータベースの場所を設定しているかどうかに関係なく、データベースの場所を設定する必要があります。ただし、問題は、ストアド プロシージャ (残高レポートのすべてのデータを返す) を指す場所を設定しようとすると、最初は件名にメッセージが表示され、2 回目は再び表示されることですが、これはそれもクラッシュする時が来ます。ストアド プロシージャにはパラメーターがあり、以前の両方のサブレポート (並列のもの) は同じ SP に設定されており、問題なく動作しています。
このクラッシュにより、私は 3 番目のセクションに取り組むことができなくなり、当面の問題を解決するための最善のアプローチは何かについてほとんど途方に暮れています。
アイデア/提案はありますか?
私の問題が十分に明確であることを願っています(必要に応じて、明確にするためにさらに掘り下げたいと思っています)。
お時間をいただき、誠にありがとうございました。
アンドレア・ライモンディ
macos - 「シンボリック警告」とは何ですか?
Mac OS X アプリケーションのクラッシュを報告しているユーザーがいて、コンソール ログには次のように報告されています。
これが何であるかについての洞察を持っている人はいますか?どういうわけか、Mac OS X のクラッシュ レポーターの邪魔になるような方法で、シンボルがアプリから取り除かれていると思いますが、これまでに見たことがありません。
crash-dumps - アプリケーションが顧客のマシンにロックされた場合のクラッシュレポートウォッチドッグ
私は、サードパーティによって部分的に作成された、信頼性の低い(Qt / windows)アプリケーションを使用しています(責任を転嫁しようとしているだけです)。最新バージョンはより安定しています。ある種。クラッシュの報告は少なくなっていますが、ぶら下がっていて二度と戻ってこないという報告がたくさんあります。状況はさまざまで、収集できる情報が少ないため、問題を再現することはできませんでした。
理想的には、アプリケーションがロックされたことを認識し、クラッシュレポートを返送することを提案する、ある種のウォッチドッグを作成したいと思います。いいアイデアですが、問題があります。
ウォッチドッグは、プロセスがハングしたことをどのように認識しますか?おそらく、ウォッチドッグに対して定期的に「すべて大丈夫」と言うようにアプリケーションをインストルメントしますが、十分な頻度で発生することが保証されているように、どこに配置すればよいのでしょうか。ロックされています。
クラッシュが発生した場合、ウォッチドッグはどのような情報を報告する必要がありますか?WindowsにはまともなデバッグAPIがあるので、すべての興味深いデータにアクセスできると確信していますが、問題を追跡するのに何が役立つかはわかりません。
c# - イベントログの.NET2.0エラーレポートメッセージのトラブルシューティング方法は?
私は.NET2.0プラットフォームを対象としたC#で記述されたEVEMonと呼ばれるオープンソース製品に取り組んでいます。解決できなかった奇妙な.NETクラッシュに苦しんでいるユーザーが1人います。
アプリケーション自体がエラーを表示せずにクラッシュします(UIの処理にエラーがあるにもかかわらず)。上記のメッセージはWindowsイベントログからコピーされました。エンドユーザーは.NETを再インストールし、最新バージョンに更新しました。.PDBファイルは、デバッグとテストを支援するためにプログラムのすべてのリリースバージョンで配布されます。問題のユーザーは、正しいバージョンのEVEMon用のPDBファイルを完全に補完します。
このタイプのクラッシュを分析および診断するための特定の、試行錯誤された手法はありますか?もしそうなら、デバッグを支援するためにどのようなツールとテクノロジーが利用可能ですか?
特別な感謝
Steffen Opelに特に感謝し、彼の答えは、私が尋ねていた質問に直接答えることはできませんでしたが、グローバルエラー処理に重要なコンポーネントがないという私のコードベースのより大きな問題に対処したことを強調したいと思います。
iphone - NSURL URLWithString: 例外を発生させます
要するに、[NSURL URLWithString:]
例外を発生させているようです。ドキュメントによると、「文字列の形式が正しくない場合、nil が返されます。」どのような状況でも例外が発生するという言及はありません。これに加えてnil
、文字列を URL に変換する前に、URL のエンコードとチェックの両方を行っています。
URL を変換する前に、それがどの例外であるか、または他にどのようなエラー チェックを行う必要があるかについて、誰かアドバイスをいただけますか?
詳細に興味がある場合は、呼び出しコードは次のようになります。
これは、iTunes Connect からダウンロードしたクラッシュ レポートの一部です。
URL の形式が「不適切」だったようですが、実際にnil
は例外ではありません。
自分で例外が発生するのを見たことがないので、XCode を使用してコードをトラップし、何が起こっているのかを確認することはできません。また、問題が発生したユーザーから直接連絡がなかったので、詳細を尋ねることはできません。どんな提案でも大歓迎です。
更新 (2009 年 14 月 7 日) : このようなハックのように見えますが、疑わしい行の周りに例外ブロックを追加しました。また、レーダー バグ レポート (#7031551) を提出し、コードがドキュメントと一致する必要があることを示唆しました。
reporting - エンドユーザーとのタフキャッチ22
エンドユーザーのアプリケーションで発生した問題をリアルタイムで(電子メールで)送信する自動クラッシュレポートシステムを開発しました。すべての詳細(たとえば、どのユーザー、どのクラス/メソッドなど)を取得します。
これは素晴らしいことであり、クラッシュレポートシステムでさえ、ログファイルに書き込むセカンダリクラッシュレポートシステムを備えています(障害が発生した場合)。
プラス面として、クライアント/ユーザーが呼び出すよりも早くバグが通知されます。場合によっては、バグが呼び出される前にバグを解決しました。
私の問題は、この情報をいつクライアントに返すか、そしてどれだけ返すかです。バグが明らかになるのは素晴らしいことですが、同時にそれが問題です。私たちは足で自分自身を撃っていますか?
私たちが彼らに言うならば、私たちは否定的な反応を得るかもしれません、そして私たちが彼らに言わないならば、私たちは否定的な反応を得るかもしれません!
お知らせ下さい!
iphone - シンボリック化されたクラッシュ レポート (iPhone / Mac) で正しい行番号を取得するには?
クラッシュ レポートをシンボル化すると、行番号がずれていることに気付きました。意図的にクラッシュを引き起こすプロジェクトでこれをテストしました。生成された行番号には、コメント行やコンパイラのプリプロセッサステートメントなど、特定の行が含まれていないようです(何が含まれていて含まれていないのかわかりません)...
シンボリック化されたクラッシュ レポートの「オフ」行番号から、ソース内の実際のコード行に移動する簡単な方法はありますか?
編集: 象徴化されたクラッシュ レポートの行の例:
したがって、行番号 320 はほぼ正しいですが、正確ではありません。数行ずれてる…