問題タブ [performancecounter]

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.

0 投票する
2 に答える
1313 参照

c# - メモリ帯域幅の使用

使用されるメモリ (RAM) 帯域幅をどのように計算しますか? どのパフォーマンス カウンターが必要ですか?

それを実行できるツール、「Rightmark マルチスレッド メモリ テスト」に出くわしました。しかし、Rightmark の他のテストとは異なり、ソース コードは見つかりませんでした。バイナリだけです。

0 投票する
1 に答える
2420 参照

performancecounter - カスタム パフォーマンス カウンターの問題のインストールと削除

カスタム パフォーマンス カウンターがインストールされている DLL に対して installutil を実行しました。2 つのカテゴリをインストールしましたが、最初のカテゴリに問題があることに気付いたので、カテゴリを削除しましたが、削除する前に asp.net アプリを実行して、それが機能していることを確認しました。

この問題は、カテゴリを削除してアプリケーションを再作成すると、カスタム perfmon カウンタにログが記録されますが、値が更新されません。

2 番目のカスタム カテゴリは正常に機能し、カウンターに値が入力されています。perfmon 内で両方のカテゴリを確認できますが、それに対して asp.net を実行すると、最初のカテゴリ カウンタが更新されないことに気付きました。

誰かがこの問題に遭遇しましたか。既存のインスタンスを削除する必要がありますか? マシンの再起動を回避しようとしています。

0 投票する
2 に答える
5007 参照

c# - 作成済みのカテゴリにパフォーマンス カウンターを追加する方法

以下のような PerformanceCounterCategory を作成しました

新しいカウンターをカテゴリーに追加して、別の項目を監視するにはどうすればよいですか?
そのためのAPIが見つかりません。

0 投票する
2 に答える
2658 参照

performancecounter - .NETのカスタムパフォーマンスカウンター/分

1分あたりに基づいてC#でカスタムパフォーマンスカウンターを作成しようとしています。

これまでのところ、RateOfCountsPerSecond32またはRateOfCountsPerSecond64のみが使用可能です。

1分あたりに基づいてカスタムカウンターを作成するためのオプションを知っている人はいますか?

0 投票する
2 に答える
1051 参照

idisposable - 管理された使い捨てリソースを所有する IDisposable 基本クラス、サブクラスで何をすべきか?

管理された使い捨てリソース (.NET PerformanceCounter) を所有する基本クラスがあります。リソースで Dispose を明示的に呼び出すことができるように、クラスに IDisposable を実装することについて理解しています。私が見た例から、人々は通常、「破棄」されたプライベートブールメンバー変数を使用し、Dispose 内でそれを true に設定します。後でパブリック メソッドまたはプロパティにアクセスしようとすると、"disposed" が true の場合、ObjectDisposedException が発生します。

サブクラスではどうですか?サブクラスは、パブリック メソッドとプロパティで、それらが破棄されたことをどのように知るのでしょうか? 最初は、サブクラスは特別なこと (独自のバージョンの Dispose を実装するなど) を行う必要はないと考えていました。破棄する必要があるのは基本クラスだけだからです (サブクラスがデータを追加しないと仮定しましょう)。明示的に破棄する必要があります)、基本クラスの Dispose がそれを処理する必要があります。サブクラスは、独自の「破棄された」メンバー変数を設定するためだけに、基本クラスの仮想 Dispose メソッドをオーバーライドする必要がありますか?

これは、問題のクラス階層の非常に簡素化されたバージョンです。

私たちのシステムでは、ReadableCounter と WritableCounter が BaseCounter の唯一のサブクラスであり、コード生成プロセスを介してもう 1 つのレベルにサブクラス化されるだけです。追加のサブクラス化レベルでは、特定の名前のみを追加して、名前付きカウンターに直接対応するオブジェクトを作成できるようにします (たとえば、生成されたウィジェットの数をカウントするために使用されるカウンターがある場合、最終的に WidgetCounter クラスにカプセル化されます)。 . WidgetCounter には、"WidgetCounter" パフォーマンス カウンターを作成できるようにするための知識 (実際には、文字列としてのカウンター名のみ) が含まれています。

コード生成されたクラスのみが開発者によって直接使用されるため、次のようになります。

したがって、サブクラスが PerformanceCounter を使用している間に、基本クラスが PerformanceCounter オブジェクト (破棄可能) を所有および管理していることがわかります。

次のようなコードがある場合:

Increment で、WritableCounter は、それが破棄されたことをどのように知ることができるでしょうか? ReadableCoutner と WritableCounter は単に BaseCounter をオーバーライドする必要があります

このようなもの:

ReadableCounter/WritableCounter レベルの「破棄」メンバー変数を設定するだけですか?

基本クラス (BaseCounter) が保護されていると宣言した (または保護されたプロパティにした) 場合はどうですか? そうすれば、単に Dispose が発生したことを思い出す目的で Dispose メソッドを追加するのではなく、サブクラスがそれを参照できます。

私はこれでボートを逃していますか?

0 投票する
2 に答える
914 参照

maintenance - 時間の経過に伴うアプリケーション固有の傾向について、perfmonを使用してWebアプリケーションを監視します

アプリケーションが何をしているのかをもっとよく理解したいと思います。ASP.NETおよび.NETカウンターを監視していますが、何が起こっているのか、どのくらいの速さで起こっているのかをより深く把握する必要があります。これに関するベストプラクティスは何ですか?また、Microsoft.NET環境で利用できる特定のガイダンスまたはドキュメントはありますか?これにエンタープライズライブラリを使用しますか?アプリケーションにデータを取り込むために、ライブラリの一部をすでに使用しています。

この時点での最大の苦痛:

  • アプリケーションのトラブルシューティングの方法はほとんどありません

    (ログはありますが、ログが多すぎるため、サイズが原因でログが実質的に役に立たなくなりました)

  • 既存のパフォーマンスへの影響を最小限に抑える
  • ヒットミスなどの観点から、Enjimクライアントが何をしているのかがわかりません。
  • 非常にユニークなパフォーマンスを監視する(mem cache server deadなど)

ボーナス

  • MOM内で収集されたデータを使用する
  • このデータを使用して、最も効果的な場所でアプリケーションを最適化します
  • システムの保守性を高めて、私たちの業務担当者がこのシステムの世話をしやすくします。
0 投票する
1 に答える
2676 参照

c# - MSMQ パフォーマンス カウンターを取得するにはどうすればよいですか?

MessageQueue.Create(path) を使用してプログラムで作成した多数の MSMQ がありますが、perfmon を見ると、これらのキュー インスタンスが一覧表示されず、手動で作成したキューのみが一覧表示されます。すべてのキューのパフォーマンス カウンターを取得するにはどうすればよいですか?

0 投票する
4 に答える
5750 参照

c# - パフォーマンス カウンターの Total インスタンスのインストール

VS 2005、C# 2.0、.NET 2.0/3.0、Win2003

MultiInstance の一連のパフォーマンス カウンターをインストールしようとしています。一部のシステム パフォーマンス カウンター カテゴリでは、他にインスタンスがない場合でも「合計」を維持していることに気付きました。ASP.NET Apps 2.0.50727 は一例です。

だから私はこれを複製しようとしてきました。インストーラー クラスで次のルーチンを作成し、セットアップ プロジェクトのカスタム アクションに追加します。

行のコメントを外してDebugger.Break()ステップ実行すると、正しいインスタンス名でカウンターが実際に作成されていることがわかります。また、Visual Studio サーバー エクスプローラーには、InstanceLifetime が Global に設定されたインスタンスが表示されます。セットアップ プログラムで RemoveInstance() メソッドを呼び出しません。

それでも、セットアップ プログラムが完了してから数秒後に、そのインスタンスはパフォーマンス モニターと VS サーバー エクスプローラーから消えます。どうすればくっつきますか?それともできますか?

0 投票する
3 に答える
5603 参照

windows - Linux/Unix における「パフォーマンス カウンター」の概念

Windows には、パフォーマンス カウンターインフラストラクチャがあります。OS にはいくつかの一般的なカウンターが用意されており、独自のカウンターを追加できます。Linux/Unix で対応する概念は何ですか?