Apache Thriftは、バイナリリモーティングプロトコルです。CassandraはThriftプロトコルを使ってプログラミング言語間の移植性を実現しています。様々な言語で記述されたアプリケーションが、Thriftプロトコルを使ってCassandraデータベースにコールを行うことができます。
AppDynamics は、Thrift フレームワーク アプリケーションを持つ Cassandra のビジネス トランザクション エントリ ポイントを検出するようにあらかじめ構成されています。バイナリのリモート処理エントリポイントは サービスエンドポイント として使用できないことに注意してください。
AppDynamicsでは、他のトランザクションと同じようにThriftトランザクションのパフォーマンスデータが測定されます。ThriftエントリポイントはPOJOベースです。トランザクションの応答時間はPOJOエントリポイントから測定され、リモートコールはServletのサービスメソッドのリモートコールと同じように追跡されます。
バイナリリモーティング(Thrift)エントリポイントのデフォルトの命名
バイナリリモーティング(Thrift)プロトコルを使ったリクエストの自動検出が有効になっている場合、AppDynamicsはトランザクションを全て自動的に識別し、次の形式でこのトランザクションに名前を付けます。
RemoteInterfaceClassName:MethodName
CODE
バイナリリモーティング(Thrift)エントリポイントの検出の有効化
バイナリリモーティング(Thrift)エントリポイントはデフォルトで有効になっていますが、ティアフローマップに 表示されていない場合は、Java自動トランザクション検出ルールで有効になっていることを確認します。詳細については、トランザクション検出ルールを参照してください。
有効になっている場合は、コール元ティアからCassandraデータベースへのThriftコールがティアダッシュボードのList Viewに表示されます。Thriftプロトコルを使ったトランザクションはPOJOベースなため、Type列にはPOJOと表示されます。
バイナリリモーティング(Thrift)リクエストのカスタムマッチルールの作成
自動検出されたトランザクションで必要な情報が表示されない場合、特定のクラスやメソッドにカスタムマッチルールおよびトランザクション分割を構成します。
カスタムマッチルールを作成する時は、ルールタイプにPOJOを選びます。ルールは、エントリポイントとして使用するクラスおよびメソッドで定義される必要があります。これには、アプリケーションのコーディングに精通している人によるサポートが必要です。
バイナリリモーティング(Thrift)に対して作成できる各種 POJO ベースのビジネス トランザクション マッチ ルールに関する詳細とその例については、「POJOエントリポイント」を参照してください。バイナリリモーティング(Thrift)エントリポイントのルールは、POJO エントリポイントのルールと同じです。