Microsoft.AI.DependencyCollector Telemetry Initializer that parses http dependencies into well-known types like Azure Storage. If telemetry item is http dependency - converts it to the well-known type of the dependency. Telemetry item to convert. Gets or sets a value indicating whether pretending the profiler is attached or not. The function that needs to be called before sending a request to the server. Creates and initializes dependency telemetry item. Telemetry client object to initialize the context of the telemetry item. Function that needs to be invoked after the request call to the sever. Computes the duration of the request and tracks the dependency telemetry item. Telemetry client object to track the telemetry item. Telemetry item to compute the duration and track. Gets the tuple from either conditional weak table or cache (based on the framework for the input web request). Target web request. Tuple of dependency telemetry and a boolean that tells if the tuple is custom created or not. Adds the tuple to either conditional weak table or cache (based on the framework for the input web request). Target web request. Dependency telemetry item to add to the table for the corresponding web request. Boolean value that tells if the current telemetry item is being added by the customer or not. Gets the tuple from either conditional weak table or cache (based on the framework for the input SQL request). Target SQL request. Tuple of dependency telemetry and a boolean that tells if the tuple is custom created or not. Adds the tuple to either conditional weak table or cache (based on the framework for the input SQL request). Target SQL request. Dependency telemetry item to add to the table for the corresponding SQL request. Boolean value that tells if the current telemetry item is being added by the customer or not. Client-Server dependency tracking. Populates WebRequest using the user, session initialized in telemetry item. Dependency telemetry item. Http web request. Populates WebRequest using the operation context in telemetry item. Dependency telemetry item. Http web request. Creates and adds cookie to the web request. Web request object. Cookie key. Cookie value. ETW EventSource tracing class. Logs the information when the DependencyTelemetry item is null as warning. Logs the information when the HttpWebRequest is null as warning. Logs the information when a telemetry item that is already existing in the tables (that is currently being tracked) is tracked again. Logs the information when the telemetry item to track is null. Keywords for the . Key word for user actionable events. Key word for resource discovery module failures. Provides methods for listening to events from FrameworkEventSource for HTTP. The Http processor. The Framework EventSource name. BeginGetResponse Event ID. EndGetResponse Event ID. BeginGetRequestStream Event ID. EndGetRequestStream Event ID. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Enables HTTP event source when EventSource is created. Called for all existing event sources when the event listener is created and when a new event source is attached to the listener. Called whenever an event has been written by an event source for which the event listener has enabled events. The event arguments that describe the event. Called when a postfix of a (HttpWebRequest|FileWebRequest|FtpWebRequest).BeginGetResponse method has been invoked. The event arguments that describe the event. Called when a postfix of a (HttpWebRequest|FileWebRequest|FtpWebRequest).EndGetResponse method has been invoked. The event arguments that describe the event. Called when a postfix of a (HttpWebRequest|FileWebRequest|FtpWebRequest).BeginGetRequestStream method has been invoked. The event arguments that describe the event. On begin callback from Framework event source. This object. URI of the web request. On end callback from Framework event source. The id. The success to indicate if the dependency call completed successfully or not. The synchronous flag to indicate if the dependency call was synchronous or not. The HTTP status code of the response. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Concrete class with all processing logic to generate RDD data from the calls backs received from Profiler instrumentation for HTTP . Initializes a new instance of the class. On begin callback for GetResponse. This object. The context for end callback. On end callback for GetResponse. The context. The return value. This object. The resulting return value. On exception callback for GetResponse callback. The context. The exception object. This object. On begin callback for GetRequestStream callback. This object. The transport context parameter. The context for end callback. On exception for GetRequestStream callback. Note: There is no call back required for GetRequestStream except on exception cases. The context. The exception. This object. The transport context parameter. On begin for BeginGetResponse callback. This object. The callback parameter. The state parameter. The context for end callback. On end for EndGetResponse callbacks. The context. The return value. This object. The asyncResult parameter. The return value passed. On exception for EndGetResponse callbacks. The context. The exception. This object. The asyncResult parameter. On begin for BeginGetRequestStream callback. This object. The callback parameter. The state parameter. The context for end callback. On exception for EndGetRequestStream callback. Note: There is no call back required for EndGetRequestStream except on exception cases. The context. The exception. This object. The asyncResult parameter. The transportContext parameter. Gets HTTP request url. Represents web request. The url if possible otherwise empty string. Common helper for all Begin Callbacks. This object. Indicates if the method used is async or not. Null object as all context is maintained in this class via weak tables. Common helper for all End Callbacks. The exception object if any. This object. Return value of the function if any. The implementation of cache provider for Windows Phone and Windows Store as MemoryCache is not available there. Type of items to store in the cache. Reader-Writer Lock for thread safety. Dictionary of cache items for fast Get and Contains operations. Cache items sorted by the time of adding to cache. Required for to clear fast cache items when items are expired. The maximum number of elements in the cache to avoid out of memory crashes. Timer for clearing expired cache items on recurring bases. The duration in milliseconds after which item in the cache is expired. Initializes a new instance of the class. Expiration timeout in milliseconds for an object to live in the cache. Maximum number of entries to cache (adjustable at runtime with MaxSize property). True to use a reader-writer lock to protect the data in the MemoryCacheList; false if the caller will handle synchronization. Checks whether the cache entry already exists in the cache. A unique identifier for the cache entry. true if the cache contains a cache entry with the same key value as key; otherwise, false. Gets the specified cache entry from the cache. A unique identifier for the cache entry. A reference to the cache entry identified by key if the entry exists; otherwise, null. Inserts a cache entry into the cache. A unique identifier for the cache entry. The object to insert. Removes a specific key from the cache. Key to remove. An object that represents the value of the removed cache entry that was specified by the key, or null if the specified entry was not found. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. The timer callback that clears expired items in the cache. An object containing information to be used by the callback method, or null. Adds the specified key and value to the dictionary. Key to add. Value to associate with key. If true, will overwrite an existing key. An entry in the MemoryCacheList. Initializes a new instance of the class. The key of the element. The value of the element. Gets the key of the element. Gets or sets the value of the element. Gets number of ticks elapsed on the clock since the element was created. Exposes a method that compares two MemoryCacheEntry objects. Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other. The first object to compare. The second object to compare. A signed integer that indicates the relative values of x and y, as shown in the following table. Represents an object cache and provides the base methods and properties for accessing the object cache. Checks whether the cache entry already exists in the cache. A unique identifier for the cache entry. true if the cache contains a cache entry with the same key value as key; otherwise, false. Gets the specified cache entry from the cache. A unique identifier for the cache entry. A reference to the cache entry identified by key if the entry exists; otherwise, null. Inserts a cache entry into the cache. A unique identifier for the cache entry. The object to insert. Removes the cache entry from the cache. A unique identifier for the cache entry. True if the element is successfully found and removed; otherwise, false. This method returns false if key is not found. Single high precision clock used by operations. High precision stopwatch. Number of 100 nanoseconds per high-precision clock tick. The time clock started. Gets number of ticks elapsed on the clock since the start. Calculates time between two clock readings. Start time in ticks. End time in ticks. Time between two clock readings. Converts time on the operation clock (in ticks) to date and time structure. Ticks elapsed according to operation watch. Date time structure representing the date and time that corresponds to the operation clock reading. Represents a collection of sorted elements that are accessible by index. The type of element. Represents a collection of objects that can be individually accessed by index. Exposes a method that compares two objects. Initializes a new instance of the SortedList class that is empty. The IComparer implementation to use when comparing elements. Gets the number of elements contained in a SortedList object. Gets the element at a specified index in a sequence. The zero-based index of the element to get. The element at the specified position in the source sequence. Returns an enumerator that iterates through a collection. An IEnumerator object that can be used to iterate through the collection. Returns an enumerator that iterates through a collection. An IEnumerator object that can be used to iterate through the collection. Adds an element with the specified value to a SortedList object. Item to add. Removes the element at the specified index of a SortedList object. The zero-based index of the element to remove. Removes the element with the specified value from a SortedList object. Item to remove. Determines the index of a specific item in the IList. The object to locate in the IList. True if value is found in the list, otherwise false. The index of value if found in the list; otherwise, the index of value where it needs to be inserted. Determines whether an URL is application insights URL. HTTP URL. True if URL is application insights url, otherwise false. Provides methods for listening to events from FrameworkEventSource for SQL. The SQL processor. The Framework EventSource name for SQL. BeginExecute Event ID. EndExecute Event ID. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Enables SQL event source when EventSource is created. Called for all existing event sources when the event listener is created and when a new event source is attached to the listener. Called whenever an event has been written by an event source for which the event listener has enabled events. The event arguments that describe the event. Called when a postfix of a SQLCommand begin methods have been invoked. The event arguments that describe the event. Called when a postfix of a postfix of a SQLCommand end methods have been invoked. The event arguments that describe the event. Initializes a new instance of the class. On begin callback from Framework event source. Identifier of SQL connection object. Data source name. Database name. Command text. On end callback from Framework event source. Identifier of SQL connection object. Indicate whether operation completed successfully. Indicates whether operation was called synchronously or asynchronously. SQL exception number. Gets SQL command resource name. DataSource name. Database name. CommandText name. The resource name if possible otherwise empty string. Concrete class with all processing logic to generate RDD data from the calls backs received from Profiler instrumentation for SQL. Initializes a new instance of the class. On begin callback for methods with 1 parameter. On begin callback for methods with 2 parameter. On begin callback for methods with 3 parameters. On begin callback for methods with 4 parameter. On end callback for methods with 1 parameter. On end callback for methods with 2 parameter. On end callback for methods with 3 parameter. On exception callback for methods with 1 parameter. On exception callback for methods with 2 parameter. On exception callback for methods with 3 parameter. Gets SQL command resource name. The SQL command. Before we have clarity with SQL team around EventSource instrumentation, providing name as a concatenation of parameters. The resource name if possible otherwise empty string. Return CommandTest for SQL resource. The SQL command. Returns the command text or empty. Common helper for all Begin Callbacks. This object. The context for end callback. Common helper for all End Callbacks. The exception object if any. This object. Remote dependency monitoring. Gets or sets a value indicating whether to disable runtime instrumentation. IDisposable implementation. Initialize method is called after all configuration properties have been loaded from the configuration. IDisposable implementation. The method has been called directly or indirectly by a user's code. Initialize for framework event source (not supported for Net40). Initialize for runtime instrumentation or framework event source. Dependency Telemetry extension methods to associate with request objects and to store in conditional/cache tables to avoid duplicate tracking. Associates telemetry item to a web request to avoid duplicate tracking, and populates cookies with data from initialized telemetry item if setCookies is set to true. When there is an existing telemetry item in the corresponding to the given WEB REQUEST, we return the existing telemetry and associate the same with the WEB REQUEST. Telemetry object that needs to be associated with the web request. Web request object which we use to populate from the information obtained from the initialized telemetry. Set cookies enables the process of setting the cookies to the web request. By default it is set to false. Set request headers to correlate dependency telemetry item with the request telemetry item that will process this http request. Dependency telemetry item with an associated dependency telemetry item. Associates telemetry item to a SQL command object to to avoid duplicate tracking. When there is an existing telemetry item in the corresponding to the given SQL REQUEST, we return the existing telemetry and associate the same with the SQL REQUEST. Telemetry object that needs to be associated with the web request. SQL request object which is used as a key to store in the tables. Dependency telemetry item with an associated dependency telemetry item.