대상 프로브 오브젝트는 프로브가 적용되어야 하는 클래스 및 메소드의 스펙입니다.
대상 오브젝트는 선택적입니다. 대상을 지정하지 않으면 프로브는 인스트루먼테이션 엔진에서 처리되는 모든 클래스에 적용됩니다.
대상 오브젝트를 사용하면 패키지, 클래스 및 메소드 이름과 메소드 서명에 대해 일치된 패턴에 기초하여 인스트루먼테이션으로부터 메소드를 포함하거나 제외시키는 필터 규칙을 작성할 수 있습니다. 패턴은 와일드 카드를 포함할 수 있는데, 여기서 "*"는 0개 이상의 문자를 일치시킵니다.
대상의 와일드 카드 패턴이 메소드의 패키지, 클래스, 이름 및 서명과 일치할 경우, type 특성은 메소드가 인스트루먼트되었는지(include) 또는 인스트루먼트되지 않았는지(exclude) 여부를 판별합니다. 패턴이 메소드의 패키지, 클래스 이름 및 서명과 일치하지 않을 경우, 기본적으로 메소드가 인스트루먼트됩니다.
특성 | 설명 |
---|---|
type | 필수사항. type 특성은 프로브가 대상 메소드에 적용되는지 여부를 판별합니다. 프로브를 와일드 카드 패턴과 일치하는 메소드 및 클래스에 적용하려면 include를 지정하고, 제외시키려면 exclude를 지정하십시오. |
package | 선택사항. 클래스 이름의 패키지 부분에 대해 일치시킬 와일드 카드 패턴을 지정하십시오. 예를 들어, java.util*은 java.util 패키지 및 해당 하위 패키지에 있는 모든 클래스와 일치시킵니다. 지정하지 않을 경우 기본값은 *입니다. |
className | 선택사항. 클래스 이름에 대해 일치시킬 와일드 카드 패턴을 지정하십시오. 지정하지 않을 경우 기본값은 *입니다. |
method | 선택사항. 메소드 이름에 대해 일치시킬 와일드 카드 패턴을 지정하십시오. 지정하지 않을 경우 기본값은 *입니다. |
signature | 선택사항. 메소드 서명(즉, 메소드의 인수 및 리턴 유형을 나타내는 문자열)과 일치시킬 와일드 카드 패턴을 지정하십시오. 이는 메소드 서명의 Java 내부 형식으로 됩니다. 예를 들어, (Ljava/lang/Object;)D는 Object를 매개변수로 사용하고 이중 형식을 리턴하는 메소드의 서명입니다. 이 와일드 카드 패턴은 과부하된 메소드 중에서 구별하는 데 사용할 수 있습니다. 지정하지 않을 경우 기본값은 *입니다. |
참고:
<target type="include" package="." class="SomeClass" method="*" /> <target type="exclude" package="*" class="*" method="*" />이러한 두 가지 대상 규칙은 프로브가 글로벌 패키지에 있는 SomeClass 클래스를 대상으로 지정하고 다른 모든 클래스는 제외하게 합니다. 이들 규칙에 의해 다른 패키지에 있는 SomeClass라는 클래스가 제외됩니다.
<target type="include" package="com.example" className="*Proxy" method="Get*" />
포함된 위치
프로브 오브젝트
상위 주제: Probekit 참조