Thursday, January 14, 2010

Writing your instrumentation agent

Writing your instrumentation agent using java.lang.instrument package.

package org;
import java.lang.instrument.ClassFileTransformer;
import java.lang.instrument.IllegalClassFormatException;
import java.security.ProtectionDomain;

public class Instrument {

public static void main(String[] args) {
System.out.println("Agent Started...");
}

class Transformer implements ClassFileTransformer{

public byte[] transform(ClassLoader loader, String className,
Class classBeingRedefined, ProtectionDomain protectionDomain,
byte[] classfileBuffer) throws IllegalClassFormatException {
System.out.println("ClassName:"+className);
return null;
}
}
}

Run:
java -javaagent:test.jar org.
Instrument

No comments: