The emergence of middleware solutions and new services, even on small devices, will need adapted distributed management solutions which address these specificities, both in terms of software design and in terms of performance. We propose a management system where these high-level and low-level management concerns are separated. In particular for JAVA based solutions, we suggest a low-level management agent tightly tied to the JVM/JVMTI and able to receive and to manipulate programmable monitoring expressions. To avoid conflicts with applications already using JVMTI instrumentation techniques, we dynamically compile these expressions into machine code to reduce overload and minimize performance lost.