Esistono due tipi di probe: probe method e probe callsite.
I probe Method vengono inseriti nei metodi di destinazione. Per i probe method, il motore BCI (byte-code instrumentation) fornisce di probe la classe o i file jar che contengono il metodo di destinazione.
I probe Callsite vengono inseriti in qualsiasi metodo che richiama il metodo di destinazione. In altre parole, vengono inseriti nel sito di richiamo, nel metodo di richiamo e non nel metodo richiamato. Per i probe callsite, il motore BCI fornisce probe alla classe o ai file jar che contengono i metodi che chiamano i metodi di destinazione.
Questo secondo tipo di probe viene spesso utilizzato quando si desidera controllare le chiamate eseguite dal proprio progetto a una libreria di sistema oppure ad altre classi di supporto esterne al progetto. I probe callsite sono utili anche nel caso in cui sia difficile o impossibile dotare di probe i file di classe che contengono i metodi che si desidera utilizzare come destinazione.
I probe sono di tipo method o callsite in base al tipo di frammento probe. Per un elenco dettagliato di tipi di frammento probe, fare riferimento alla sezione Tipi di frammento probe.
I file di origine Probekit (file probe) possono contenere probe method e probe callsite. Un probe individuale, tuttavia, non può contenere sia frammenti probe method che callsite; tutti i frammenti probe in un probe devono appartenere alla stessa categoria.