Uma especificação de destino indica as classes e métodos aos quais o probe deve ser aplicado.
A especificação de destino é opcional. Quando nenhum destino for especificado, o probe será aplicado a todas as classes processadas pelo mecanismo de instrumentação.
A especificação de destino permite criar regras de filtragem para incluir ou excluir métodos de instrumentação com base em padrões que são correspondidos em relação ao pacote, classe e nome do método, mais a assinatura do método. Os padrões podem conter curingas, em que "*" corresponde a zero ou mais caracteres.
Se os padrões de um curinga de destino corresponderem a um pacote do método, classe, nome e assinatura, a propriedade tipo determinará se o método é instrumentado (incluir) ou não (excluir). Se os padrões não corresponderem a um pacote, classe, nome e assinatura de um método, por padrão, o método será instrumentado.
Propriedade | Descrição |
---|---|
type | Obrigatório. A propriedade type determina se um probe é aplicada ou não a um método de destino. Especifique include para aplicar o probe em classes e métodos que correspondem aos padrões de curingas, exclude para excluí-los. |
package | Opcional. Especifique um padrão de curinga para corresponder à parte dos nomes de classe de um pacote. Por exemplo: java.util* corresponde a cada classe no pacote java.util e seus subpacotes. Se não for especificado, o valor padrão será *. |
className | Opcional. Especifique um padrão de curinga para corresponder aos nomes de classes. Se não for especificado, o valor padrão será *. |
method | Opcional. Especifique um padrão de curinga para corresponder aos nomes de métodos. Se não for especificado, o valor padrão será *. |
signature | Opcional. Especifique um padrão curinga para corresponder à assinatura do método. (A assinatura é uma cadeia que representa os argumentos do método e tipo de retorno). Utilize o formato interno Java para assinaturas de método. Por exemplo: (Ljava/lang/Object;)D é a assinatura de um método que utiliza um Objeto como um parâmetro e retorna o dobro. Esse padrão de curinga pode ser utilizado para distinguir entre métodos sobrecarregados. Se não for especificado, o valor padrão será *. |
Notas:
Para especificar um destino, selecione Destino na área de janela de árvore da página Probes e clique em Incluir e, em seguida, em Editar na área de janela de edição.
Este exemplo aplica o probe apenas a métodos cujos nomes iniciam com Get em classes cujos nomes terminam com Proxy no pacote com.example. Entradas de destino de tipos inclusão e exclusão; a entrada de destino de exclusão utiliza curingas asteriscos para excluir tudo; a entrada de inclusão especifica os métodos exatos a serem destinados. Todas as outras classes e métodos são excluídos da instrumentação.