Existem dois tipos de sondas: sondas de método e sondas de callsite.
As sondas de método são inseridas no corpo de um método destino. No caso das sondas de método, o motor BCI (byte-code instrumentation) instrumenta os ficheiros jar ou de classes que contêm o método destino.
As sondas de callsite são inseridas no corpo de qualquer método que chame o método destino. Por outras palavras, são inseridas no sítio da chamada (callsite), no método da chamada, e não no método chamado. No caso de sondas de callsite, o motor BCI instrumenta os ficheiros jar ou de classes que contenham os métodos que chamem o método destino.
As sondas de callsite costumam ser utilizadas quando se pretende supervisionar chamadas a partir do projecto destinadas a uma biblioteca de sistema ou a outras classes de suporte fora do projecto. As sondas de callsite também são úteis quando for difícil ou impossível instrumentar os ficheiros de classes que contêm os métodos que se pretende ter como destino.
É o tipo de fragmento de sonda que determina se a sonda é de método ou de callsite. Para ver uma lista anotada de tipos de fragmentos de sonda, consulte Tipos de fragmentos de sonda.
Um ficheiro de origem Probekit (ficheiro probe) pode conter tanto sondas de método, como sondas de callsite. Todavia, uma sonda individual só pode conter uma mistura de fragmentos de sondas de método e callsite. Todos os fragmentos de sondas existentes numa sonda devem ser da mesma categoria.