An instrumentation client API is provided within a managed code runtime
environment for accessing instrumentation data that resides outside of
the managed code runtime environment. The instrumentation client API
provides access to instrumentation data in a manner that is consistent
with the classes and models provided by the runtime environment, raises
exceptions in a manner that is compatible with the runtime environment,
and is secure. The instrumentation client API wraps, or translates, calls
to and from an instrumentation data source external to the runtime
environment. The API interacts with an interface provided by the
instrumentation data source to provide functionality and connectivity
that is not otherwise provided by the instrumentation data source. The
API also provides access to instrumentation data in a manner that is
consistent with the models and classes provided by the runtime platform.
The classes defined by the API return collections and exceptions in a way
that is consistent with the managed code runtime platform.