問題タブ [system.diagnostics]
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.
.net - カテゴリが存在しない場合、PerformanceCounterCategory.Exists は非常に遅くなります
独自のパフォーマンス カウンターの束を使用する一種のライブラリがあります。しかし、そのパフォーマンス カウンターがインストールされていなくても、ライブラリが正常に動作することを望みます。
そのため、PerformanceCounter の周りにラッパーを作成し、最初の使用時に PerfCounter が存在するかどうかを確認しました。それらが存在する場合、代わりにネイティブの PerformanceCounter を使用しています。何もしないラッパーを使用しています。
したがって、パフォーマンスカウンターの存在を確認するには、 PerformanceCounterCategory.Exists を使用します
問題は、そのようなカテゴリがない場合、PerformanceCounterCategory.Exists の呼び出しに (私のマシンでは) 約 10 秒かかることです! 遅すぎるのは言うまでもありません。
私に何ができる?
自分で試すためのコード: システムを使用。System.Diagnostics を使用します。
asp.net - トランザクションが昇格する原因を見つけるにはどうすればよいですか?
主にLINQtoSQLとSystem.Transactionsを使用するWebサービス(.asmxとWCFの混合)を提供するWebサイトがあります。時折、トランザクションが分散トランザクションに昇格し、MSDTCを使用できないようにWebサーバーがデータベースから分離されているために問題が発生することがあります。
web.configに以下を追加して、System.Transactionsのトレースを構成しました。
これは非常に興味深いものであり、トランザクションがプロモートされたときに表示されますが、その理由を見つけるのに実際には役立たないことがわかりました。
プーリングに影響を与える変数(ユーザー、cnn文字列、トランザクションスコープ)など、接続が作成されたときに表示されるADO.NETの同等のトレースメカニズムはありますか?
c#-4.0 - C#4.0:アプリケーションがSystem.Diagnostics.Process.Startに存在しないかどうかを確認する方法はありますか
以下のコードを使用して、任意のファイルタイプを開きたい:
システムアプリケーションが存在しないかどうかを確認する方法はありますか?
例:pdf、ローカルマシンにはacrobatリーダーがありません。
try catchを作成しましたが、満足できません。ファイルを開くときのウィンドウの動作を模倣したいと思います。Webの検索/手動検索のオプションがあります。
.net - .net 診断のベスト プラクティス?
最初はログ記録やデバッグ トレースを使用しませんでしたが、データの破損を追跡するために数週間費やした後、必要な Debug.Write と Trace を運用環境と Debug.Assert に配置することにしました。
だから今の質問は、デバッグとトレースのログを使用するためのベスト プラクティスは何ですか。私は何か一般的なものを探しています。
これは一般的な目的には十分ですが、私はそこで何か間違ったことをしていますか?
log4net などの他の代替手段よりも、.net System.Diagnostics に固執したいと考えています。
System.Diagnostics で他に役立つものはありますか?
c# - Stopwatchは本番コードで使用できますか?
正確なタイマーが必要ですが、DateTime.Nowは十分に正確ではないようです。私が読んだ説明から、System.Diagnostics.Stopwatchはまさに私が望んでいるもののようです。
しかし、私には恐怖症があります。実際の製品コードでSystem.Diagnosticsの何かを使用することに神経質になっています。(AssertsやPrintLnsなどを使用したデバッグには広く使用していますが、本番環境ではまだ使用していません。)関数のベンチマークにタイマーを使用しようとしているだけではありません。アプリには実際のタイマーが必要です。別のフォーラムで、System.Diagnostics.StopWatchはベンチマーク専用であり、理由は示されていませんが、小売コードでは使用しないでくださいと読んだことがあります。これは正しいですか、それとも私(およびそのアドバイスを投稿した人)はSystem.Diagnosticsについてあまりにも心を閉ざしていますか?つまり、本番コードでSystem.Diagnostics.Stopwatchを使用しても大丈夫ですか?ありがとうエイドリアン
.net - System.Diagnostics.Trace を拡張するライブラリはありますか?
System.Diagnostics.Trace を拡張する優れたライブラリはありますか?
私が探している機能のいくつか。
- ローリングログ
- SMTP
そして、「log4netを使用する」は答えではありません。その理由は、サードパーティのアセンブリへの参照を望まないからです。
コメントへの回答: トレースを使用してもビジネス コードが汚染されないためです。私は Trace.XXX だけを呼び出します。Trace への拡張機能の使用は、config または起動時の少量のコードで実行できます。log4net を使用する場合は、どこでも参照する必要があります。
c# - 一部のマシンで PerformanceCounter.NextValue がハングする
理由はわかりませんが、多くのコンピュータが次の操作でハングします。
一部の計算プログラムでは、 の最初の呼び出しでプログラムが完全にハングアップしUpdateStats()
、他の計算プログラムでは 100% の CPU 負荷が発生しますが、プログラムは (ゆっくりと) 動作します。他のカウンターはnew PerformanceCounter("Processor", "% Processor Time", "_Total")
正常に動作しているようです。
それはなぜですか?
process - exe ファイルからメソッドを実行する
exeファイルからメソッドを呼び出す必要があります
メソッドを呼び出してパラメーターを渡す方法がわかりません
何か助けてください??
実行可能ファイルは私のものですが、Web アプリでの使用に問題があるため、プロセスとして呼び出す方がよいと考えました
ありがとう
.net - 診断トレース:1つのWCFエンドポイントのみをトレースする方法
複数のエンドポイントに接続するWCFクライアントがあります。いくつかのnet.pipe、いくつかのhttps。
net.pipeエンドポイントにはかなりの量のチャタリングがありますが、確実に機能するため、ログファイルが大きくなりすぎて乱雑になるので、それらをトレースしたくありません。ただし、httpsエンドポイントはかなり新しいため、トレースする必要があります。他のnet.pipeエンドポイントではなく、そのエンドポイントのみをトレースするにはどうすればよいですか?個々のエンドポイントをオンまたはオフにできると便利ですが、すべてのhttpsエンドポイントをトレースし、net.pipeエンドポイントをトレースする必要がない場合は問題ありません。また、all .configオプションを期待しています(つまり、自分のトレースリスナーを作成しないでください)。
ありがとう!
.net - Process.Close()を呼び出さないことに重大な問題がありますか?
Close()
System.Diagnostics.Processクラスにメソッドが必要ですか?
編集:Process
は、ほぼ瞬時に終了するコンソールアプリケーションを監視しています...
ビリー3