本文へスキップ

迅速なインストールと問題解決

エージェントのインストール時

エージェントのインストールの場合、プロジェクト作成からモニタリング活性化の段階まで次の文書を参照してください。 エージェントのインストール後、IIS再起動されます。

Windowsサーバー2008または.NET 4.6.1未満のバージョンを使用する場合

WhaTap.NETエージェントは、Windowsサーバー2012以降および.NET Framework 4.6.1以降のご使用をお勧めします。 その未満のバージョンを使用する場合は、次のリンクのインストールプログラムを使用します。

エージェントのインストール後

ノート

エラーとログの転送

  • エラーの発生時、エラー画面をキャプチャした画像またはそのテキストを転送します。

  • エージェントのログファイルを転送します。 次のパスでログファイルを確認できます。 そのエラーがない場合、フォルダが存在しない可能性があります。

    • C:\Program Files\WhaTap .NET\logs

    • C:\ProgramData\WhaTap

データが収集されない場合

データの未収集

例のように、アプリケーションですべての情報が正常に収集されない場合は、次を確認します。

  • アクセスキーと収集サーバー情報が、正確に入力されていることを確認します。

  • そのサーバーのファイアウォール設定を確認します。 アウトバウンド6600ポートが開かれている必要があります。

ヒットマップデータが収集されない場合

ヒットマップデータの未収集

例のように、ヒットマップ情報が正常に収集されない場合、対象のアプリケーションが対応環境に該当することを確認します。 対応環境は、次の文書を参照してください。

対応環境の確認が困難だったり、対応対象である場合

  • 対象アプリケーションのweb.configファイルを渡します。

  • 対象アプリケーションのプロジェクトファイル(*.csproj)を転送します。

  • 次のリンクから、.NETエージェントの対応環境に該当可否を、AIの活用により確認できます。

その他

上記の方法でエラーが解決しない場合は、詳細なデバッグ情報を転送します。 デバッグデータの収集プロセスは次の通りです。

  1. 次のリンクからモニタリングプログラム(UdpMonitor.exe)をダウンロードして実行します。

  2. デバッグ用のエージェントを、次のリンクからダウンロードしてインストールします。

  3. トランザクションを発生させます。

  4. トランザクションを十分に発生させた場合、UdpMonitor.exeを終了します。

  5. UdpMonitor.exeと同じフォルダにUdpMonitor.txtが生成されます。

  6. UdpMonitor.txtファイルを担当者に転送します。

  7. デバッグ完了時、デバッグ用のエージェントを削除します。

WCFおよび公式未対応ライブラリのモニタリング

WCF(Windows Communication Foundation)のようにWhaTap.NETエージェントが公式に対応していないライブラリをモニタリングするには、次のガイドを確認します。

ノート

広い範囲に設定すると、過度なトラフィックが発生する可能性があります。

設定オプション

  • webservice_method_enabled Boolean

    既定値false

    値をtrueに設定すると、ウェブサービスを追跡できます。

    ノート

    そのオプションを変更した後は、IISを再起動しないと変更事項が適用されません。

  • webservice_method_prefix String

    値に追跡するメソッドが定義されているネームスペースとクラス名を入力します。

    • メソッドが所属するクラス名まで入力すると、そのクラス内のすべてのPublicメソッドが追跡対象となります。

    • 条件に満たすメソッドは、ウェブサービスを使用していない場合でも追跡対象になります。 このオプションの場合、WCFとウェブサービスモニタリングのために設計されましたが、様々な目的で使用できます。

    ノート

    そのオプションを変更した後は、IISを再起動しないと変更事項が適用されません。

  • webservice_method_timeout Milliseconds

    既定値5000

    モニタリング対象となるメソッドが特定の時間内に完了しない場合、自動的にタイムアウトを設定します。 既定値は5秒(5000ms)です。

使用例

whatap.conf修正

whatap.conf
license= ## アクセスキー
whatap.server.host=15.165.146.117
whatap.server.port=6600
app_process_name=w3wp.exe
tag_counter_enabled=true
perfcounter.enabled=true
app_name= ## アプリケーション名
OID= ## エージェントID

webservice_method_enabled=true
webservice_method_prefix=Whatap.Service.Controller, Whatap.DotNet.Examples.Service1
webservice_method_timeout=10000
  • webservice_method_prefixオプションで追跡するネームスペースを含むメソッドの呼び出しパスを指定したため、次のいずれかの場合、関数の開始と終了がトランザクションとして処理されます。

    • Whatap.Service.Controller

    • Whatap.DotNet.Examples.Service1

  • webservice_method_timeout10000ミリ秒で指定したため、10秒が経過したトランザクションは自動的に終了処理されます。

ノート

次のように管理 > エージェント設定メニューで設定を変更できます。

エージェント設定

WCFソースコード

次は、モニタリング対象となるWCFソースコードの例題です。

namespace Whatap.DotNet.Examples
{
public class Service1 : IService1
{
public string GetData(int value)
{
...
}

public CompositeType GetDataUsingDataContract(CompositeType composite)
{
...
}

private string getFromDB()
{
...
}

private string getFromHttp()
{
...
}
}

public class Service2 : IService1
{
...
}

public class Service3 : IService1
{
public string IwantToSeeOnlyThis(int value)
{
...
}
}
}
  • GetData

    GetData()メソッドは、Whatap.DotNet.Examples.Service1クラスに属しています。 また、Publicメソッドであるため、モニタリング対象となります。 このメソッドは、設定ファイルのwebservice_method_prefixオプションに明示された値に含まれるため、トランザクションとして処理されます。 メソッドの呼び出しパスは次の通りです。

    Whatap.DotNet.Examples.Service1.GetData

  • GetDataUsingDataContract

    GetDataUsingDataContract()メソッドはPublicメソッドであるため、モニタリングの対象となります。 メソッドの呼び出しパスは次の通りです。

    Whatap.DotNet.Examples.Service1.GetDataUsingDataContract

ノート
  • getFromDB(), getFromHttp()メソッドはPrivateメソッドであるため、モニタリングの対象ではありません。

  • webservice_method_prefixオプションにWhatap.DotNet.Examples.Service3を追加する場合、PublicメソッドであるIwantToSeeOnlyThis()メソッドがモニタリングの対象になる場合があります。

ネームスペースとクラス名を見つけるのが難しい場合

WCFサーバーのメソッドが定義されたネームスペースが見つからない場合、次の方法でネームスペースとクラス名を確認できます。

  1. 次のリンクからGetNamesapces.exeファイルをダウンロードします。

  2. 次のようにウェブアプリケーションのフォルダパスをパラメータに転送し、GetNamesapces.exeファイルを実行します。

    C:...\> GetNamesapces.exe C:\inetpub
  3. 実行が完了したら、当該フォルダとその下位フォルダにあるすべてのdllファイルをスキャンして、ネームスペースとクラス名を一覧に出力します。

ノート

結果の適用が難しい場合、GetNamesapces.exe実行後、同じフォルダに作成されたGetNamesapces.txtファイルを担当者に転送します。