Claims
- 1. A method for exposing instrumentation data available within a managed code environment to an instrumentation data source executing outside said managed code environment, comprising:
receiving an indication that said instrumentation data should be exposed to said instrumentation data source; in response to receiving said indication, loading a decoupled provider for facilitating communication between said managed code environment and said instrumentation data source; determining whether schema describing said instrumentation data has been previously registered with said instrumentation data source; in response to determining that said schema has not been previously registered with said instrumentation data source, registering said schema with said instrumentation data source through said decoupled provider.
- 2. The method of claim 1, further comprising:
in response to determining that said schema has previously been registered with said instrumentation data source, determining whether said previously registered schema is correct; and in response to determining that said previously registered schema is incorrect, overwriting said previously registered schema with said schema describing said instrumentation data.
- 3. The method of claim 1, further comprising:
registering an application program associated with said instrumentation data with said instrumentation data source as a provider of instances of said instrumentation data.
- 4. The method of claim 3, further comprising:
notifying said decoupled provider that said instrumentation data is available.
- 5. The method of claim 4, wherein said instrumentation data comprises an object and wherein said schema describes the properties and methods exposed by said object.
- 6. The method of claim 5, wherein said indication that said instrumentation data should be exposed to said instrumentation data source comprises an attribute.
- 7. The method of claim 5, wherein said indication that said instrumentation data should be exposed to said instrumentation data source comprises a call to an application programming interface.
- 8. A computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform the method recited in any one of claims 1-7.
- 9. A computer-controlled apparatus capable of performing the method recited in any one of claims 1-7.
- 10. A method for exposing instrumentation data available within a managed code environment to an instrumentation data source executing outside said managed code environment, comprising:
receiving an indication that said instrumentation data should be exposed to said instrumentation data source; in response to receiving said indication, loading a decoupled provider for facilitating communication between said managed code environment and said instrumentation data source; determining whether schema describing said instrumentation data has been previously registered with said instrumentation data source;
in response to determining that schema has not been previously registered with said instrumentation data source, registering said schema with said instrumentation data source through said decoupled provider; receiving a request for said instrumentation data from said instrumentation data source at said decoupled proxy; and in response to said request, converting said instrumentation data from a format compatible with said managed code environment to a format compatible with said instrumentation data source, and transmitting said converted instrumentation data to said instrumentation data source.
- 11. The method of claim 10, wherein said instrumentation data comprises an object and wherein said schema describes the properties and methods exposed by said object.
- 12. The method of claim 11, wherein said request for said instrumentation data comprises a request for instances of said object,
- 13. The method of claim 12, wherein said request for said instrumentation data is received at said decoupled provider, and further comprising:
querying one or more providers for instances satisfying said request.
- 14. The method of claim 13, wherein said one or more providers are queried by said decoupled provider in a round-robin fashion to identify instances satisfying said request.
- 15. The method of claim 14, wherein said indication that said instrumentation data should be exposed to said instrumentation data source comprises an attribute.
- 16. The method of claim 14, wherein said indication that said instrumentation data should be exposed to said instrumentation data source comprises a call to an application programming interface.
- 17. A computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform the method recited in any one of claims 10-16.
- 18. A computer-controlled apparatus capable of performing the method recited in any one of claims 10-16.
- 19. A method for exposing instrumentation data available within a managed code environment to an instrumentation data source executing outside said managed code environment, comprising:
receiving a request for said instrumentation data at a decoupled provider; determining whether said request comprises a request for one or more instances of said instrumentation data; in response to determining that said request comprises a request for instances, querying one or more providers from said decoupled provider to determine if instances of said instrumentation data are available; and in response to determining that said instances of said instrumentation data are available that satisfying said request, converting said instances of said instrumentation data satisfying said request from a format compatible with said managed code environment to a format compatible with said instrumentation data source, and transmitting said converted instances of said instrumentation data satisfying said request to said instrumentation data source.
- 20. The method of claim 19 wherein said providers are queried by said decoupled provider in a round-robin fashion to determine if instances of said instrumentation data are available that satisfy said request.
- 21. The method of claim 19, further comprising:
determining whether said request comprises a request to write a property on an instance of said instrumentation data; in response to determining that said request comprises a request to write a property, identifying said instance of said instrumentation data and writing said property on said instance; and providing a confirmation from said decoupled provider to said instrumentation data source that said property was written.
- 22. The method of claim 19, further comprising:
determining whether said request comprises a request to execute a method on an instance of said instrumentation data; in response to determining that said request comprises a request to execute a method, identifying said instance of said instrumentation data and executing said method on said instance; and providing a confirmation from said decoupled provider to said instrumentation data source that said method was executed.
- 23. A computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform the method recited in any one of claims 19-22.
- 24. A computer-controlled apparatus capable of performing the method recited in any one of claims 19-22.
- 25. A method for exposing instrumentation data available within a managed code environment to an instrumentation data source executing outside said managed code environment, comprising:
receiving a request to fire an event relating to said instrumentation data into said instrumentation data source; in response to receiving said request, loading a decoupled provider for facilitating communication between said managed code environment and said instrumentation data source; determining whether schema describing said instrumentation data has been previously registered with said instrumentation data source; in response to determining that schema has not been previously registered with said instrumentation data source, registering said schema with said instrumentation data source through said decoupled provider; determining at said decoupled provider whether said event should be fired; and in response to determining that said event should be fired, converting said instrumentation data from a format compatible with said managed code environment to a format compatible with said instrumentation data source, and firing said converted instrumentation data from said decoupled provider to said instrumentation data source as an event.
- 26. The method of claim 25 wherein said request to fire an event comprises a call to an application programming interface.
- 27. The method of claim 26, wherein said instrumentation data comprises an attribute indicating that said instrumentation data may be exposed to said instrumentation data source as an event.
- 28. The method of claim 27, further comprising:
in response to determining that said schema has previously been registered with said instrumentation data source, determining whether said previously registered schema is correct; and in response to determining that said previously registered schema is incorrect, overwriting said previously registered schema with said schema describing said instrumentation data.
- 29. The method of claim 28, wherein determining at said decoupled provider whether said event should be fired comprises determining whether said instrumentation data satisfies parameters provided with said request.
- 30. A computer-readable medium comprising instructions which, when executed by a computer, cause the computer to perform the method recited in any one of claims 25-29.
- 31. A computer-controlled apparatus capable of performing the method recited in any one of claims 25-29.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/217,123, filed Jul. 10, 2000, which is expressly incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60217123 |
Jul 2000 |
US |