Help us understand the problem. What is going on with this article?

SignalRのPerformance Counterを取得する

More than 3 years have passed since last update.

SignalRには、SignalR用のパフォーマンスカウンタが用意されています
※SignalR、ざっくり言うとMicrosoftが開発しているリアルタイムwebを実現するためのオープンソースのライブラリです
 詳細はASP.NET SignalRASP.NET SignalRを知るを参照願います

Using SignalR performance counters
ここに記載のある手順で、SignalR用のパフォーマンスカウンタを追加することができます

実際に追加されるカウンタは以下のようなものです

image

で、これで簡単にカウンタ取得できるかと思いましたが、取得するまでに何個かはまったので共有します

その前にまずは結論

結論

アプリケーションプールの実行ユーザである[IIS APPPOOL\<アプリケーションプール名>]をPerformance Monitor Users グループに追加してマシン再起動
SignalR.exe ipcにてカウンタ追加後に上記を実施すればカウンタが取得できるようになります

以下、はまった事です

はまり1:カウンターの追加時、選択したオブジェクトのインスタンスに何も表示されない

上記の画像の以下の部分です
image

今は1つ表示されていますが、インストール直後は何も表示されない場合があります
その状態でカウンタの追加をしても、グラフに項目自体が追加されません

この場合は、
該当のアプリケーションプールを再起動してください
これで表示されました
それでも表示されない場合は、実際にアプリケーションを動かしてから確認すると表示されます

はまり2:インスタンスは表示されたが実際の値が全て「0」になる

インスタンス表示されるようになり、グラフも追加できたが実際の値が「0」になる現象が発生しました

image

実際にSignalRを使った処理も動かしているのに。。

この場合対応は以下の2つです

アプリケーションプールの実行ユーザをLocalSystemにに変更しアプリケーションプールを再起動

image

これは、以下のstackoverflowにも記載されていました
実際に試して確かに値取得できるようになりました
SignalR Performance counter not displaying in the performance monitor

ただLocalSystemだと権限が大きく問題発生時の影響が怖いので、冒頭に記載した

アプリケーションプールの実行ユーザであるIIS APPPOOL\<アプリケーションプール名>をPerformance Monitor Users グループに追加してマシン再起動
の方が影響範囲小さくて済むので良いと思います

IISの再起動ではだめで、マシン再起動まで必要だったのがポイントで権限追加したのにダメだーってなってはまってました

※IIS APPPOOL\<アプリケーションプール名>のユーザは、IIS_IUSRSグループに所属しています
そのため、IIS_IUSRSグループをPerformance Monitor Users グループに追加出来ると楽なんですが、
ビルトインユーザグループをビルトインユーザグループに入れる事は出来ないようです
そのため、ユーザ個別に追加する必要があります

上記対応で表示されるようになりました
うまく値が取れないという場合は試してみてください

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした