CA CEM での正規表現
CA CEM では、単純なパターン一致の代わりに正規表現(RegEx と省略される場合もある)を使用することができます。たとえば、あらゆる変化形に対して記録や識別を行うのではなく、類似したトランザクションを柔軟に組み合わせるといったことが可能になります。
apmdevops104jp
CA CEM では、単純なパターン一致の代わりに正規表現(RegEx と省略される場合もある)を使用することができます。たとえば、あらゆる変化形に対して記録や識別を行うのではなく、類似したトランザクションを柔軟に組み合わせるといったことが可能になります。
正規表現は単純パターン マッチングより強力ですが、効率的ではないため、オーバーヘッドが発生します。
CA CEM では、正規表現に以下のライブラリを使用します。
- Jakarta-ORO
- PCRE -- Perl-Compatible Regular Expressions (Perl 互換の正規表現)
- Java
複数の CA CEM コンポーネントで正規表現が使用されます。
2
BizTrxHttpTracer
BizTrxHttpTracer は、トランザクション一致に正規表現を使用します。
BizTrxHttpTracer は java.util.regex を使用します。Introscope でサポートされている JVM のバージョンについては、「CA APM Compatibility Guide」を参照してください。
CEMTracer
CEMTracer は、トランザクション一致に正規表現を使用します。
CEMTracer は Jakarta-ORO を使用します。
以前に CEMTracer (CA APM 9.0 より前)で提供されていた機能は、BizTrxHttpTracer で提供されています。
CA CEM TIM
CEM TIM も、トランザクション一致に正規表現を使用します。
CA CEM TIM は、正規表現に対するデータ照合に PCRE を使用します。PCRE ライブラリは マルチバイト文字をサポートします。
アンカーについて
CA CEM の正規表現はアンカリングされていません。たとえば、「
c.*d
」という正規表現は、「c
」を含み、その後ろの任意の場所に「d
」を含むあらゆるパラメータ値に一致します。例:「cd
」、「c123d
」、「abc123def
」パラメータ値の先頭で一致させる場合は、アンカー「
^
」を使用する必要があります。パラメータ値の最後で一致させる場合は、アンカー「$
」を使用する必要があります。同じ正規表現内に「
^
」および「$
」の両方を使用することができます。たとえば、「c
」で始まり「d
」で終わるパラメータ値と一致させるには、「^c.*d$
」を使用します。これは「cd
」や「c123d
」と一致します。しかし、「abc123d
」とは一致しません。「c
」が先頭の文字ではないためです。同様に、「c123def
」とは一致しません。「d
」が最後の文字ではないためです。CA CEM
CA CEM は、PCRE と Jakarta-ORO の両方を使用して正規表現を検証します。
注:
これは、両方のライブラリが同じ方法で正規表現を解釈することを保証するものではありません。CA CEM NSM ブリッジ
NSM ブリッジは、
cemBridgeConnector.properties
ファイルで正規表現を使用します。これにより、NSM でレポートが必要とされていないビジネス サービス、ビジネス トランザクション、およびユーザ グループをフィルタすることができます。NSM ブリッジは Java 正規表現を使用します。
正規表現に関する情報
CA CEM で正規表現を使用する必要がある場合、以下の情報が参考になります。
- Jakarta-OROJakarta Web サイト(ORO プロジェクトおよびデモ): http://jakarta.apache.org/oro/OROMatcher User’s Guide: http://www.savarese.org/oro/docs/OROMatcher/Syntax.html
- PCRE -- Perl-Compatible Regular Expressions (Perl 互換の正規表現)構文とセマンティクス -- 「PCREPATTERN」セクションを参照してください: http://www.pcre.org/pcre.txt