Merge branch 'develop' into tilee/test_netcore_telemetryprocessor
This commit is contained in:
Коммит
caabf4b257
|
@ -22,7 +22,7 @@
|
|||
## Build
|
||||
|
||||
To successfully build the sources on your machine, make sure you've installed the following prerequisites:
|
||||
- Visual Studio 2019 Community or Enterprise
|
||||
- Visual Studio 2019 Community, Professional or Enterprise
|
||||
- .NET SDKs (https://dotnet.microsoft.com/download)
|
||||
- .NET 4.8
|
||||
- .NET Core 3.1 SDK
|
||||
|
|
|
@ -3,4 +3,6 @@ name: Issue with Application Insights Snapshot Debugger
|
|||
about: Need help with Application Insights Snapshot Debugger
|
||||
---
|
||||
|
||||
If you're seeing issue with [Application Insights Snapshot Debugger](https://docs.microsoft.com/azure/azure-monitor/app/snapshot-debugger), get support from [Azure Support Center](https://azure.microsoft.com/support/create-ticket/).
|
||||
If you encounter an issue with [Application Insights Snapshot Debugger](https://docs.microsoft.com/azure/azure-monitor/app/snapshot-debugger) in Azure, please check the [troubleshooting documentation](https://docs.microsoft.com/azure/azure-monitor/app/snapshot-debugger-troubleshoot). Use the [Azure Support Center](https://azure.microsoft.com/support/create-ticket/) to file a ticket if the troubleshooting document didn't help.
|
||||
|
||||
Otherwise, please [file an issue](https://github.com/microsoft/ApplicationInsights-SnapshotCollector/issues/new/choose) in the Microsoft/ApplicationInsights-SnapshotCollector repo.
|
||||
|
|
|
@ -20,3 +20,8 @@ We will close this issue if:
|
|||
|
||||
* The repro project you share with us is complex. We can't investigate custom projects, so don't point us to such, please.
|
||||
* If we will not be able to repro the behavior you're reporting
|
||||
|
||||
### For Immediate Support
|
||||
|
||||
For immediate support relating to the Application Insights .NET SDK we encourage you to file an [Azure Support Request](https://docs.microsoft.com/azure/azure-portal/supportability/how-to-create-azure-support-request) with Microsoft Azure instead of filing a GitHub Issue in this repository.
|
||||
You can do so by going online to the [Azure portal](https://portal.azure.com/) and submitting a support request. Access to subscription management and billing support is included with your Microsoft Azure subscription, and technical support is provided through one of the [Azure Support Plans](https://azure.microsoft.com/support/plans/). For step-by-step guidance for the Azure portal, see [How to create an Azure support request](https://docs.microsoft.com/azure/azure-portal/supportability/how-to-create-azure-support-request). Alternatively, you can create and manage your support tickets programmatically using the [Azure Support ticket REST API](https://docs.microsoft.com/rest/api/support/)
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
# To get started with Dependabot version updates, you'll need to specify which
|
||||
# package ecosystems to update and where the package manifests are located.
|
||||
# Please see the documentation for all configuration options:
|
||||
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
||||
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "nuget"
|
||||
directory: "/" # Location of package manifests
|
||||
schedule:
|
||||
interval: "daily"
|
|
@ -9,21 +9,24 @@
|
|||
<Import Project=".\_AnalyzerSettings.props" />
|
||||
|
||||
<Import Project=".\_GlobalStaticVersion.props" />
|
||||
<Import Project=".\_Nupkg.props" />
|
||||
<Import Project=".\_Nupkg.props" Condition="'$(IsExamplesSolution)' != 'true'"/>
|
||||
|
||||
<ItemGroup Condition=" $(OS) == 'Windows_NT'">
|
||||
<!--Analyzers-->
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="5.0.3">
|
||||
<PrivateAssets>All</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118">
|
||||
<PrivateAssets>All</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="3.3.0">
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="3.3.2">
|
||||
<PrivateAssets>All</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="3.3.0">
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="3.3.2">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" Version="3.3.0">
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" Version="3.3.2">
|
||||
<PrivateAssets>All</PrivateAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
|
@ -40,6 +43,16 @@
|
|||
</ItemGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<!-- Enable all the latest CA rules from 'Microsoft.CodeAnalysis.NetAnalyzers' as build warnings by default -->
|
||||
|
||||
<AnalysisLevel>latest</AnalysisLevel>
|
||||
<AnalysisMode>AllEnabledByDefault</AnalysisMode>
|
||||
|
||||
<!-- This appears to create a conflict between using built-in analyzers and the NuGetPackage. -->
|
||||
<!--<EnableNETAnalyzers>true</EnableNETAnalyzers>-->
|
||||
|
||||
|
||||
|
||||
<!--Removing the SRC folder from the output directory-->
|
||||
<CorePath>$(RelativeOutputPathBase)</CorePath>
|
||||
<OutputPath>$(BinRoot)\$(Configuration)\$(CorePath)</OutputPath>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
Update for every public release.
|
||||
-->
|
||||
<SemanticVersionMajor>2</SemanticVersionMajor>
|
||||
<SemanticVersionMinor>16</SemanticVersionMinor> <!-- If changing the Minor version, also update the Date value. -->
|
||||
<SemanticVersionMinor>18</SemanticVersionMinor> <!-- If changing the Minor version, also update the Date value. -->
|
||||
<SemanticVersionPatch>0</SemanticVersionPatch>
|
||||
<PreReleaseMilestone>beta1</PreReleaseMilestone> <!--Valid values: beta1, beta2, EMPTY for stable -->
|
||||
<PreReleaseMilestone Condition="'$(NightlyBuild)' == 'True'">nightly</PreReleaseMilestone> <!-- Overwrite this property for nightly builds from the DEVELOP branch. -->
|
||||
|
@ -22,13 +22,16 @@
|
|||
as it will restart file versions so 2.4.0-beta1 may have higher
|
||||
file version (like 2.4.0.2222) than 2.4.0-beta2 (like 2.4.0.1111)
|
||||
-->
|
||||
<SemanticVersionDate>2020-09-08</SemanticVersionDate>
|
||||
<SemanticVersionDate>2021-02-19</SemanticVersionDate>
|
||||
|
||||
<!--
|
||||
Pre-release version is used to distinguish internally built NuGet packages.
|
||||
Pre-release version = Minutes since semantic version was set, divided by 5 (to make it fit in a UInt16 (max 65535 = ~7 months).
|
||||
BuildNumber uniquely identifies all builds (The max allowed value is UInt16.MaxValue = 65535).
|
||||
The BuildNumber is used for nightly build package name and DLL assembly version.
|
||||
NuGet uses alphanumeric sorting, so this value is padded with zeros.
|
||||
BuildNumber = Hours since semantic version was set, divided by 12 (~89 years).
|
||||
-->
|
||||
<BuildNumber>$([MSBuild]::Divide($([System.DateTime]::Now.Subtract($([System.DateTime]::Parse($(SemanticVersionDate)))).TotalMinutes), 5).ToString('F0'))</BuildNumber>
|
||||
<BuildNumberHours>$([MSBuild]::Divide($([System.DateTime]::Now.Subtract($([System.DateTime]::Parse($(SemanticVersionDate)))).TotalHours), 12))</BuildNumberHours>
|
||||
<BuildNumber>$([System.Math]::Floor($(BuildNumberHours)).ToString('F0').PadLeft(5, '0'))</BuildNumber>
|
||||
|
||||
<VersionPrefix>$(SemanticVersionMajor).$(SemanticVersionMinor).$(SemanticVersionPatch)</VersionPrefix>
|
||||
<VersionSuffix>$(PreReleaseMilestone)</VersionSuffix>
|
||||
|
|
|
@ -1,3 +1,16 @@
|
|||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.AppIdMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderKeyMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderValueMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.QuickPulseResponseHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.RequestHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceParentHeaderMaxLength = 55 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateHeaderMaxLength = 512 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateMaxPairs = 32 -> int
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.ApplicationIdTraceStateField = "cid-v1" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.AzureTracestateNamespace = "az" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceParentHeader = "traceparent" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TracestateAzureSeparator = ';' -> char
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceStateHeader = "tracestate" -> string
|
||||
Microsoft.ApplicationInsights.Common.ActiveSubsciptionManager
|
||||
Microsoft.ApplicationInsights.Common.ActiveSubsciptionManager.ActiveSubsciptionManager() -> void
|
||||
Microsoft.ApplicationInsights.Common.ActiveSubsciptionManager.Attach(object subscription) -> void
|
||||
|
@ -39,19 +52,6 @@ Microsoft.ApplicationInsights.W3C.W3CConstants
|
|||
Microsoft.ApplicationInsights.W3C.W3COperationCorrelationTelemetryInitializer
|
||||
Microsoft.ApplicationInsights.W3C.W3COperationCorrelationTelemetryInitializer.Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.W3C.W3COperationCorrelationTelemetryInitializer.W3COperationCorrelationTelemetryInitializer() -> void
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.AppIdMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderKeyMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderValueMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.QuickPulseResponseHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.RequestHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceParentHeaderMaxLength = 55 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateHeaderMaxLength = 512 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateMaxPairs = 32 -> int
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.ApplicationIdTraceStateField = "cid-v1" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.AzureTracestateNamespace = "az" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceParentHeader = "traceparent" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceStateHeader = "tracestate" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TracestateAzureSeparator = ';' -> char
|
||||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
static Microsoft.ApplicationInsights.Common.StringUtilities.EnforceMaxLength(string input, int maxLength) -> string
|
||||
static Microsoft.ApplicationInsights.Common.StringUtilities.FormatRequestId(string traceId, string spanId) -> string
|
||||
|
@ -69,4 +69,4 @@ static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.IsW3CActivity(thi
|
|||
static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.SetTraceparent(this System.Diagnostics.Activity activity, string value) -> void
|
||||
static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.SetTracestate(this System.Diagnostics.Activity activity, string value) -> void
|
||||
static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.UpdateContextOnActivity(this System.Diagnostics.Activity activity) -> System.Diagnostics.Activity
|
||||
virtual Microsoft.ApplicationInsights.DependencyCollector.DependencyTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
virtual Microsoft.ApplicationInsights.DependencyCollector.DependencyTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
|
|
|
@ -1,3 +1,16 @@
|
|||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.AppIdMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderKeyMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderValueMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.QuickPulseResponseHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.RequestHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceParentHeaderMaxLength = 55 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateHeaderMaxLength = 512 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateMaxPairs = 32 -> int
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.ApplicationIdTraceStateField = "cid-v1" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.AzureTracestateNamespace = "az" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceParentHeader = "traceparent" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TracestateAzureSeparator = ';' -> char
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceStateHeader = "tracestate" -> string
|
||||
Microsoft.ApplicationInsights.Common.ActiveSubsciptionManager
|
||||
Microsoft.ApplicationInsights.Common.ActiveSubsciptionManager.ActiveSubsciptionManager() -> void
|
||||
Microsoft.ApplicationInsights.Common.ActiveSubsciptionManager.Attach(object subscription) -> void
|
||||
|
@ -38,19 +51,6 @@ Microsoft.ApplicationInsights.W3C.W3CConstants
|
|||
Microsoft.ApplicationInsights.W3C.W3COperationCorrelationTelemetryInitializer
|
||||
Microsoft.ApplicationInsights.W3C.W3COperationCorrelationTelemetryInitializer.Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.W3C.W3COperationCorrelationTelemetryInitializer.W3COperationCorrelationTelemetryInitializer() -> void
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.AppIdMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderKeyMaxLength = 50 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.ContextHeaderValueMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.QuickPulseResponseHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.RequestHeaderMaxLength = 1024 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceParentHeaderMaxLength = 55 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateHeaderMaxLength = 512 -> int
|
||||
const Microsoft.ApplicationInsights.Common.InjectionGuardConstants.TraceStateMaxPairs = 32 -> int
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.ApplicationIdTraceStateField = "cid-v1" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.AzureTracestateNamespace = "az" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceParentHeader = "traceparent" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TraceStateHeader = "tracestate" -> string
|
||||
const Microsoft.ApplicationInsights.W3C.W3CConstants.TracestateAzureSeparator = ';' -> char
|
||||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
static Microsoft.ApplicationInsights.Common.StringUtilities.EnforceMaxLength(string input, int maxLength) -> string
|
||||
static Microsoft.ApplicationInsights.Common.StringUtilities.FormatRequestId(string traceId, string spanId) -> string
|
||||
|
@ -66,4 +66,4 @@ static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.IsW3CActivity(thi
|
|||
static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.SetTraceparent(this System.Diagnostics.Activity activity, string value) -> void
|
||||
static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.SetTracestate(this System.Diagnostics.Activity activity, string value) -> void
|
||||
static Microsoft.ApplicationInsights.W3C.W3CActivityExtensions.UpdateContextOnActivity(this System.Diagnostics.Activity activity) -> System.Diagnostics.Activity
|
||||
virtual Microsoft.ApplicationInsights.DependencyCollector.DependencyTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
virtual Microsoft.ApplicationInsights.DependencyCollector.DependencyTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.Counters.get -> System.Collections.Generic.IList<Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionRequest>
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.UseEventSourceNameAsMetricsNamespace.get -> bool
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.UseEventSourceNameAsMetricsNamespace.set -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.Dispose() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.EventCounterCollectionModule() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.Initialize(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.UseEventSourceNameAsMetricsNamespace.get -> bool
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.UseEventSourceNameAsMetricsNamespace.set -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionRequest
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionRequest.EventCounterCollectionRequest() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionRequest.EventCounterCollectionRequest(string eventSourceName, string eventCounterName) -> void
|
||||
|
@ -14,4 +14,4 @@ Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCo
|
|||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionRequest.EventSourceName.get -> string
|
||||
Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionRequest.EventSourceName.set -> void
|
||||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
virtual Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.Dispose(bool disposing) -> void
|
||||
virtual Microsoft.ApplicationInsights.Extensibility.EventCounterCollector.EventCounterCollectionModule.Dispose(bool disposing) -> void
|
||||
|
|
|
@ -33,4 +33,4 @@ Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.Quic
|
|||
Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryProcessor.Initialize(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryProcessor.Process(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryProcessor.QuickPulseTelemetryProcessor(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor next) -> void
|
||||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
|
|
|
@ -33,4 +33,4 @@ Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.Quic
|
|||
Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryProcessor.Initialize(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryProcessor.Process(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse.QuickPulseTelemetryProcessor.QuickPulseTelemetryProcessor(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor next) -> void
|
||||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.ServerTelemetryChannel.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
|
@ -0,0 +1 @@
|
|||
Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.ServerTelemetryChannel.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
|
@ -81,8 +81,6 @@ Microsoft.ApplicationInsights.Web.UserTelemetryInitializer
|
|||
Microsoft.ApplicationInsights.Web.UserTelemetryInitializer.UserTelemetryInitializer() -> void
|
||||
Microsoft.ApplicationInsights.Web.WebTestTelemetryInitializer
|
||||
Microsoft.ApplicationInsights.Web.WebTestTelemetryInitializer.WebTestTelemetryInitializer() -> void
|
||||
System.Web.HttpContextBaseExtension
|
||||
System.Web.HttpContextExtension
|
||||
override Microsoft.ApplicationInsights.Web.AccountIdTelemetryInitializer.OnInitializeTelemetry(System.Web.HttpContext platformContext, Microsoft.ApplicationInsights.DataContracts.RequestTelemetry requestTelemetry, Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
override Microsoft.ApplicationInsights.Web.AuthenticatedUserIdTelemetryInitializer.OnInitializeTelemetry(System.Web.HttpContext platformContext, Microsoft.ApplicationInsights.DataContracts.RequestTelemetry requestTelemetry, Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
override Microsoft.ApplicationInsights.Web.ClientIpHeaderTelemetryInitializer.OnInitializeTelemetry(System.Web.HttpContext platformContext, Microsoft.ApplicationInsights.DataContracts.RequestTelemetry requestTelemetry, Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
|
@ -95,10 +93,12 @@ override Microsoft.ApplicationInsights.Web.WebTestTelemetryInitializer.OnInitial
|
|||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
static System.Web.HttpContextBaseExtension.GetRequestTelemetry(this System.Web.HttpContextBase context) -> Microsoft.ApplicationInsights.DataContracts.RequestTelemetry
|
||||
static System.Web.HttpContextExtension.GetRequestTelemetry(this System.Web.HttpContext context) -> Microsoft.ApplicationInsights.DataContracts.RequestTelemetry
|
||||
System.Web.HttpContextBaseExtension
|
||||
System.Web.HttpContextExtension
|
||||
virtual Microsoft.ApplicationInsights.Web.AspNetDiagnosticTelemetryModule.Dispose(bool dispose) -> void
|
||||
virtual Microsoft.ApplicationInsights.Web.AzureAppServiceRoleNameFromHostNameHeaderInitializer.GetRequestFromContext(System.Web.HttpContext context) -> Microsoft.ApplicationInsights.DataContracts.RequestTelemetry
|
||||
virtual Microsoft.ApplicationInsights.Web.AzureAppServiceRoleNameFromHostNameHeaderInitializer.ResolvePlatformContext() -> System.Web.HttpContext
|
||||
virtual Microsoft.ApplicationInsights.Web.ExceptionTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
virtual Microsoft.ApplicationInsights.Web.Implementation.WebTelemetryModuleBase.OnBeginRequest(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry requestTelemetry, System.Web.HttpContext platformContext) -> void
|
||||
virtual Microsoft.ApplicationInsights.Web.Implementation.WebTelemetryModuleBase.OnEndRequest(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry requestTelemetry, System.Web.HttpContext platformContext) -> void
|
||||
virtual Microsoft.ApplicationInsights.Web.Implementation.WebTelemetryModuleBase.OnError(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry requestTelemetry, System.Web.HttpContext platformContext) -> void
|
||||
virtual Microsoft.ApplicationInsights.Web.Implementation.WebTelemetryModuleBase.OnError(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry requestTelemetry, System.Web.HttpContext platformContext) -> void
|
||||
|
|
|
@ -67,8 +67,8 @@ Microsoft.ApplicationInsights.AspNetCore.Extensions.RequestCollectionOptions.Tra
|
|||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet
|
||||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet.FullScript.get -> string
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.TelemetryModuleType.get -> System.Type
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory.Create(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessor) -> Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor
|
||||
|
@ -136,23 +136,23 @@ static Microsoft.ApplicationInsights.AspNetCore.Resources.Culture.set -> void
|
|||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptAuthSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.ResourceManager.get -> System.Resources.ResourceManager
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder, string instrumentationKey) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, string connectionString, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.Extensions.Configuration.IConfiguration configuration) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, string instrumentationKey) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Type telemetryProcessorType) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsExceptionTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsRequestTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, Microsoft.Extensions.Logging.LogLevel minLevel) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter, System.Action loggerAddedCallback) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
virtual Microsoft.ApplicationInsights.AspNetCore.RequestTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
|
|
|
@ -67,8 +67,8 @@ Microsoft.ApplicationInsights.AspNetCore.Extensions.RequestCollectionOptions.Tra
|
|||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet
|
||||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet.FullScript.get -> string
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.TelemetryModuleType.get -> System.Type
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory.Create(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessor) -> Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor
|
||||
|
@ -136,23 +136,23 @@ static Microsoft.ApplicationInsights.AspNetCore.Resources.Culture.set -> void
|
|||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptAuthSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.ResourceManager.get -> System.Resources.ResourceManager
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder, string instrumentationKey) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, string connectionString, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.Extensions.Configuration.IConfiguration configuration) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, string instrumentationKey) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Type telemetryProcessorType) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsExceptionTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsRequestTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, Microsoft.Extensions.Logging.LogLevel minLevel) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter, System.Action loggerAddedCallback) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
virtual Microsoft.ApplicationInsights.AspNetCore.RequestTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
|
|
|
@ -67,8 +67,8 @@ Microsoft.ApplicationInsights.AspNetCore.Extensions.RequestCollectionOptions.Tra
|
|||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet
|
||||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet.FullScript.get -> string
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.TelemetryModuleType.get -> System.Type
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory.Create(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessor) -> Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor
|
||||
|
@ -136,23 +136,23 @@ static Microsoft.ApplicationInsights.AspNetCore.Resources.Culture.set -> void
|
|||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptAuthSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.ResourceManager.get -> System.Resources.ResourceManager
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder, string instrumentationKey) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, string connectionString, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.Extensions.Configuration.IConfiguration configuration) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, string instrumentationKey) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Type telemetryProcessorType) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsExceptionTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsRequestTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, Microsoft.Extensions.Logging.LogLevel minLevel) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter, System.Action loggerAddedCallback) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
virtual Microsoft.ApplicationInsights.AspNetCore.RequestTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
|
|
|
@ -69,8 +69,8 @@ Microsoft.ApplicationInsights.AspNetCore.Extensions.RequestCollectionOptions.Tra
|
|||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet
|
||||
Microsoft.ApplicationInsights.AspNetCore.IJavaScriptSnippet.FullScript.get -> string
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryModuleConfigurator.TelemetryModuleType.get -> System.Type
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory
|
||||
Microsoft.ApplicationInsights.AspNetCore.ITelemetryProcessorFactory.Create(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessor) -> Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor
|
||||
|
@ -138,23 +138,23 @@ static Microsoft.ApplicationInsights.AspNetCore.Resources.Culture.set -> void
|
|||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptAuthSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.JavaScriptSnippet.get -> string
|
||||
static Microsoft.ApplicationInsights.AspNetCore.Resources.ResourceManager.get -> System.Resources.ResourceManager
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder, string instrumentationKey) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.AspNetCore.Hosting.ApplicationInsightsWebHostBuilderExtensions.UseApplicationInsights(this Microsoft.AspNetCore.Hosting.IWebHostBuilder webHostBuilder) -> Microsoft.AspNetCore.Hosting.IWebHostBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, string connectionString, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.Extensions.Configuration.IConfiguration configuration) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, string instrumentationKey) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetry(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Type telemetryProcessorType) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T, Microsoft.ApplicationInsights.AspNetCore.Extensions.ApplicationInsightsServiceOptions> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsExceptionTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.UseApplicationInsightsRequestTelemetry(this Microsoft.AspNetCore.Builder.IApplicationBuilder app) -> Microsoft.AspNetCore.Builder.IApplicationBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, Microsoft.Extensions.Logging.LogLevel minLevel) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter, System.Action loggerAddedCallback) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider, System.Func<string, Microsoft.Extensions.Logging.LogLevel, bool> filter) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggerFactoryExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggerFactory factory, System.IServiceProvider serviceProvider) -> Microsoft.Extensions.Logging.ILoggerFactory
|
||||
virtual Microsoft.ApplicationInsights.AspNetCore.RequestTrackingTelemetryModule.Dispose(bool disposing) -> void
|
||||
|
|
|
@ -11,4 +11,4 @@ Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceTelemetry
|
|||
Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceTelemetryModule.Sources.get -> System.Collections.Generic.IList<Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest>
|
||||
Microsoft.ApplicationInsights.DiagnosticSourceListener.OnEventWrittenHandler
|
||||
override Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest.Equals(object obj) -> bool
|
||||
override Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest.GetHashCode() -> int
|
||||
override Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest.GetHashCode() -> int
|
||||
|
|
|
@ -11,4 +11,4 @@ Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceTelemetry
|
|||
Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceTelemetryModule.Sources.get -> System.Collections.Generic.IList<Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest>
|
||||
Microsoft.ApplicationInsights.DiagnosticSourceListener.OnEventWrittenHandler
|
||||
override Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest.Equals(object obj) -> bool
|
||||
override Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest.GetHashCode() -> int
|
||||
override Microsoft.ApplicationInsights.DiagnosticSourceListener.DiagnosticSourceListeningRequest.GetHashCode() -> int
|
||||
|
|
|
@ -17,4 +17,4 @@ Microsoft.ApplicationInsights.EtwCollector.EtwTelemetryModule.Sources.get -> Sys
|
|||
Microsoft.ApplicationInsights.TraceEvent.Shared.Utilities.TplActivities
|
||||
static readonly Microsoft.ApplicationInsights.TraceEvent.Shared.Utilities.TplActivities.TaskFlowActivityIdsKeyword -> ulong
|
||||
static readonly Microsoft.ApplicationInsights.TraceEvent.Shared.Utilities.TplActivities.TplEventSourceGuid -> System.Guid
|
||||
virtual Microsoft.ApplicationInsights.EtwCollector.EtwTelemetryModule.Dispose(bool isDisposing) -> void
|
||||
virtual Microsoft.ApplicationInsights.EtwCollector.EtwTelemetryModule.Dispose(bool isDisposing) -> void
|
||||
|
|
|
@ -31,4 +31,4 @@ static Microsoft.ApplicationInsights.EventSourceListener.Implementation.EventDat
|
|||
static Microsoft.ApplicationInsights.EventSourceListener.Implementation.EventDataExtensions.PopulatePayloadProperties(this Microsoft.ApplicationInsights.DataContracts.TraceTelemetry telemetry, System.Diagnostics.Tracing.EventWrittenEventArgs eventSourceEvent) -> Microsoft.ApplicationInsights.DataContracts.TraceTelemetry
|
||||
static Microsoft.ApplicationInsights.EventSourceListener.Implementation.EventDataExtensions.PopulateStandardProperties(this Microsoft.ApplicationInsights.DataContracts.TraceTelemetry telemetry, System.Diagnostics.Tracing.EventWrittenEventArgs eventSourceEvent) -> Microsoft.ApplicationInsights.DataContracts.TraceTelemetry
|
||||
static readonly Microsoft.ApplicationInsights.TraceEvent.Shared.Utilities.TplActivities.TaskFlowActivityIdsKeyword -> ulong
|
||||
static readonly Microsoft.ApplicationInsights.TraceEvent.Shared.Utilities.TplActivities.TplEventSourceGuid -> System.Guid
|
||||
static readonly Microsoft.ApplicationInsights.TraceEvent.Shared.Utilities.TplActivities.TplEventSourceGuid -> System.Guid
|
||||
|
|
|
@ -3,4 +3,4 @@ Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.Applic
|
|||
Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.InstrumentationKey.get -> string
|
||||
Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.InstrumentationKey.set -> void
|
||||
override Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.ActivateOptions() -> void
|
||||
override Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.Flush(int millisecondsTimeout) -> bool
|
||||
override Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.Flush(int millisecondsTimeout) -> bool
|
||||
|
|
|
@ -3,4 +3,4 @@ Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.Applic
|
|||
Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.InstrumentationKey.get -> string
|
||||
Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.InstrumentationKey.set -> void
|
||||
override Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.ActivateOptions() -> void
|
||||
override Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.Flush(int millisecondsTimeout) -> bool
|
||||
override Microsoft.ApplicationInsights.Log4NetAppender.ApplicationInsightsAppender.Flush(int millisecondsTimeout) -> bool
|
||||
|
|
|
@ -9,4 +9,4 @@ Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.Layout.set ->
|
|||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.Name.get -> string
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.Name.set -> void
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.TargetPropertyWithContext() -> void
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.TargetPropertyWithContext(string name, NLog.Layouts.Layout layout) -> void
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.TargetPropertyWithContext(string name, NLog.Layouts.Layout layout) -> void
|
||||
|
|
|
@ -9,4 +9,4 @@ Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.Layout.set ->
|
|||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.Name.get -> string
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.Name.set -> void
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.TargetPropertyWithContext() -> void
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.TargetPropertyWithContext(string name, NLog.Layouts.Layout layout) -> void
|
||||
Microsoft.ApplicationInsights.NLogTarget.TargetPropertyWithContext.TargetPropertyWithContext(string name, NLog.Layouts.Layout layout) -> void
|
||||
|
|
|
@ -5,8 +5,8 @@ override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceLis
|
|||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.IsThreadSafe.get -> bool
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceData(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, object data) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceData(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, params object[] data) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, string format, params object[] args) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, string message) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.Write(string message) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.WriteLine(string message) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.WriteLine(string message) -> void
|
||||
|
|
|
@ -5,8 +5,8 @@ override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceLis
|
|||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.IsThreadSafe.get -> bool
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceData(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, object data) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceData(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, params object[] data) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, string format, params object[] args) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id, string message) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.TraceEvent(System.Diagnostics.TraceEventCache eventCache, string source, System.Diagnostics.TraceEventType eventType, int id) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.Write(string message) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.WriteLine(string message) -> void
|
||||
override Microsoft.ApplicationInsights.TraceListener.ApplicationInsightsTraceListener.WriteLine(string message) -> void
|
||||
|
|
|
@ -38,8 +38,8 @@ Microsoft.ApplicationInsights.WorkerService.DependencyCollectionOptions.Dependen
|
|||
Microsoft.ApplicationInsights.WorkerService.DependencyCollectionOptions.EnableLegacyCorrelationHeadersInjection.get -> bool
|
||||
Microsoft.ApplicationInsights.WorkerService.DependencyCollectionOptions.EnableLegacyCorrelationHeadersInjection.set -> void
|
||||
Microsoft.ApplicationInsights.WorkerService.ITelemetryModuleConfigurator
|
||||
Microsoft.ApplicationInsights.WorkerService.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.WorkerService.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule, Microsoft.ApplicationInsights.WorkerService.ApplicationInsightsServiceOptions options) -> void
|
||||
Microsoft.ApplicationInsights.WorkerService.ITelemetryModuleConfigurator.Configure(Microsoft.ApplicationInsights.Extensibility.ITelemetryModule telemetryModule) -> void
|
||||
Microsoft.ApplicationInsights.WorkerService.ITelemetryModuleConfigurator.TelemetryModuleType.get -> System.Type
|
||||
Microsoft.ApplicationInsights.WorkerService.ITelemetryProcessorFactory
|
||||
Microsoft.ApplicationInsights.WorkerService.ITelemetryProcessorFactory.Create(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessor) -> Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor
|
||||
|
@ -54,10 +54,10 @@ static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.Ad
|
|||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsSettings(this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationSourceRoot, string connectionString, bool? developerMode = null, string endpointAddress = null, string instrumentationKey = null) -> Microsoft.Extensions.Configuration.IConfigurationBuilder
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Type telemetryProcessorType) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryProcessor<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryWorkerService(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryWorkerService(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.ApplicationInsights.WorkerService.ApplicationInsightsServiceOptions options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryWorkerService(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, Microsoft.Extensions.Configuration.IConfiguration configuration) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryWorkerService(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, string instrumentationKey) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryWorkerService(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<Microsoft.ApplicationInsights.WorkerService.ApplicationInsightsServiceOptions> options) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.AddApplicationInsightsTelemetryWorkerService(this Microsoft.Extensions.DependencyInjection.IServiceCollection services) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T, Microsoft.ApplicationInsights.WorkerService.ApplicationInsightsServiceOptions> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
static Microsoft.Extensions.DependencyInjection.ApplicationInsightsExtensions.ConfigureTelemetryModule<T>(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action<T> configModule) -> Microsoft.Extensions.DependencyInjection.IServiceCollection
|
||||
|
|
|
@ -93,6 +93,8 @@ Microsoft.ApplicationInsights.Channel.Transmission.TransmissionStatusEvent.get -
|
|||
Microsoft.ApplicationInsights.Channel.Transmission.TransmissionStatusEvent.set -> void
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.Response.get -> Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.ResponseDurationInMs.get -> long
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.TransmissionStatusEventArgs(Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper response, long responseDurationInMs) -> void
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.TransmissionStatusEventArgs(Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper response) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.AvailabilityTelemetry
|
||||
Microsoft.ApplicationInsights.DataContracts.AvailabilityTelemetry.AvailabilityTelemetry() -> void
|
||||
|
@ -129,8 +131,8 @@ Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyKind.g
|
|||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyKind.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry() -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyName, string data, System.DateTimeOffset startTime, System.TimeSpan duration, bool success) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data, System.DateTimeOffset startTime, System.TimeSpan duration, string resultCode, bool success) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTypeName.get -> string
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTypeName.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.ItemTypeFlag.get -> Microsoft.ApplicationInsights.DataContracts.SamplingTelemetryItemTypes
|
||||
|
@ -434,8 +436,8 @@ Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.SeverityLevel.set ->
|
|||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.Timestamp.get -> System.DateTimeOffset
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.Timestamp.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry() -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor.AutocollectedMetricsExtractor(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessorInPipeline) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor.Dispose() -> void
|
||||
|
@ -576,8 +578,8 @@ Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorCha
|
|||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChain.Process(Microsoft.ApplicationInsights.Channel.ITelemetry item) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.Build() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration, Microsoft.ApplicationInsights.Extensibility.TelemetrySink telemetrySink) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.Use(System.Func<Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor, Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor> telemetryProcessorFactory) -> Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule.AddHeartbeatProperty(string propertyName, string propertyValue, bool isHealthy) -> bool
|
||||
|
@ -673,8 +675,8 @@ Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.Instrumentati
|
|||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryChannel.get -> Microsoft.ApplicationInsights.Channel.ITelemetryChannel
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryChannel.set -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey, Microsoft.ApplicationInsights.Channel.ITelemetryChannel channel) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryInitializers.get -> System.Collections.Generic.IList<Microsoft.ApplicationInsights.Extensibility.ITelemetryInitializer>
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryProcessorChainBuilder.get -> Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryProcessors.get -> System.Collections.ObjectModel.ReadOnlyCollection<Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor>
|
||||
|
@ -702,40 +704,40 @@ Microsoft.ApplicationInsights.Metric.GetAllSeries() -> System.Collections.Generi
|
|||
Microsoft.ApplicationInsights.Metric.GetDimensionValues(int dimensionNumber) -> System.Collections.Generic.IReadOnlyCollection<string>
|
||||
Microsoft.ApplicationInsights.Metric.Identifier.get -> Microsoft.ApplicationInsights.Metrics.MetricIdentifier
|
||||
Microsoft.ApplicationInsights.Metric.SeriesCount.get -> int
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, bool createIfNotExists, params string[] dimensionValues) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series) -> bool
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope.TelemetryClient = 1 -> Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope.TelemetryConfiguration = 0 -> Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
|
@ -754,8 +756,8 @@ Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator
|
|||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.CompleteAggregation(System.DateTimeOffset periodEnd) -> Microsoft.ApplicationInsights.Metrics.MetricAggregate
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.CreateAggregateUnsafe(System.DateTimeOffset periodEnd) -> Microsoft.ApplicationInsights.Metrics.MetricAggregate
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.DataSeries.get -> Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart, Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricValueFilter valueFilter) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TryRecycle() -> bool
|
||||
|
@ -804,18 +806,18 @@ Microsoft.ApplicationInsights.Metrics.MetricIdentifier.GetDimensionName(int dime
|
|||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.GetDimensionNames() -> System.Collections.Generic.IEnumerable<string>
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricId.get -> string
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name, string dimension10Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, System.Collections.Generic.IList<string> dimensionNames) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricNamespace.get -> string
|
||||
Microsoft.ApplicationInsights.Metrics.MetricManager
|
||||
Microsoft.ApplicationInsights.Metrics.MetricManager.CreateNewSeries(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string, string>> dimensionNamesAndValues, Microsoft.ApplicationInsights.Metrics.IMetricSeriesConfiguration config) -> Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
|
@ -834,8 +836,8 @@ Microsoft.ApplicationInsights.Metrics.MetricsCollection.GetEnumerator() -> Syste
|
|||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.GetOrCreate(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.IsReadOnly.get -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metric metric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, out Microsoft.ApplicationInsights.Metric removedMetric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.TryGet(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, out Microsoft.ApplicationInsights.Metric metric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
Microsoft.ApplicationInsights.Metrics.MetricSeries.DimensionNamesAndValues.get -> System.Collections.Generic.IReadOnlyDictionary<string, string>
|
||||
|
@ -863,24 +865,24 @@ Microsoft.ApplicationInsights.OperationTelemetryExtensions
|
|||
Microsoft.ApplicationInsights.TelemetryClient
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Context.get -> Microsoft.ApplicationInsights.DataContracts.TelemetryContext
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Flush() -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.InitializeInstrumentationKey(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.InstrumentationKey.get -> string
|
||||
|
@ -907,10 +909,10 @@ Microsoft.ApplicationInsights.TelemetryClient.TrackPageView(string name) -> void
|
|||
Microsoft.ApplicationInsights.TelemetryClient.TrackRequest(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry request) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackRequest(string name, System.DateTimeOffset startTime, System.TimeSpan duration, string responseCode, bool success) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(Microsoft.ApplicationInsights.DataContracts.TraceTelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel, System.Collections.Generic.IDictionary<string, string> properties) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, System.Collections.Generic.IDictionary<string, string> properties) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClientExtensions
|
||||
override Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.Context.get -> Microsoft.ApplicationInsights.DataContracts.TelemetryContext
|
||||
override Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DeepClone() -> Microsoft.ApplicationInsights.Channel.ITelemetry
|
||||
|
@ -1004,12 +1006,12 @@ static Microsoft.ApplicationInsights.Metrics.MetricIdentifier.DefaultMetricNames
|
|||
static Microsoft.ApplicationInsights.Metrics.MetricIdentifier.DefaultMetricNamespace.set -> void
|
||||
static Microsoft.ApplicationInsights.Metrics.TelemetryConfigurationExtensions.GetMetricManager(this Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration telemetryPipeline) -> Microsoft.ApplicationInsights.Metrics.MetricManager
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.GenerateOperationId(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry, long timestamp) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry, long timestamp) -> void
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName, string operationId, string parentOperationId = null) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, System.Diagnostics.Activity activity) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, T operationTelemetry) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StopOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T> operation) -> void
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
Microsoft.ApplicationInsights.Channel.IAsyncFlushable
|
||||
Microsoft.ApplicationInsights.Channel.IAsyncFlushable.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
||||
Microsoft.ApplicationInsights.Channel.InMemoryChannel.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
||||
Microsoft.ApplicationInsights.TelemetryClient.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
|
@ -93,6 +93,8 @@ Microsoft.ApplicationInsights.Channel.Transmission.TransmissionStatusEvent.get -
|
|||
Microsoft.ApplicationInsights.Channel.Transmission.TransmissionStatusEvent.set -> void
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.Response.get -> Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.ResponseDurationInMs.get -> long
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.TransmissionStatusEventArgs(Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper response, long responseDurationInMs) -> void
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.TransmissionStatusEventArgs(Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper response) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.AvailabilityTelemetry
|
||||
Microsoft.ApplicationInsights.DataContracts.AvailabilityTelemetry.AvailabilityTelemetry() -> void
|
||||
|
@ -129,8 +131,8 @@ Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyKind.g
|
|||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyKind.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry() -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyName, string data, System.DateTimeOffset startTime, System.TimeSpan duration, bool success) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data, System.DateTimeOffset startTime, System.TimeSpan duration, string resultCode, bool success) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTypeName.get -> string
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTypeName.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.ItemTypeFlag.get -> Microsoft.ApplicationInsights.DataContracts.SamplingTelemetryItemTypes
|
||||
|
@ -434,8 +436,8 @@ Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.SeverityLevel.set ->
|
|||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.Timestamp.get -> System.DateTimeOffset
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.Timestamp.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry() -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor.AutocollectedMetricsExtractor(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessorInPipeline) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor.Dispose() -> void
|
||||
|
@ -576,8 +578,8 @@ Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorCha
|
|||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChain.Process(Microsoft.ApplicationInsights.Channel.ITelemetry item) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.Build() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration, Microsoft.ApplicationInsights.Extensibility.TelemetrySink telemetrySink) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.Use(System.Func<Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor, Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor> telemetryProcessorFactory) -> Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule.AddHeartbeatProperty(string propertyName, string propertyValue, bool isHealthy) -> bool
|
||||
|
@ -673,8 +675,8 @@ Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.Instrumentati
|
|||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryChannel.get -> Microsoft.ApplicationInsights.Channel.ITelemetryChannel
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryChannel.set -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey, Microsoft.ApplicationInsights.Channel.ITelemetryChannel channel) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryInitializers.get -> System.Collections.Generic.IList<Microsoft.ApplicationInsights.Extensibility.ITelemetryInitializer>
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryProcessorChainBuilder.get -> Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryProcessors.get -> System.Collections.ObjectModel.ReadOnlyCollection<Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor>
|
||||
|
@ -702,40 +704,40 @@ Microsoft.ApplicationInsights.Metric.GetAllSeries() -> System.Collections.Generi
|
|||
Microsoft.ApplicationInsights.Metric.GetDimensionValues(int dimensionNumber) -> System.Collections.Generic.IReadOnlyCollection<string>
|
||||
Microsoft.ApplicationInsights.Metric.Identifier.get -> Microsoft.ApplicationInsights.Metrics.MetricIdentifier
|
||||
Microsoft.ApplicationInsights.Metric.SeriesCount.get -> int
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, bool createIfNotExists, params string[] dimensionValues) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series) -> bool
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope.TelemetryClient = 1 -> Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope.TelemetryConfiguration = 0 -> Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
|
@ -754,8 +756,8 @@ Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator
|
|||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.CompleteAggregation(System.DateTimeOffset periodEnd) -> Microsoft.ApplicationInsights.Metrics.MetricAggregate
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.CreateAggregateUnsafe(System.DateTimeOffset periodEnd) -> Microsoft.ApplicationInsights.Metrics.MetricAggregate
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.DataSeries.get -> Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart, Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricValueFilter valueFilter) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TryRecycle() -> bool
|
||||
|
@ -804,18 +806,18 @@ Microsoft.ApplicationInsights.Metrics.MetricIdentifier.GetDimensionName(int dime
|
|||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.GetDimensionNames() -> System.Collections.Generic.IEnumerable<string>
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricId.get -> string
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name, string dimension10Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, System.Collections.Generic.IList<string> dimensionNames) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricNamespace.get -> string
|
||||
Microsoft.ApplicationInsights.Metrics.MetricManager
|
||||
Microsoft.ApplicationInsights.Metrics.MetricManager.CreateNewSeries(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string, string>> dimensionNamesAndValues, Microsoft.ApplicationInsights.Metrics.IMetricSeriesConfiguration config) -> Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
|
@ -834,8 +836,8 @@ Microsoft.ApplicationInsights.Metrics.MetricsCollection.GetEnumerator() -> Syste
|
|||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.GetOrCreate(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.IsReadOnly.get -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metric metric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, out Microsoft.ApplicationInsights.Metric removedMetric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.TryGet(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, out Microsoft.ApplicationInsights.Metric metric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
Microsoft.ApplicationInsights.Metrics.MetricSeries.DimensionNamesAndValues.get -> System.Collections.Generic.IReadOnlyDictionary<string, string>
|
||||
|
@ -863,24 +865,24 @@ Microsoft.ApplicationInsights.OperationTelemetryExtensions
|
|||
Microsoft.ApplicationInsights.TelemetryClient
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Context.get -> Microsoft.ApplicationInsights.DataContracts.TelemetryContext
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Flush() -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.InitializeInstrumentationKey(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.InstrumentationKey.get -> string
|
||||
|
@ -907,10 +909,10 @@ Microsoft.ApplicationInsights.TelemetryClient.TrackPageView(string name) -> void
|
|||
Microsoft.ApplicationInsights.TelemetryClient.TrackRequest(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry request) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackRequest(string name, System.DateTimeOffset startTime, System.TimeSpan duration, string responseCode, bool success) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(Microsoft.ApplicationInsights.DataContracts.TraceTelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel, System.Collections.Generic.IDictionary<string, string> properties) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, System.Collections.Generic.IDictionary<string, string> properties) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClientExtensions
|
||||
override Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.Context.get -> Microsoft.ApplicationInsights.DataContracts.TelemetryContext
|
||||
override Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DeepClone() -> Microsoft.ApplicationInsights.Channel.ITelemetry
|
||||
|
@ -1004,12 +1006,12 @@ static Microsoft.ApplicationInsights.Metrics.MetricIdentifier.DefaultMetricNames
|
|||
static Microsoft.ApplicationInsights.Metrics.MetricIdentifier.DefaultMetricNamespace.set -> void
|
||||
static Microsoft.ApplicationInsights.Metrics.TelemetryConfigurationExtensions.GetMetricManager(this Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration telemetryPipeline) -> Microsoft.ApplicationInsights.Metrics.MetricManager
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.GenerateOperationId(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry, long timestamp) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry, long timestamp) -> void
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName, string operationId, string parentOperationId = null) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, System.Diagnostics.Activity activity) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, T operationTelemetry) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StopOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T> operation) -> void
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
Microsoft.ApplicationInsights.Channel.IAsyncFlushable
|
||||
Microsoft.ApplicationInsights.Channel.IAsyncFlushable.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
||||
Microsoft.ApplicationInsights.Channel.InMemoryChannel.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
||||
Microsoft.ApplicationInsights.TelemetryClient.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
|
@ -93,6 +93,8 @@ Microsoft.ApplicationInsights.Channel.Transmission.TransmissionStatusEvent.get -
|
|||
Microsoft.ApplicationInsights.Channel.Transmission.TransmissionStatusEvent.set -> void
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.Response.get -> Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.ResponseDurationInMs.get -> long
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.TransmissionStatusEventArgs(Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper response, long responseDurationInMs) -> void
|
||||
Microsoft.ApplicationInsights.Channel.TransmissionStatusEventArgs.TransmissionStatusEventArgs(Microsoft.ApplicationInsights.Extensibility.Implementation.HttpWebResponseWrapper response) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.AvailabilityTelemetry
|
||||
Microsoft.ApplicationInsights.DataContracts.AvailabilityTelemetry.AvailabilityTelemetry() -> void
|
||||
|
@ -129,8 +131,8 @@ Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyKind.g
|
|||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyKind.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry() -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyName, string data, System.DateTimeOffset startTime, System.TimeSpan duration, bool success) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data, System.DateTimeOffset startTime, System.TimeSpan duration, string resultCode, bool success) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTelemetry(string dependencyTypeName, string target, string dependencyName, string data) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTypeName.get -> string
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DependencyTypeName.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.ItemTypeFlag.get -> Microsoft.ApplicationInsights.DataContracts.SamplingTelemetryItemTypes
|
||||
|
@ -434,8 +436,8 @@ Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.SeverityLevel.set ->
|
|||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.Timestamp.get -> System.DateTimeOffset
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.Timestamp.set -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry() -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.DataContracts.TraceTelemetry.TraceTelemetry(string message) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor.AutocollectedMetricsExtractor(Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor nextProcessorInPipeline) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.AutocollectedMetricsExtractor.Dispose() -> void
|
||||
|
@ -576,8 +578,8 @@ Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorCha
|
|||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChain.Process(Microsoft.ApplicationInsights.Channel.ITelemetry item) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.Build() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration, Microsoft.ApplicationInsights.Extensibility.TelemetrySink telemetrySink) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.TelemetryProcessorChainBuilder(Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration configuration) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder.Use(System.Func<Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor, Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor> telemetryProcessorFactory) -> Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule
|
||||
Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.DiagnosticsTelemetryModule.AddHeartbeatProperty(string propertyName, string propertyValue, bool isHealthy) -> bool
|
||||
|
@ -673,8 +675,8 @@ Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.Instrumentati
|
|||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryChannel.get -> Microsoft.ApplicationInsights.Channel.ITelemetryChannel
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryChannel.set -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration() -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey, Microsoft.ApplicationInsights.Channel.ITelemetryChannel channel) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryConfiguration(string instrumentationKey) -> void
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryInitializers.get -> System.Collections.Generic.IList<Microsoft.ApplicationInsights.Extensibility.ITelemetryInitializer>
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryProcessorChainBuilder.get -> Microsoft.ApplicationInsights.Extensibility.Implementation.TelemetryProcessorChainBuilder
|
||||
Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.TelemetryProcessors.get -> System.Collections.ObjectModel.ReadOnlyCollection<Microsoft.ApplicationInsights.Extensibility.ITelemetryProcessor>
|
||||
|
@ -702,40 +704,40 @@ Microsoft.ApplicationInsights.Metric.GetAllSeries() -> System.Collections.Generi
|
|||
Microsoft.ApplicationInsights.Metric.GetDimensionValues(int dimensionNumber) -> System.Collections.Generic.IReadOnlyCollection<string>
|
||||
Microsoft.ApplicationInsights.Metric.Identifier.get -> Microsoft.ApplicationInsights.Metrics.MetricIdentifier
|
||||
Microsoft.ApplicationInsights.Metric.SeriesCount.get -> int
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, bool createIfNotExists, params string[] dimensionValues) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value, string dimension10Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value, string dimension9Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value, string dimension8Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value, string dimension7Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value, string dimension6Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value, string dimension5Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value, string dimension4Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value, string dimension3Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value, string dimension2Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series, string dimension1Value) -> bool
|
||||
Microsoft.ApplicationInsights.Metric.TryGetDataSeries(out Microsoft.ApplicationInsights.Metrics.MetricSeries series) -> bool
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope.TelemetryClient = 1 -> Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
Microsoft.ApplicationInsights.MetricAggregationScope.TelemetryConfiguration = 0 -> Microsoft.ApplicationInsights.MetricAggregationScope
|
||||
|
@ -754,8 +756,8 @@ Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator
|
|||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.CompleteAggregation(System.DateTimeOffset periodEnd) -> Microsoft.ApplicationInsights.Metrics.MetricAggregate
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.CreateAggregateUnsafe(System.DateTimeOffset periodEnd) -> Microsoft.ApplicationInsights.Metrics.MetricAggregate
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.DataSeries.get -> Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart, Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricValueFilter valueFilter) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.Reset(System.DateTimeOffset periodStart) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TrackValue(double metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TrackValue(object metricValue) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.Extensibility.IMetricSeriesAggregator.TryRecycle() -> bool
|
||||
|
@ -804,18 +806,18 @@ Microsoft.ApplicationInsights.Metrics.MetricIdentifier.GetDimensionName(int dime
|
|||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.GetDimensionNames() -> System.Collections.Generic.IEnumerable<string>
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricId.get -> string
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name, string dimension10Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name, string dimension9Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name, string dimension8Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name, string dimension7Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name, string dimension6Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, string dimension5Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name, string dimension2Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, string dimension1Name) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId, System.Collections.Generic.IList<string> dimensionNames) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricIdentifier(string metricNamespace, string metricId) -> void
|
||||
Microsoft.ApplicationInsights.Metrics.MetricIdentifier.MetricNamespace.get -> string
|
||||
Microsoft.ApplicationInsights.Metrics.MetricManager
|
||||
Microsoft.ApplicationInsights.Metrics.MetricManager.CreateNewSeries(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string, string>> dimensionNamesAndValues, Microsoft.ApplicationInsights.Metrics.IMetricSeriesConfiguration config) -> Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
|
@ -834,8 +836,8 @@ Microsoft.ApplicationInsights.Metrics.MetricsCollection.GetEnumerator() -> Syste
|
|||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.GetOrCreate(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.IsReadOnly.get -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metric metric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, out Microsoft.ApplicationInsights.Metric removedMetric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.Remove(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricsCollection.TryGet(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, out Microsoft.ApplicationInsights.Metric metric) -> bool
|
||||
Microsoft.ApplicationInsights.Metrics.MetricSeries
|
||||
Microsoft.ApplicationInsights.Metrics.MetricSeries.DimensionNamesAndValues.get -> System.Collections.Generic.IReadOnlyDictionary<string, string>
|
||||
|
@ -863,24 +865,24 @@ Microsoft.ApplicationInsights.OperationTelemetryExtensions
|
|||
Microsoft.ApplicationInsights.TelemetryClient
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Context.get -> Microsoft.ApplicationInsights.DataContracts.TelemetryContext
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Flush() -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(Microsoft.ApplicationInsights.Metrics.MetricIdentifier metricIdentifier) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration, Microsoft.ApplicationInsights.MetricAggregationScope aggregationScope) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name, Microsoft.ApplicationInsights.Metrics.MetricConfiguration metricConfiguration) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name, string dimension4Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name, string dimension3Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name, string dimension2Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId, string dimension1Name) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.GetMetric(string metricId) -> Microsoft.ApplicationInsights.Metric
|
||||
Microsoft.ApplicationInsights.TelemetryClient.Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.InitializeInstrumentationKey(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.InstrumentationKey.get -> string
|
||||
|
@ -907,10 +909,10 @@ Microsoft.ApplicationInsights.TelemetryClient.TrackPageView(string name) -> void
|
|||
Microsoft.ApplicationInsights.TelemetryClient.TrackRequest(Microsoft.ApplicationInsights.DataContracts.RequestTelemetry request) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackRequest(string name, System.DateTimeOffset startTime, System.TimeSpan duration, string responseCode, bool success) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(Microsoft.ApplicationInsights.DataContracts.TraceTelemetry telemetry) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel, System.Collections.Generic.IDictionary<string, string> properties) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, Microsoft.ApplicationInsights.DataContracts.SeverityLevel severityLevel) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message, System.Collections.Generic.IDictionary<string, string> properties) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(string message) -> void
|
||||
Microsoft.ApplicationInsights.TelemetryClientExtensions
|
||||
override Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.Context.get -> Microsoft.ApplicationInsights.DataContracts.TelemetryContext
|
||||
override Microsoft.ApplicationInsights.DataContracts.DependencyTelemetry.DeepClone() -> Microsoft.ApplicationInsights.Channel.ITelemetry
|
||||
|
@ -1004,12 +1006,12 @@ static Microsoft.ApplicationInsights.Metrics.MetricIdentifier.DefaultMetricNames
|
|||
static Microsoft.ApplicationInsights.Metrics.MetricIdentifier.DefaultMetricNamespace.set -> void
|
||||
static Microsoft.ApplicationInsights.Metrics.TelemetryConfigurationExtensions.GetMetricManager(this Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration telemetryPipeline) -> Microsoft.ApplicationInsights.Metrics.MetricManager
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.GenerateOperationId(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry, long timestamp) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Start(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry, long timestamp) -> void
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.OperationTelemetryExtensions.Stop(this Microsoft.ApplicationInsights.Extensibility.Implementation.OperationTelemetry telemetry) -> void
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName, string operationId, string parentOperationId = null) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, string operationName) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, System.Diagnostics.Activity activity) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StartOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, T operationTelemetry) -> Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T>
|
||||
static Microsoft.ApplicationInsights.TelemetryClientExtensions.StopOperation<T>(this Microsoft.ApplicationInsights.TelemetryClient telemetryClient, Microsoft.ApplicationInsights.Extensibility.IOperationHolder<T> operation) -> void
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
Microsoft.ApplicationInsights.Channel.IAsyncFlushable
|
||||
Microsoft.ApplicationInsights.Channel.IAsyncFlushable.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
||||
Microsoft.ApplicationInsights.Channel.InMemoryChannel.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
||||
Microsoft.ApplicationInsights.TelemetryClient.FlushAsync(System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task<bool>
|
|
@ -14,4 +14,4 @@ Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.TraceSourceFo
|
|||
static Microsoft.ApplicationInsights.Common.ConditionalWeakTableExtensions.AddIfNotExists<TKey, TValue>(this System.Runtime.CompilerServices.ConditionalWeakTable<TKey, TValue> conditionalWeakTable, TKey key, TValue value) -> void
|
||||
static Microsoft.ApplicationInsights.Extensibility.HostingStartup.WebRequestTrackingModuleRegister.GetModuleType(string assemblyName, string typeName) -> System.Type
|
||||
static Microsoft.ApplicationInsights.Extensibility.HostingStartup.WebRequestTrackingModuleRegister.Register() -> void
|
||||
virtual Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.TraceSourceForEventSource.Dispose(bool disposeManaged = true) -> void
|
||||
virtual Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing.TraceSourceForEventSource.Dispose(bool disposeManaged = true) -> void
|
||||
|
|
|
@ -17,8 +17,8 @@ Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerProvid
|
|||
Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider.Dispose() -> void
|
||||
Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider.SetScopeProvider(Microsoft.Extensions.Logging.IExternalScopeProvider externalScopeProvider) -> void
|
||||
Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggingBuilder builder) -> Microsoft.Extensions.Logging.ILoggingBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggingBuilder builder, System.Action<Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerOptions> configureApplicationInsightsLoggerOptions) -> Microsoft.Extensions.Logging.ILoggingBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggingBuilder builder, string instrumentationKey) -> Microsoft.Extensions.Logging.ILoggingBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggingBuilder builder, string instrumentationKey, System.Action<Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerOptions> configureApplicationInsightsLoggerOptions) -> Microsoft.Extensions.Logging.ILoggingBuilder
|
||||
virtual Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider.Dispose(bool releasedManagedResources) -> void
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggingBuilder builder, string instrumentationKey) -> Microsoft.Extensions.Logging.ILoggingBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggingBuilder builder, System.Action<Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerOptions> configureApplicationInsightsLoggerOptions) -> Microsoft.Extensions.Logging.ILoggingBuilder
|
||||
static Microsoft.Extensions.Logging.ApplicationInsightsLoggingBuilderExtensions.AddApplicationInsights(this Microsoft.Extensions.Logging.ILoggingBuilder builder) -> Microsoft.Extensions.Logging.ILoggingBuilder
|
||||
virtual Microsoft.Extensions.Logging.ApplicationInsights.ApplicationInsightsLoggerProvider.Dispose(bool releasedManagedResources) -> void
|
||||
|
|
|
@ -105,6 +105,8 @@
|
|||
<Rule Id="CA2241" Action="Warning" />
|
||||
<Rule Id="CA2242" Action="Warning" />
|
||||
<Rule Id="CA5122" Action="Warning" />
|
||||
<!-- Suppressing Message "FxCopAnalyzers package has been deprecated in favor of 'Microsoft.CodeAnalysis.NetAnalyzers" because NetAnalyzers does not yet cover as many cases as FxCop -->
|
||||
<Rule Id="CA9998" Action="None" />
|
||||
</Rules>
|
||||
<Rules AnalyzerId="Microsoft.Analyzers.NativeCodeAnalysis" RuleNamespace="Microsoft.Rules.Native">
|
||||
<Rule Id="C26100" Action="Warning" />
|
||||
|
|
|
@ -17,10 +17,13 @@ Param(
|
|||
[bool]
|
||||
$verboseLog,
|
||||
|
||||
[Parameter(Mandatory=$false,HelpMessage="Full Log?:")]
|
||||
[Parameter(Mandatory=$false,HelpMessage="Enable or disable signing verification:")]
|
||||
[bool]
|
||||
$verifySigning = $true
|
||||
$verifySigning = $true,
|
||||
|
||||
[Parameter(Mandatory=$false,HelpMessage="Enable or disable signing verification:")]
|
||||
[string]
|
||||
$expectedCertHash = ""
|
||||
)
|
||||
|
||||
|
||||
|
@ -107,7 +110,7 @@ function Test-MultiCondition ([bool]$requiredCondition, [bool]$recommendedCondit
|
|||
|
||||
function Get-IsPackageSigned([string]$nupkgPath) {
|
||||
$verifyOutput = "";
|
||||
$null = & $nugetExePath verify -signature -CertificateFingerprint 3F9001EA83C560D712C24CF213C3D312CB3BFF51EE89435D3430BD06B5D0EECE $nupkgPath -verbosity detailed 2>&1 | Tee-Object -Variable verifyOutput
|
||||
$null = & $nugetExePath verify -signature -CertificateFingerprint $expectedCertHash $nupkgPath -verbosity detailed 2>&1 | Tee-Object -Variable verifyOutput
|
||||
|
||||
#TEST OUTPUT
|
||||
Write-Host $verifyOutput
|
||||
|
@ -181,7 +184,7 @@ function Get-DoesDllVersionsMatch ([string]$dllPath) {
|
|||
|
||||
$message = "File Version: '$fileVersion' Assembly Version: '$assemblyVersion";
|
||||
$requirement = "Versions should match."
|
||||
Test-Condition ($fileVersion.Equals($assemblyVersion)) $message $requirement;
|
||||
Test-Condition ([version]$fileVersion -eq [version]$assemblyVersion) $message $requirement;
|
||||
}
|
||||
|
||||
function Get-IsValidPackageId([xml]$nuspecXml) {
|
||||
|
|
|
@ -14,18 +14,13 @@ steps:
|
|||
- task: UseDotNet@2
|
||||
displayName: install dotnet core 2.1
|
||||
inputs:
|
||||
version: 2.1.807
|
||||
version: 2.1.x
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: install dotnet core 3.1
|
||||
inputs:
|
||||
version: 3.1.301
|
||||
version: 3.1.x
|
||||
|
||||
- task: CmdLine@2
|
||||
displayName: Run dotnet side by side.
|
||||
inputs:
|
||||
script: rsync -a ${DOTNET_ROOT/3.1.301/2.1.807}/* $DOTNET_ROOT/
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: DotNetCoreCLI - Restore Solution
|
||||
inputs:
|
||||
|
|
|
@ -36,17 +36,12 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.ApplicationInsigh
|
|||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TelemetryChannel", "src\ServerTelemetryChannel\TelemetryChannel.csproj", "{3273D899-D9B3-44FE-B3AB-578E18B2EF90}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Common.Base", "src\Common\Common\Common.Base.shproj", "{936AF739-4297-4016-9D70-4280042709BE}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.ApplicationInsights.Tests", "Test\Microsoft.ApplicationInsights.Test\Microsoft.ApplicationInsights.Tests\Microsoft.ApplicationInsights.Tests.csproj", "{EF007559-EA01-4D4A-9BEB-8CC661797BE5}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TelemetryChannel.Tests", "Test\ServerTelemetryChannel.Test\TelemetryChannel.Tests\TelemetryChannel.Tests.csproj", "{7AB3D817-9CAC-45A7-BA4D-25FA4D690DA4}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
src\Common\Common\Common.projitems*{3273d899-d9b3-44fe-b3ab-578e18b2ef90}*SharedItemsImports = 5
|
||||
src\Common\Common\Common.projitems*{936af739-4297-4016-9d70-4280042709be}*SharedItemsImports = 13
|
||||
src\Common\Common\Common.projitems*{e9ecee96-dd50-42f6-9f33-0978cdfa15ed}*SharedItemsImports = 5
|
||||
Test\TestFramework\Shared\TestFramework.Shared.projitems*{f76c6cbd-29b0-4564-bdcb-c969f8fec136}*SharedItemsImports = 13
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
|
|
@ -10,6 +10,8 @@
|
|||
|
||||
|
||||
using DataContracts;
|
||||
using System.Threading.Tasks;
|
||||
using System.Threading;
|
||||
|
||||
[TestClass]
|
||||
public class InMemoryChannelTest
|
||||
|
@ -83,5 +85,17 @@
|
|||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
[TestMethod]
|
||||
public async Task FlushAsyncRespectsCancellationToken()
|
||||
{
|
||||
var telemetryBuffer = new TelemetryBuffer();
|
||||
var channel = new InMemoryChannel(telemetryBuffer, new InMemoryTransmitter(telemetryBuffer));
|
||||
var sentTelemetry = new StubTelemetry();
|
||||
sentTelemetry.Context.InstrumentationKey = Guid.NewGuid().ToString();
|
||||
|
||||
channel.Send(sentTelemetry);
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => channel.FlushAsync(new CancellationToken(true)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -85,6 +85,17 @@
|
|||
var transmission = new Transmission(testUri, new byte[1], "content/type", "content/encoding", expectedValue);
|
||||
Assert.AreEqual(expectedValue, transmission.Timeout);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void FlushAsyncIdGetsIncrementedOnEveryTransmission()
|
||||
{
|
||||
var transmission1 = new Transmission();
|
||||
var transmission2 = new Transmission();
|
||||
var transmission3 = new Transmission(testUri, new byte[1], "content/type", "content/encoding");
|
||||
|
||||
Assert.AreEqual(transmission1.FlushAsyncId + 1, transmission2.FlushAsyncId);
|
||||
Assert.AreEqual(transmission1.FlushAsyncId + 2, transmission3.FlushAsyncId);
|
||||
}
|
||||
}
|
||||
|
||||
[TestClass]
|
||||
|
@ -528,6 +539,7 @@
|
|||
{
|
||||
Assert.IsTrue(sender is Transmission);
|
||||
Assert.AreEqual((int)HttpStatusCode.OK, args.Response.StatusCode);
|
||||
Assert.AreNotEqual(0, args.ResponseDurationInMs);
|
||||
};
|
||||
|
||||
// ACT
|
||||
|
@ -559,6 +571,7 @@
|
|||
transmission.TransmissionStatusEvent += delegate (object sender, TransmissionStatusEventArgs args)
|
||||
{
|
||||
Assert.AreEqual((int)HttpStatusCode.RequestTimeout, args.Response.StatusCode);
|
||||
Assert.AreEqual(0, args.ResponseDurationInMs);
|
||||
};
|
||||
|
||||
// ACT
|
||||
|
@ -589,6 +602,7 @@
|
|||
transmission.TransmissionStatusEvent += delegate (object sender, TransmissionStatusEventArgs args)
|
||||
{
|
||||
Assert.AreEqual(999, args.Response.StatusCode);
|
||||
Assert.AreEqual(0, args.ResponseDurationInMs);
|
||||
};
|
||||
|
||||
// ACT
|
||||
|
|
|
@ -18,12 +18,10 @@
|
|||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="CompareNETObjects" Version="4.64.0" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="Microsoft.TestPlatform.TestHost" Version="16.7.1" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="Moq" Version="4.10.0" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition="'$(TargetFramework)' == 'net452' ">
|
||||
|
|
|
@ -17,16 +17,14 @@
|
|||
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="2.0.0" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="2.0.0" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
|
||||
<Reference Include="System" />
|
||||
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="Microsoft.TestPlatform.TestHost" Version="16.7.1" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
<PackageReference Include="System.Collections.Immutable" Version="1.3.1" />
|
||||
<Reference Include="System.ComponentModel.Composition" />
|
||||
<PackageReference Include="System.Console" Version="4.3.0" />
|
||||
<PackageReference Include="System.Console" Version="4.3.1" />
|
||||
<PackageReference Include="System.Diagnostics.FileVersionInfo" Version="4.3.0" />
|
||||
<PackageReference Include="System.Diagnostics.StackTrace" Version="4.3.0" />
|
||||
<PackageReference Include="System.IO.Compression" Version="4.3.0" />
|
||||
|
@ -37,13 +35,12 @@
|
|||
<Reference Include="System.Net" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Numerics" />
|
||||
<PackageReference Include="System.Reflection.Metadata" Version="1.4.2" />
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<PackageReference Include="System.Security.Cryptography.Algorithms" Version="4.3.0" />
|
||||
<PackageReference Include="System.Security.Cryptography.Encoding" Version="4.3.0" />
|
||||
<PackageReference Include="System.Security.Cryptography.Primitives" Version="4.3.0" />
|
||||
<PackageReference Include="System.Security.Cryptography.X509Certificates" Version="4.3.0" />
|
||||
<PackageReference Include="System.Text.Encoding.CodePages" Version="4.3.0" />
|
||||
<PackageReference Include="System.Text.Encoding.CodePages" Version="5.0.0" />
|
||||
<PackageReference Include="System.Threading.Thread" Version="4.3.0" />
|
||||
<PackageReference Include="System.ValueTuple" Version="4.3.0" />
|
||||
<PackageReference Include="System.Xml.ReaderWriter" Version="4.3.0" />
|
||||
|
|
|
@ -17,12 +17,10 @@
|
|||
<ProjectReference Include="..\..\..\src\Microsoft.ApplicationInsights\Microsoft.ApplicationInsights.csproj" />
|
||||
<ProjectReference Include="..\..\..\Test\Microsoft.ApplicationInsights.Test\ApplicationInsightsTypes\ApplicationInsightsTypes.csproj" />
|
||||
<PackageReference Include="Microsoft.Web.Xdt" Version="2.1.1" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="Microsoft.TestPlatform.TestHost" Version="16.7.1" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
<PackageReference Include="CompareNETObjects" Version="4.59.0" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
|
||||
<PackageReference Include="Castle.Core" Version="4.4.0" />
|
||||
<ProjectReference Include="..\..\..\src\ServerTelemetryChannel\TelemetryChannel.csproj" />
|
||||
<EmbeddedResource Include="..\..\..\src\ServerTelemetryChannel\ApplicationInsights.config.install.xdt">
|
||||
|
|
|
@ -2,16 +2,24 @@
|
|||
{
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
using Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implementation;
|
||||
|
||||
internal class StubTelemetrySerializer : TelemetrySerializer
|
||||
{
|
||||
public Action<IEnumerable<ITelemetry>> OnSerialize = _ => { };
|
||||
public Func<IEnumerable<ITelemetry>, CancellationToken, Task<bool>> OnSerializeAsync;
|
||||
|
||||
public override void Serialize(ICollection<ITelemetry> items)
|
||||
{
|
||||
this.OnSerialize(items);
|
||||
}
|
||||
|
||||
public override Task<bool> SerializeAsync(ICollection<ITelemetry> items, CancellationToken cancellationToken)
|
||||
{
|
||||
return this.OnSerializeAsync(items, cancellationToken);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -213,6 +213,8 @@ namespace Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implement
|
|||
Assert.AreEqual(1, traces.Count);
|
||||
Assert.AreEqual(69, traces[0].EventId); // failed to send
|
||||
Assert.AreEqual("Data loss", traces[0].Payload[1]);
|
||||
// Sets flush task to failure on not whitelisted status code
|
||||
Assert.IsFalse(failedTransmission.IsFlushAsyncInProgress);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -244,6 +246,8 @@ namespace Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implement
|
|||
Assert.AreEqual(1, traces.Count);
|
||||
Assert.AreEqual(69, traces[0].EventId); // failed to send
|
||||
Assert.AreEqual("Unknown Exception Message", traces[0].Payload[1]);
|
||||
// Sets flush task to failure on not whitelisted status code
|
||||
Assert.IsFalse(failedTransmission.IsFlushAsyncInProgress);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -279,6 +283,8 @@ namespace Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implement
|
|||
Assert.AreEqual(1, traces.Count);
|
||||
Assert.AreEqual(71, traces[0].EventId); // failed to send
|
||||
Assert.AreEqual("8989", traces[0].Payload[1]);
|
||||
// Sets flush task to failure on not whitelisted status code
|
||||
Assert.IsFalse(failedTransmission.IsFlushAsyncInProgress);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -271,5 +271,37 @@
|
|||
Assert.AreEqual(0, transmitter.BackoffLogicManager.ConsecutiveErrors);
|
||||
Assert.AreEqual(0, enqueuedTransmissions.Count);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ItemsAreEnqueuedOnFlushAsync()
|
||||
{
|
||||
IList<Transmission> enqueuedTransmissions = new List<Transmission>();
|
||||
var transmitter = new StubTransmitter
|
||||
{
|
||||
OnEnqueue = t => { enqueuedTransmissions.Add(t); }
|
||||
};
|
||||
|
||||
var policy = new PartialSuccessTransmissionPolicy();
|
||||
policy.Initialize(transmitter);
|
||||
|
||||
var items = new List<ITelemetry> { new EventTelemetry(), new EventTelemetry() };
|
||||
Transmission transmission = new Transmission(new Uri("http://uri"), items, "type", "encoding") { IsFlushAsyncInProgress = true };
|
||||
|
||||
string response = BackendResponseHelper.CreateBackendResponse(
|
||||
itemsReceived: 2,
|
||||
itemsAccepted: 1,
|
||||
errorCodes: new[] { "429" });
|
||||
|
||||
var wrapper = new HttpWebResponseWrapper
|
||||
{
|
||||
StatusCode = 206,
|
||||
Content = response
|
||||
};
|
||||
|
||||
transmitter.OnTransmissionSent(new TransmissionProcessedEventArgs(transmission, null, wrapper));
|
||||
|
||||
Assert.AreEqual(1, enqueuedTransmissions.Count);
|
||||
Assert.IsTrue(transmission.IsFlushAsyncInProgress);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -418,5 +418,149 @@
|
|||
Assert.IsTrue(deferralAcquired);
|
||||
}
|
||||
}
|
||||
|
||||
[TestClass]
|
||||
public class FlushAsyncTask : TelemetryBufferTest
|
||||
{
|
||||
[TestMethod]
|
||||
[Timeout(10000)]
|
||||
public async Task CallsSerializeTelemetryIfBufferIsEmpty()
|
||||
{
|
||||
bool telemetrySerialized = false;
|
||||
var serializer = new StubTelemetrySerializer
|
||||
{
|
||||
OnSerializeAsync = (telemetry, cancellationToken) =>
|
||||
{
|
||||
telemetrySerialized = true;
|
||||
return Task.FromResult(true);
|
||||
}
|
||||
};
|
||||
|
||||
var telemetryBuffer = new TelemetryBuffer(serializer, new StubApplicationLifecycle());
|
||||
var taskResult = await telemetryBuffer.FlushAsync(default);
|
||||
|
||||
Assert.IsTrue(telemetrySerialized);
|
||||
Assert.IsTrue(taskResult);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Timeout(10000)]
|
||||
public async Task SerializesTelemetryIfBufferIsNotEmpty()
|
||||
{
|
||||
List<ITelemetry> serializedTelemetry = null;
|
||||
|
||||
var serializer = new StubTelemetrySerializer
|
||||
{
|
||||
OnSerializeAsync = (telemetry, cancellationToken) =>
|
||||
{
|
||||
serializedTelemetry = new List<ITelemetry>(telemetry);
|
||||
return Task.FromResult(true);
|
||||
}
|
||||
};
|
||||
|
||||
var telemetryBuffer = new TelemetryBuffer(serializer, new StubApplicationLifecycle());
|
||||
|
||||
var expectedTelemetry = new StubTelemetry();
|
||||
telemetryBuffer.Process(expectedTelemetry);
|
||||
|
||||
var taskResult = await telemetryBuffer.FlushAsync(default);
|
||||
|
||||
Assert.AreSame(expectedTelemetry, serializedTelemetry.Single());
|
||||
Assert.IsTrue(taskResult);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Timeout(10000)]
|
||||
public async Task EmptiesBufferAfterSerialization()
|
||||
{
|
||||
var serializer = new StubTelemetrySerializer
|
||||
{
|
||||
OnSerializeAsync = (telemetry, cancellationToken) =>
|
||||
{
|
||||
return Task.FromResult(true);
|
||||
}
|
||||
};
|
||||
|
||||
var buffer = new TelemetryBuffer(serializer, new StubApplicationLifecycle());
|
||||
buffer.Capacity = 10;
|
||||
buffer.Process(new StubTelemetry());
|
||||
|
||||
var taskResult = await buffer.FlushAsync(default);
|
||||
|
||||
Assert.AreEqual(0, buffer.Count());
|
||||
Assert.IsTrue(taskResult);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Timeout(10000)]
|
||||
public async Task DoesNotContinueOnCapturedSynchronizationContextToImprovePerformance()
|
||||
{
|
||||
var serializer = new StubTelemetrySerializer
|
||||
{
|
||||
OnSerializeAsync = (telemetry, cancellationToken) =>
|
||||
{
|
||||
return Task.FromResult(true);
|
||||
}
|
||||
};
|
||||
|
||||
var buffer = new TelemetryBuffer(serializer, new StubApplicationLifecycle());
|
||||
buffer.Process(new StubTelemetry());
|
||||
|
||||
bool postedBack = false;
|
||||
using (var context = new StubSynchronizationContext())
|
||||
{
|
||||
context.OnPost = (callback, state) =>
|
||||
{
|
||||
postedBack = true;
|
||||
callback(state);
|
||||
};
|
||||
|
||||
var taskResult = await buffer.FlushAsync(default);
|
||||
|
||||
Assert.IsFalse(postedBack);
|
||||
Assert.IsTrue(taskResult);
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task BufferFlushAsyncTaskRespectCancellationToken()
|
||||
{
|
||||
var telemetryBuffer = new TelemetryBuffer(new StubTelemetrySerializer(), new StubApplicationLifecycle());
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => telemetryBuffer.FlushAsync(new CancellationToken(true)));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void WaitsUntilTelemetryBufferIsSafeToModify()
|
||||
{
|
||||
var serializer = new StubTelemetrySerializer
|
||||
{
|
||||
OnSerializeAsync = (telemetry, cancellationToken) =>
|
||||
{
|
||||
return Task.FromResult(true);
|
||||
}
|
||||
};
|
||||
|
||||
var telemetryBuffer = new TelemetryBuffer(serializer, new StubApplicationLifecycle());
|
||||
telemetryBuffer.Process(new StubTelemetry());
|
||||
|
||||
Task anotherThread;
|
||||
lock (telemetryBuffer)
|
||||
{
|
||||
anotherThread = Task.Run(() => telemetryBuffer.FlushAsync(default));
|
||||
Assert.IsFalse(anotherThread.Wait(10));
|
||||
}
|
||||
|
||||
Assert.IsTrue(anotherThread.Wait(50));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void SerializerThrowsExceptionWhenEndPointIsNull()
|
||||
{
|
||||
var serializer = new TelemetrySerializer(new Transmitter());
|
||||
|
||||
var telemetryBuffer = new TelemetryBuffer(serializer, new StubApplicationLifecycle());
|
||||
AssertEx.Throws<Exception>(() => telemetryBuffer.FlushAsync(default));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -204,5 +204,175 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestClass]
|
||||
public class SerializeAsyncTask
|
||||
{
|
||||
[TestMethod]
|
||||
public void ThrowsExceptionWhenEndpointAddressIsNull()
|
||||
{
|
||||
var serializer = new TelemetrySerializer(new StubTransmitter());
|
||||
AssertEx.Throws<Exception>(() => serializer.SerializeAsync(null, default));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ReturnsBoolenTaskWhenTelemetryIsNullOrEmpty()
|
||||
{
|
||||
Transmission transmission = null;
|
||||
var transmitter = new StubTransmitter();
|
||||
transmitter.OnEnqueue = t =>
|
||||
{
|
||||
transmission = t;
|
||||
};
|
||||
|
||||
var serializer = new TelemetrySerializer(transmitter) { EndpointAddress = new Uri("http://expected.uri") };
|
||||
var result = serializer.SerializeAsync(null, default);
|
||||
Assert.IsInstanceOfType(result, typeof(Task<bool>));
|
||||
Assert.IsTrue(result.Result);
|
||||
|
||||
result = serializer.SerializeAsync(new List<ITelemetry>(), default);
|
||||
Assert.IsInstanceOfType(result, typeof(Task<bool>));
|
||||
Assert.IsTrue(result.Result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task EnqueuesTransmissionWithExpectedPropertiesForUnknownTelemetry()
|
||||
{
|
||||
Transmission transmission = null;
|
||||
var transmitter = new StubTransmitter();
|
||||
transmitter.OnEnqueue = t =>
|
||||
{
|
||||
transmission = t;
|
||||
transmission.IsFlushAsyncInProgress = true;
|
||||
};
|
||||
|
||||
var serializer = new TelemetrySerializer(transmitter) { EndpointAddress = new Uri("http://expected.uri") };
|
||||
var taskResult = await serializer.SerializeAsync(new[] { new StubTelemetry() }, default);
|
||||
|
||||
Assert.AreEqual(serializer.EndpointAddress, transmission.EndpointAddress);
|
||||
Assert.AreEqual("application/x-json-stream", transmission.ContentType);
|
||||
Assert.AreEqual("gzip", transmission.ContentEncoding);
|
||||
Assert.AreEqual("{" +
|
||||
"\"name\":\"AppEvents\"," +
|
||||
"\"time\":\"0001-01-01T00:00:00.0000000Z\"," +
|
||||
"\"data\":{\"baseType\":\"EventData\"," +
|
||||
"\"baseData\":{\"ver\":2," +
|
||||
"\"name\":\"ConvertedTelemetry\"}" +
|
||||
"}" +
|
||||
"}", Unzip(transmission.Content));
|
||||
Assert.IsTrue(taskResult);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task EnqueuesTransmissionWithExpectedPropertiesForKnownTelemetry()
|
||||
{
|
||||
Transmission transmission = null;
|
||||
var transmitter = new StubTransmitter();
|
||||
transmitter.OnEnqueue = t =>
|
||||
{
|
||||
transmission = t;
|
||||
};
|
||||
|
||||
var serializer = new TelemetrySerializer(transmitter) { EndpointAddress = new Uri("http://expected.uri") };
|
||||
var taskResult = await serializer.SerializeAsync(new[] { new StubSerializableTelemetry() }, default);
|
||||
|
||||
Assert.AreEqual(serializer.EndpointAddress, transmission.EndpointAddress);
|
||||
Assert.AreEqual("application/x-json-stream", transmission.ContentType);
|
||||
Assert.AreEqual("gzip", transmission.ContentEncoding);
|
||||
|
||||
var expectedContent = "{" +
|
||||
"\"name\":\"StubTelemetryName\"," +
|
||||
"\"time\":\"0001-01-01T00:00:00.0000000Z\"," +
|
||||
"\"data\":{\"baseType\":\"StubTelemetryBaseType\"," +
|
||||
"\"baseData\":{}" +
|
||||
"}" +
|
||||
"}";
|
||||
Assert.AreEqual(expectedContent, Unzip(transmission.Content));
|
||||
Assert.IsTrue(taskResult);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ReturnsFalseWhenTransmissionIsNotSentOrStored()
|
||||
{
|
||||
Transmission transmission = null;
|
||||
var transmitter = new StubTransmitter();
|
||||
transmitter.OnEnqueue = t =>
|
||||
{
|
||||
transmission = t;
|
||||
transmission.IsFlushAsyncInProgress = false;
|
||||
};
|
||||
|
||||
var serializer = new TelemetrySerializer(transmitter) { EndpointAddress = new Uri("http://expected.uri") };
|
||||
var taskResult = await serializer.SerializeAsync(new[] { new StubSerializableTelemetry() }, default);
|
||||
Assert.IsFalse(taskResult);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task EnqueuesTransmissionWithSetTransmissionStatusEvent()
|
||||
{
|
||||
Transmission transmission = null;
|
||||
var transmitter = new StubTransmitter();
|
||||
transmitter.OnEnqueue = t =>
|
||||
{
|
||||
transmission = t;
|
||||
};
|
||||
|
||||
var serializer = new TelemetrySerializer(transmitter) { EndpointAddress = new Uri("http://expected.uri") };
|
||||
// Set TransmissionStatusEvent does not change the behavior, only wires up event to transmission.
|
||||
serializer.TransmissionStatusEvent += delegate (object sender, TransmissionStatusEventArgs args) { };
|
||||
var taskResult = await serializer.SerializeAsync(new[] { new StubSerializableTelemetry() }, default);
|
||||
|
||||
Assert.AreEqual(serializer.EndpointAddress, transmission.EndpointAddress);
|
||||
Assert.AreEqual("application/x-json-stream", transmission.ContentType);
|
||||
Assert.AreEqual("gzip", transmission.ContentEncoding);
|
||||
|
||||
var expectedContent = "{" +
|
||||
"\"name\":\"StubTelemetryName\"," +
|
||||
"\"time\":\"0001-01-01T00:00:00.0000000Z\"," +
|
||||
"\"data\":{\"baseType\":\"StubTelemetryBaseType\"," +
|
||||
"\"baseData\":{}" +
|
||||
"}" +
|
||||
"}";
|
||||
Assert.AreEqual(expectedContent, Unzip(transmission.Content));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task SerializeAsyncRespectsCancellationTokenWhenTelemetryIsEmpty()
|
||||
{
|
||||
Transmission transmission = null;
|
||||
var transmitter = new StubTransmitter();
|
||||
transmitter.OnEnqueue = t =>
|
||||
{
|
||||
transmission = t;
|
||||
};
|
||||
|
||||
var serializer = new TelemetrySerializer(transmitter) { EndpointAddress = new Uri("http://expected.uri") };
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => serializer.SerializeAsync(null, new CancellationToken(true)));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task SerializeAsyncRespectsCancellationToken()
|
||||
{
|
||||
Transmission transmission = null;
|
||||
var transmitter = new StubTransmitter();
|
||||
transmitter.OnEnqueue = t =>
|
||||
{
|
||||
transmission = t;
|
||||
};
|
||||
|
||||
var serializer = new TelemetrySerializer(transmitter) { EndpointAddress = new Uri("http://expected.uri") };
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => serializer.SerializeAsync(new[] { new StubTelemetry() }, new CancellationToken(true)));
|
||||
}
|
||||
|
||||
private static string Unzip(byte[] content)
|
||||
{
|
||||
var memoryStream = new MemoryStream(content);
|
||||
var gzipStream = new GZipStream(memoryStream, CompressionMode.Decompress);
|
||||
using (var streamReader = new StreamReader(gzipStream))
|
||||
{
|
||||
return streamReader.ReadToEnd();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,13 +23,19 @@
|
|||
[TestMethod]
|
||||
public void AssertTooManyRequestsStopsSending()
|
||||
{
|
||||
this.PositiveTest(ResponseCodeTooManyRequests, 0, null, null);
|
||||
this.PositiveTest(ResponseCodeTooManyRequests, 0, null, null, false);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void AssertTooManyRequestsStopsSendingWithFlushAsyncTask()
|
||||
{
|
||||
this.PositiveTest(ResponseCodeTooManyRequests, 0, 0, null, true);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void AssertTooManyRequestsOverExtendedTimeStopsSendingAndCleansCache()
|
||||
{
|
||||
this.PositiveTest(ResponseCodeTooManyRequestsOverExtendedTime, 0, 0, 0);
|
||||
this.PositiveTest(ResponseCodeTooManyRequestsOverExtendedTime, 0, 0, 0, false);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
|
@ -107,7 +113,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
private void PositiveTest(int responseCode, int? expectedSenderCapacity, int? expectedBufferCapacity, int? expectedStorageCapacity)
|
||||
private void PositiveTest(int responseCode, int? expectedSenderCapacity, int? expectedBufferCapacity, int? expectedStorageCapacity, bool hasFlushTask)
|
||||
{
|
||||
const int RetryAfterSeconds = 2;
|
||||
string retryAfter = DateTime.Now.ToUniversalTime().AddSeconds(RetryAfterSeconds).ToString("R", CultureInfo.InvariantCulture);
|
||||
|
@ -127,11 +133,14 @@
|
|||
var policy = new ThrottlingTransmissionPolicy();
|
||||
policy.Initialize(transmitter);
|
||||
|
||||
string statusDescription = null;
|
||||
|
||||
transmitter.OnTransmissionSent(
|
||||
new TransmissionProcessedEventArgs(
|
||||
new StubTransmission(), null, new HttpWebResponseWrapper()
|
||||
new StubTransmission() { IsFlushAsyncInProgress = hasFlushTask }, null, new HttpWebResponseWrapper()
|
||||
{
|
||||
StatusCode = responseCode,
|
||||
StatusDescription = statusDescription,
|
||||
RetryAfterHeader = retryAfter
|
||||
}));
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
using Microsoft.ApplicationInsights.Extensibility.Implementation;
|
||||
using Microsoft.ApplicationInsights.TestFramework;
|
||||
|
@ -310,6 +311,62 @@
|
|||
Assert.AreEqual(sender.ThrottleLimit, ((StubTransmission)eventArgs[0].Transmission).CountOfItems());
|
||||
Assert.AreEqual(10, ((StubTransmission)eventArgs[1].Transmission).CountOfItems());
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void FlushAsyncTransmissionWithThrottle()
|
||||
{
|
||||
var sender = new TransmissionSender();
|
||||
sender.ApplyThrottle = true;
|
||||
|
||||
var eventIsRaised = new ManualResetEventSlim();
|
||||
var firedCount = 0;
|
||||
var eventArgs = new List<Implementation.TransmissionProcessedEventArgs>();
|
||||
sender.TransmissionSent += (s, a) =>
|
||||
{
|
||||
firedCount++;
|
||||
eventArgs.Add(a);
|
||||
if (firedCount == 2)
|
||||
{
|
||||
eventIsRaised.Set();
|
||||
}
|
||||
};
|
||||
|
||||
var telemetryItems = new List<ITelemetry>();
|
||||
for (var i = 0; i < sender.ThrottleLimit + 10; i++)
|
||||
{
|
||||
telemetryItems.Add(new DataContracts.EventTelemetry());
|
||||
}
|
||||
|
||||
var wrapper = new HttpWebResponseWrapper();
|
||||
Transmission transmission = new StubTransmission(telemetryItems) { OnSend = () => wrapper };
|
||||
transmission.IsFlushAsyncInProgress = true;
|
||||
sender.Enqueue(() => transmission);
|
||||
|
||||
Assert.IsTrue(eventIsRaised.Wait(50));
|
||||
// Both accepted and rejected transmission has flush task
|
||||
Assert.IsTrue(eventArgs[0].Transmission.IsFlushAsyncInProgress);
|
||||
Assert.IsTrue(eventArgs[1].Transmission.IsFlushAsyncInProgress);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void WaitForPreviousTransmissionsToCompleteCancelationToken()
|
||||
{
|
||||
var sender = new TransmissionSender();
|
||||
Assert.AreEqual(TaskStatus.Canceled,
|
||||
sender.WaitForPreviousTransmissionsToComplete(new CancellationToken(true)).Result);
|
||||
Assert.AreEqual(TaskStatus.Canceled,
|
||||
sender.WaitForPreviousTransmissionsToComplete(1, new CancellationToken(true)).Result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void WaitForPreviousTransmissionsToCompleteReturnsSuccessWithNoInFlightTransmission()
|
||||
{
|
||||
var sender = new TransmissionSender();
|
||||
Assert.AreEqual(TaskStatus.RanToCompletion,
|
||||
sender.WaitForPreviousTransmissionsToComplete(default).Result);
|
||||
Assert.AreEqual(TaskStatus.RanToCompletion,
|
||||
sender.WaitForPreviousTransmissionsToComplete(1, default).Result);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -737,6 +737,30 @@
|
|||
|
||||
Assert.IsNull(dequeued);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void DequeueWithFlushAsyncInProcessCounter()
|
||||
{
|
||||
var address = new Uri("http://address");
|
||||
StubPlatformFile file = CreateTransmissionFile(address);
|
||||
|
||||
var folder = CreateFolder(file);
|
||||
var provider = new StubApplicationFolderProvider { OnGetApplicationFolder = () => folder };
|
||||
var storage = new TransmissionStorage();
|
||||
storage.Initialize(provider);
|
||||
|
||||
storage.IncrementFlushAsyncCounter();
|
||||
Transmission dequeued = storage.Dequeue();
|
||||
// When FlushAsyncCounter is set, dequeue returns null.
|
||||
Assert.IsNull(dequeued);
|
||||
|
||||
// DecrementFlushAsyncCounter resets FlushAsyncCounter
|
||||
// and allows storage to dequeue transmission.
|
||||
storage.DecrementFlushAsyncCounter();
|
||||
dequeued = storage.Dequeue();
|
||||
|
||||
Assert.IsNotNull(dequeued);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,6 +14,8 @@
|
|||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
using TaskEx = System.Threading.Tasks.Task;
|
||||
using System.Threading.Tasks;
|
||||
using System.Threading;
|
||||
|
||||
public class TransmitterTest
|
||||
{
|
||||
|
@ -735,6 +737,188 @@
|
|||
}
|
||||
}
|
||||
|
||||
[TestClass]
|
||||
public class FlushAsync : TransmitterTest
|
||||
{
|
||||
[TestMethod]
|
||||
public async Task PassesTransmissionToSenderAndReturnsTrue()
|
||||
{
|
||||
Transmission sentTransmission = null;
|
||||
var sender = new StubTransmissionSender
|
||||
{
|
||||
OnEnqueue = getTransmission =>
|
||||
{
|
||||
sentTransmission = getTransmission();
|
||||
return sentTransmission != null;
|
||||
},
|
||||
};
|
||||
|
||||
Transmitter transmitter = CreateTransmitter(sender: sender);
|
||||
|
||||
var transmission = new StubTransmission();
|
||||
var result = await transmitter.FlushAsync(transmission, default);
|
||||
|
||||
Assert.AreSame(transmission, sentTransmission);
|
||||
Assert.IsTrue(result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task StoresTransmissionWhenSenderIsFull()
|
||||
{
|
||||
bool isInStorage = false;
|
||||
var sender = new StubTransmissionSender { OnEnqueue = t => false };
|
||||
var buffer = new TransmissionBuffer();
|
||||
var storage = new StubTransmissionStorage
|
||||
{
|
||||
OnEnqueue = getTransmission =>
|
||||
{
|
||||
isInStorage = true;
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
Transmitter transmitter = CreateTransmitter(sender: sender, buffer: buffer, storage: storage);
|
||||
|
||||
var transmission = new StubTransmission();
|
||||
var result = await transmitter.FlushAsync(transmission, default);
|
||||
|
||||
Assert.IsTrue(isInStorage);
|
||||
Assert.IsTrue(result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task StoresTransmissionWhenBufferIsFull()
|
||||
{
|
||||
Transmission storedTransmission = null;
|
||||
var storage = new StubTransmissionStorage
|
||||
{
|
||||
OnEnqueue = transmission =>
|
||||
{
|
||||
if (transmission != null)
|
||||
{
|
||||
storedTransmission = transmission;
|
||||
transmission.IsFlushAsyncInProgress = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
var sender = new StubTransmissionSender { OnEnqueue = t => false };
|
||||
var buffer = new StubTransmissionBuffer { OnEnqueue = t => false };
|
||||
Transmitter transmitter = CreateTransmitter(sender: sender, buffer: buffer, storage: storage);
|
||||
|
||||
var enqueuedTransmission = new StubTransmission();
|
||||
var result = await transmitter.FlushAsync(enqueuedTransmission, default);
|
||||
|
||||
Assert.AreSame(enqueuedTransmission, storedTransmission);
|
||||
Assert.IsTrue(result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task AppliesTransmistionPoliciesIfTheyNeverBeenAppliedBefore()
|
||||
{
|
||||
var senderPolicy = new StubTransmissionPolicy { MaxSenderCapacity = 0 };
|
||||
var sender = new StubTransmissionSender { Capacity = 1 };
|
||||
Transmitter transmitter = CreateTransmitter(sender: sender, policies: new[] { senderPolicy });
|
||||
|
||||
var result = await transmitter.FlushAsync(new StubTransmission(), default);
|
||||
|
||||
Assert.AreEqual(senderPolicy.MaxSenderCapacity, sender.Capacity);
|
||||
Assert.IsTrue(result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task DoesNotApplyPolicesIfTheyAlreadyApplied()
|
||||
{
|
||||
var senderPolicy = new StubTransmissionPolicy { MaxSenderCapacity = 0 };
|
||||
var sender = new StubTransmissionSender();
|
||||
Transmitter transmitter = CreateTransmitter(sender: sender, policies: new[] { senderPolicy });
|
||||
transmitter.ApplyPolicies();
|
||||
senderPolicy.MaxSenderCapacity = 2;
|
||||
|
||||
var result = await transmitter.FlushAsync(new StubTransmission(), default);
|
||||
|
||||
Assert.AreNotEqual(senderPolicy.MaxSenderCapacity, sender.Capacity);
|
||||
Assert.IsTrue(result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task TracesDiagnosticsEvent()
|
||||
{
|
||||
Transmitter transmitter = CreateTransmitter();
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
const long AllKeywords = -1;
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways, (EventKeywords)AllKeywords);
|
||||
|
||||
var result = await transmitter.FlushAsync(new StubTransmission(), default);
|
||||
|
||||
EventWrittenEventArgs trace = listener.Messages.First();
|
||||
Assert.AreEqual(21, trace.EventId);
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task FlushAsyncRespectsCancellationToken()
|
||||
{
|
||||
Transmitter transmitter = CreateTransmitter();
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => transmitter.FlushAsync(new StubTransmission(), new CancellationToken(true)));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task FlushAsyncReturnsFalseWhenTransmissionIsNotSentOrStored()
|
||||
{
|
||||
var sender = new StubTransmissionSender { OnEnqueue = t => false };
|
||||
var buffer = new StubTransmissionBuffer { OnEnqueue = t => false };
|
||||
var storage = new StubTransmissionStorage { OnEnqueue = t => false };
|
||||
Transmitter transmitter = CreateTransmitter(sender: sender, buffer: buffer, storage: storage);
|
||||
|
||||
var enqueuedTransmission = new StubTransmission();
|
||||
var result = await transmitter.FlushAsync(enqueuedTransmission, default);
|
||||
|
||||
Assert.IsFalse(result);
|
||||
}
|
||||
}
|
||||
|
||||
[TestClass]
|
||||
public class MoveTransmissionsAndWaitForSender : TransmitterTest
|
||||
{
|
||||
[TestMethod]
|
||||
public async Task LogsEventAfterMovingTransmissionsToStorage()
|
||||
{
|
||||
var sender = new StubTransmissionSender { OnEnqueue = t => false };
|
||||
var buffer = new TransmissionBuffer();
|
||||
var storage = new StubTransmissionStorage { OnEnqueue = t => false };
|
||||
buffer.Enqueue(() => new StubTransmission());
|
||||
|
||||
Transmitter transmitter = CreateTransmitter(sender: sender, buffer: buffer, storage: storage);
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
const long AllKeywords = -1;
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways, (EventKeywords)AllKeywords);
|
||||
|
||||
await transmitter.MoveTransmissionsAndWaitForSender(default);
|
||||
EventWrittenEventArgs trace = listener.Messages.First();
|
||||
Assert.AreEqual(52, trace.EventId);
|
||||
|
||||
transmitter.MoveTransmissionsAndWaitForSender(1, default);
|
||||
trace = listener.Messages.First();
|
||||
Assert.AreEqual(52, trace.EventId);
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task RespectsCancellationToken()
|
||||
{
|
||||
Transmitter transmitter = CreateTransmitter();
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => transmitter.MoveTransmissionsAndWaitForSender(new CancellationToken(true)));
|
||||
Assert.AreEqual(TaskStatus.Canceled, transmitter.MoveTransmissionsAndWaitForSender(1, new CancellationToken(true)));
|
||||
}
|
||||
}
|
||||
|
||||
[TestClass]
|
||||
public class HandleSenderTransmissionSentEvent : TransmitterTest
|
||||
{
|
||||
|
|
|
@ -17,6 +17,8 @@ namespace Microsoft.ApplicationInsights.WindowsServer.Channel
|
|||
using Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implementation;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using System.Threading.Tasks;
|
||||
using System.IO;
|
||||
|
||||
|
||||
[TestClass]
|
||||
|
@ -26,6 +28,8 @@ namespace Microsoft.ApplicationInsights.WindowsServer.Channel
|
|||
private const string LocalurlNotRunning = "http://localhost:6091";
|
||||
private const long AllKeywords = -1;
|
||||
private const int SleepInMilliseconds = 10000;
|
||||
private const int DelayfromWebServerInMilliseconds = 2000;
|
||||
private const int CancellationTimeOutInMilliseconds = 1000;
|
||||
|
||||
[TestMethod]
|
||||
[Ignore("Ignored as unstable in Test/Build machines. Run locally when making changes to ServerChannel")]
|
||||
|
@ -253,6 +257,982 @@ namespace Microsoft.ApplicationInsights.WindowsServer.Channel
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelSendsTransmissionOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
IList<ITelemetry> telemetryItems = new List<ITelemetry>();
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
telemetryItems.Add((telemetry));
|
||||
var serializedExpected = JsonSerializer.Serialize(telemetryItems);
|
||||
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
byte[] buffer = new byte[2000];
|
||||
await ctx.Request.Body.ReadAsync(buffer, 0, 2000);
|
||||
Assert.AreEqual(serializedExpected, buffer);
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
// ACT
|
||||
// Data would be sent to the LocalServer which validates it.
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelSendsTransmissionAndMovesBufferToStorageOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
IList<ITelemetry> telemetryItems = new List<ITelemetry>();
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
telemetryItems.Add((telemetry));
|
||||
var serializedExpected = JsonSerializer.Serialize(telemetryItems);
|
||||
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
await Task.Delay(DelayfromWebServerInMilliseconds);
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
// ACT
|
||||
// Data would be sent to the LocalServer which validates it.
|
||||
|
||||
for (int i = 0; i < 10; i++)
|
||||
{
|
||||
channel.Transmitter.Buffer.Enqueue(() => new StubTransmission());
|
||||
}
|
||||
|
||||
channel.Send(telemetry);
|
||||
var flushTask = channel.FlushAsync(default);
|
||||
|
||||
try
|
||||
{
|
||||
await flushTask;
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 22 is logged upon successful transmission.
|
||||
var traces = allTraces.Where(item => item.EventId == 22).ToList();
|
||||
Assert.AreEqual(1, traces.Count);
|
||||
// Event 26 is logged when items are moved to Storage.
|
||||
traces = allTraces.Where(item => item.EventId == 26).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
// Returns success, telemetry items are in storage as transmission. Control has transferred out of process.
|
||||
Assert.IsTrue(flushTask.Result);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelLogsSuccessfulTransmissionOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Success from AI Backend.
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 22 is logged upon successful transmission.
|
||||
var traces = allTraces.Where(item => item.EventId == 22).ToList();
|
||||
Assert.AreEqual(1, traces.Count);
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionSuccessDueToServerErrorOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Error from AI Backend.
|
||||
ctx.Response.StatusCode = (int)HttpStatusCode.InternalServerError;
|
||||
await ctx.Response.WriteAsync("InternalError");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces
|
||||
var allTraces = listener.Messages.ToList();
|
||||
|
||||
// Event 54 is logged upon transmission failure.
|
||||
var traces = allTraces.Where(item => item.EventId == 54).ToList();
|
||||
Assert.IsTrue(traces.Count > 0);
|
||||
// 500 is the response code.
|
||||
Assert.AreEqual("500", traces[0].Payload[1]);
|
||||
// Event 26 is logged when items are moved to Storage.
|
||||
traces = allTraces.Where(item => item.EventId == 26).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
// Returns success, telemetry items are in storage as transmission. Control has transferred out of process.
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelDropsTransmissionDueToBadRequestOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Error from AI Backend.
|
||||
ctx.Response.StatusCode = (int)HttpStatusCode.BadRequest;
|
||||
await ctx.Response.WriteAsync("Invalid instrumentation key");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces
|
||||
var allTraces = listener.Messages.ToList();
|
||||
|
||||
// Event 71 is logged upon transmission failure.
|
||||
var traces = allTraces.Where(item => item.EventId == 71).ToList();
|
||||
Assert.IsTrue(traces.Count > 0);
|
||||
// 400 is the response code.
|
||||
Assert.AreEqual("400", traces[0].Payload[1]);
|
||||
// Returns failure, non-whitelisted error code.
|
||||
Assert.IsFalse(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionSuccessDueToUnknownNetworkErrorOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = (ctx) =>
|
||||
{
|
||||
// This code does not matter as Channel is configured to
|
||||
// with an incorrect endpoint.
|
||||
return null;
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// Assert:
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 54 is logged upon transmission failure.
|
||||
var traces = allTraces.Where(item => item.EventId == 54).ToList();
|
||||
Assert.IsTrue(traces.Count > 0);
|
||||
Assert.AreEqual("500", traces[0].Payload[1].ToString());
|
||||
// Event 26 is logged when items are moved to Storage.
|
||||
traces = allTraces.Where(item => item.EventId == 26).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
// Returns success, telemetry items are in storage as transmission. Control has transferred out of process.
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelDropsTransmissionDueToResponseCodeTooManyRequestsOverExtendedTimeOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Error from AI Backend.
|
||||
ctx.Response.StatusCode = (int)ResponseStatusCodes.ResponseCodeTooManyRequestsOverExtendedTime;
|
||||
await ctx.Response.WriteAsync("ResponseCodeTooManyRequestsOverExtendedTime");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// Assert:
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 54 is logged upon transmission failure.
|
||||
var traces = allTraces.Where(item => item.EventId == 54).ToList();
|
||||
Assert.AreEqual(1, traces.Count);
|
||||
// 439 is the response code.
|
||||
Assert.AreEqual("439", traces[0].Payload[1]);
|
||||
Assert.IsFalse(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelLogsResponseBodyFromTransmissionWhenVerboseEnabledOnFlushAsync()
|
||||
{
|
||||
var expectedResponseContents = "this is the expected response";
|
||||
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
await ctx.Response.WriteAsync(expectedResponseContents);
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// Enable CoreEventSource as Transmission logic is in base sdk.
|
||||
// and it'll parse response only on Verbose enabled.
|
||||
using (var listenerCore = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(CoreEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Assert.IsTrue(flushResult);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
}
|
||||
|
||||
// Assert:
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 70 is logged upon raw response content from backend.
|
||||
var traces = allTraces.Where(item => item.EventId == 70).ToList();
|
||||
Assert.AreEqual(1, traces.Count);
|
||||
Assert.IsTrue(traces[0].Payload[1].ToString().Contains(expectedResponseContents));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelRespectsCancellationTokenTimeOutOnFlushAsync()
|
||||
{
|
||||
CancellationTokenSource cancellationTokenSource = new CancellationTokenSource();
|
||||
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
cancellationTokenSource.Cancel();
|
||||
// Delay response from AI Backend.
|
||||
await Task.Delay(DelayfromWebServerInMilliseconds);
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => channel.FlushAsync(cancellationTokenSource.Token));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionMovedToStorageDueToMaxTransmissionSenderCapacityZeroOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Success from AI Backend.
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl,
|
||||
MaxTransmissionSenderCapacity = 0
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 26 is logged when items are moved to Storage.
|
||||
var traces = allTraces.Where(item => item.EventId == 26).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
// All items are moved to storage
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelDropsTransmissionDueToMaxTransmissionStorageCapacityZeroOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Success from AI Backend.
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl,
|
||||
MaxTransmissionSenderCapacity = 0,
|
||||
MaxTransmissionStorageCapacity = 0
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 25 is logged when storage enqueue has no capacity.
|
||||
var traces = allTraces.Where(item => item.EventId == 25).ToList();
|
||||
Assert.IsTrue(traces.Count > 0);
|
||||
// Returns failure as telemetry items did not store either in webserver or storage, failure is within the process.
|
||||
Assert.IsFalse(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionMovedtoStorageDueToMaxTransmissionBufferCapacityZeroOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Success from AI Backend.
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl,
|
||||
MaxTransmissionSenderCapacity = 0,
|
||||
MaxTransmissionBufferCapacity = 0
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 26 is logged when items are moved to storage.
|
||||
var traces = allTraces.Where(item => item.EventId == 26).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelDropsTransmissionDueToAllCapacityZeroOnFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
// Success from AI Backend.
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl,
|
||||
MaxTransmissionSenderCapacity = 0,
|
||||
MaxTransmissionBufferCapacity = 0,
|
||||
MaxTransmissionStorageCapacity = 0
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 42 is logged when items are not stored in storage.
|
||||
var traces = allTraces.Where(item => item.EventId == 42).ToList();
|
||||
Assert.AreEqual(1, traces.Count);
|
||||
// We lose telemetry.
|
||||
Assert.IsFalse(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionSuccesWithInFlightTransmissionOnFlushAsync()
|
||||
{
|
||||
bool isAsyncCall = false;
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
if (!isAsyncCall)
|
||||
{
|
||||
// Delay response from AI Backend.
|
||||
await Task.Delay(DelayfromWebServerInMilliseconds);
|
||||
}
|
||||
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
Parallel.ForEach(
|
||||
new int[8],
|
||||
new ParallelOptions
|
||||
{
|
||||
MaxDegreeOfParallelism = 8
|
||||
},
|
||||
(value) =>
|
||||
{
|
||||
var eventTelemetry = new EventTelemetry("test event name");
|
||||
eventTelemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(eventTelemetry);
|
||||
channel.Flush();
|
||||
});
|
||||
|
||||
await Task.Delay(1000);
|
||||
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 17 is logged when transmission start.
|
||||
var traces = allTraces.Where(item => item.EventId == 17).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
|
||||
isAsyncCall = true;
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionSuccessDueToMaxTransmissionSenderCapacityExceedWithFlushAsync()
|
||||
{
|
||||
bool isAsyncCall = false;
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
if (!isAsyncCall)
|
||||
{
|
||||
// Delay response from AI Backend.
|
||||
await Task.Delay(DelayfromWebServerInMilliseconds);
|
||||
}
|
||||
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
Parallel.ForEach(
|
||||
new int[32],
|
||||
new ParallelOptions
|
||||
{
|
||||
MaxDegreeOfParallelism = 32
|
||||
},
|
||||
(value) =>
|
||||
{
|
||||
var eventTelemetry = new EventTelemetry("test event name");
|
||||
eventTelemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(eventTelemetry);
|
||||
channel.Flush();
|
||||
});
|
||||
|
||||
await Task.Delay(1000);
|
||||
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 16 is logged when we exceed max capacity.
|
||||
var traces = allTraces.Where(item => item.EventId == 16).ToList();
|
||||
Assert.IsTrue(traces.Count > 0);
|
||||
|
||||
isAsyncCall = true;
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Assert.IsTrue(flushResult);
|
||||
|
||||
// We validate by checking SDK traces.
|
||||
allTraces = listener.Messages.ToList();
|
||||
// Event 26 is logged when items are moved to storage.
|
||||
traces = allTraces.Where(item => item.EventId == 26).ToList();
|
||||
// Transmission is moved to storage when Sender is out of capacity.
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionSuccesDueToThrottleWithFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
channel.EnableLocalThrottling = true;
|
||||
channel.LocalThrottleLimit = 100;
|
||||
for (int i = 0; i < 200; i++)
|
||||
{
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
}
|
||||
|
||||
var flushResult = await channel.FlushAsync(default(CancellationToken));
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 26 is logged once items are moved to Storage.
|
||||
var traces = allTraces.Where(item => item.EventId == 26).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
Assert.IsTrue(flushResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ChannelTransmissionSuccessWithMultipleFlushAsync()
|
||||
{
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
Parallel.ForEach(
|
||||
new int[8],
|
||||
new ParallelOptions
|
||||
{
|
||||
MaxDegreeOfParallelism = 8
|
||||
},
|
||||
async (value) =>
|
||||
{
|
||||
var eventTelemetry = new EventTelemetry("test event name");
|
||||
eventTelemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(eventTelemetry);
|
||||
var flushResult = await channel.FlushAsync(default);
|
||||
Assert.IsTrue(flushResult);
|
||||
});
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 17 is logged when transmission start.
|
||||
var traces = allTraces.Where(item => item.EventId == 17).ToList();
|
||||
Assert.IsTrue(traces.Count > 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ChannelTransmissionSuccesWithFlushAndOnFlushAsync()
|
||||
{
|
||||
bool isAsyncCall = false;
|
||||
using (var localServer = new LocalInProcHttpServer(Localurl))
|
||||
{
|
||||
localServer.ServerLogic = async (ctx) =>
|
||||
{
|
||||
if (!isAsyncCall)
|
||||
{
|
||||
// Delay response from AI Backend.
|
||||
await Task.Delay(DelayfromWebServerInMilliseconds);
|
||||
}
|
||||
|
||||
await ctx.Response.WriteAsync("Ok");
|
||||
};
|
||||
|
||||
var channel = new ServerTelemetryChannel
|
||||
{
|
||||
EndpointAddress = Localurl
|
||||
};
|
||||
var config = new TelemetryConfiguration("dummy")
|
||||
{
|
||||
TelemetryChannel = channel
|
||||
};
|
||||
channel.Initialize(config);
|
||||
|
||||
using (var listener = new TestEventListener())
|
||||
{
|
||||
listener.EnableEvents(TelemetryChannelEventSource.Log, EventLevel.LogAlways,
|
||||
(EventKeywords)AllKeywords);
|
||||
|
||||
// ACT
|
||||
Parallel.ForEach(
|
||||
new int[4],
|
||||
new ParallelOptions
|
||||
{
|
||||
MaxDegreeOfParallelism = 4
|
||||
},
|
||||
(value) =>
|
||||
{
|
||||
var eventTelemetry = new EventTelemetry("test event name");
|
||||
eventTelemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(eventTelemetry);
|
||||
channel.Flush();
|
||||
});
|
||||
|
||||
await Task.Delay(1000);
|
||||
|
||||
// We validate by checking SDK traces.
|
||||
var allTraces = listener.Messages.ToList();
|
||||
// Event 17 is logged when transmission start.
|
||||
var traces = allTraces.Where(item => item.EventId == 17).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
|
||||
isAsyncCall = true;
|
||||
var telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushTask1 = channel.FlushAsync(default);
|
||||
|
||||
isAsyncCall = false;
|
||||
// ACT
|
||||
Parallel.ForEach(
|
||||
new int[4],
|
||||
new ParallelOptions
|
||||
{
|
||||
MaxDegreeOfParallelism = 4
|
||||
},
|
||||
(value) =>
|
||||
{
|
||||
var eventTelemetry = new EventTelemetry("test event name");
|
||||
eventTelemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(eventTelemetry);
|
||||
channel.Flush();
|
||||
});
|
||||
|
||||
await Task.Delay(1000);
|
||||
|
||||
// We validate by checking SDK traces.
|
||||
allTraces = listener.Messages.ToList();
|
||||
// Event 17 is logged when transmission start.
|
||||
traces = allTraces.Where(item => item.EventId == 17).ToList();
|
||||
Assert.IsTrue(traces.Count >= 1);
|
||||
|
||||
isAsyncCall = true;
|
||||
telemetry = new EventTelemetry("test event name");
|
||||
telemetry.Context.InstrumentationKey = "dummy";
|
||||
channel.Send(telemetry);
|
||||
var flushTask2 = channel.FlushAsync(default);
|
||||
|
||||
try
|
||||
{
|
||||
await flushTask1;
|
||||
await flushTask2;
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
Thread.Sleep(SleepInMilliseconds);
|
||||
|
||||
// VERIFY
|
||||
// We validate by checking SDK traces.
|
||||
allTraces = listener.Messages.ToList();
|
||||
// Event 22 is logged upon successful transmission.
|
||||
traces = allTraces.Where(item => item.EventId == 22).ToList();
|
||||
Assert.IsTrue(traces.Count >= 3);
|
||||
Assert.IsTrue(flushTask1.Result);
|
||||
Assert.IsTrue(flushTask2.Result);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
|
@ -576,4 +576,46 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
[TestClass]
|
||||
public class FlushAsyncTask : ServerTelemetryChannelTest
|
||||
{
|
||||
[TestMethod]
|
||||
public void FlushesTelemetryBuffer()
|
||||
{
|
||||
var mockTelemetryBuffer = new Mock<TelemetryChannel.Implementation.TelemetryBuffer>();
|
||||
var channel = new ServerTelemetryChannel { TelemetryBuffer = mockTelemetryBuffer.Object };
|
||||
channel.Initialize(TelemetryConfiguration.CreateDefault());
|
||||
|
||||
channel.FlushAsync(default);
|
||||
|
||||
mockTelemetryBuffer.Verify(x => x.FlushAsync(default));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void WaitsForAsynchronousFlushToCompleteAndAllowsItsExceptionsToBubbleUp()
|
||||
{
|
||||
var expectedException = new Exception();
|
||||
var tcs = new TaskCompletionSource<bool>();
|
||||
tcs.SetException(expectedException);
|
||||
var mockTelemetryBuffer = new Mock<TelemetryChannel.Implementation.TelemetryBuffer>();
|
||||
mockTelemetryBuffer.Setup(x => x.FlushAsync(CancellationToken.None)).Returns(tcs.Task);
|
||||
var channel = new ServerTelemetryChannel { TelemetryBuffer = mockTelemetryBuffer.Object };
|
||||
channel.Initialize(TelemetryConfiguration.CreateDefault());
|
||||
|
||||
var actualException = AssertEx.ThrowsAsync<Exception>(async () => await channel.FlushAsync(default));
|
||||
|
||||
Assert.AreSame(expectedException, actualException.Result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task FlushAsyncRespectsCancellationToken()
|
||||
{
|
||||
var mockTelemetryBuffer = new Mock<TelemetryChannel.Implementation.TelemetryBuffer>();
|
||||
var channel = new ServerTelemetryChannel { TelemetryBuffer = mockTelemetryBuffer.Object };
|
||||
channel.Initialize(TelemetryConfiguration.CreateDefault());
|
||||
|
||||
await Assert.ThrowsExceptionAsync<TaskCanceledException>(() => channel.FlushAsync(new CancellationToken(true)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,14 +13,12 @@
|
|||
<ProjectReference Include="..\..\..\Test\Microsoft.ApplicationInsights.Test\ApplicationInsightsTypes\ApplicationInsightsTypes.csproj" />
|
||||
<ProjectReference Include="..\..\..\src\ServerTelemetryChannel\TelemetryChannel.csproj" />
|
||||
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="Microsoft.TestPlatform.TestHost" Version="16.7.1" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="Moq" Version="4.10.0" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
|
||||
<PackageReference Include="CompareNETObjects" Version="4.59.0" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.1'">
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>936af739-4297-4016-9d70-4280042709be</ProjectGuid>
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.Default.props" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.Common.props" />
|
||||
<PropertyGroup />
|
||||
<Import Project="Common.projitems" Label="Shared" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\CodeSharing\Microsoft.CodeSharing.CSharp.targets" />
|
||||
</Project>
|
|
@ -1,16 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
|
||||
<HasSharedItems>true</HasSharedItems>
|
||||
<SharedGUID>936af739-4297-4016-9d70-4280042709be</SharedGUID>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration">
|
||||
<Import_RootNamespace>Microsoft.ApplicationInsights.Common</Import_RootNamespace>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Extensions\DateTimeExtensions.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)Extensions\ExceptionExtensions.cs" />
|
||||
<Compile Include="$(MSBuildThisFileDirectory)InterlockedThrottle.cs" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,26 @@
|
|||
// <copyright file="IAsyncFlushable.cs" company="Microsoft">
|
||||
// Copyright © Microsoft. All Rights Reserved.
|
||||
// </copyright>
|
||||
|
||||
namespace Microsoft.ApplicationInsights.Channel
|
||||
{
|
||||
using System;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a task based flush for sending telemetry to application insights.
|
||||
/// </summary>
|
||||
public interface IAsyncFlushable : IDisposable
|
||||
{
|
||||
/// <summary>
|
||||
/// Flushes the in-memory buffer asynchronously.
|
||||
/// </summary>
|
||||
/// <param name="cancellationToken">CancellationToken.</param>
|
||||
/// <returns>
|
||||
/// Returns true when telemetry data is transferred out of process (application insights server or local storage) and are emitted before the flush invocation.
|
||||
/// Returns false when transfer of telemetry data to server has failed with non-retriable http status code.
|
||||
/// </returns>
|
||||
Task<bool> FlushAsync(CancellationToken cancellationToken);
|
||||
}
|
||||
}
|
|
@ -2,6 +2,8 @@
|
|||
{
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Common;
|
||||
using Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing;
|
||||
|
||||
|
@ -9,7 +11,7 @@
|
|||
/// Represents a communication channel for sending telemetry to Application Insights via HTTPS. There will be a buffer that will not be persisted, to enforce the
|
||||
/// queued telemetry items to be sent, <see cref="ITelemetryChannel.Flush"/> should be called.
|
||||
/// </summary>
|
||||
public class InMemoryChannel : ITelemetryChannel
|
||||
public class InMemoryChannel : ITelemetryChannel, IAsyncFlushable
|
||||
{
|
||||
private readonly TelemetryBuffer buffer;
|
||||
private readonly InMemoryTransmitter transmitter;
|
||||
|
@ -186,6 +188,25 @@
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Will send all the telemetry items stored in the memory asynchronously.
|
||||
/// </summary>
|
||||
/// <param name="cancellationToken">CancellationToken.</param>
|
||||
/// <returns>
|
||||
/// This method is hard-coded to return true. This channel offers minimal reliability guarantees and doesn't retry sending telemetry after a failure.
|
||||
/// </returns>
|
||||
/// <remarks>
|
||||
/// <a href="https://docs.microsoft.com/azure/azure-monitor/app/telemetry-channels#built-in-telemetry-channels">Learn more</a>
|
||||
/// </remarks>
|
||||
public Task<bool> FlushAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
return Task<bool>.Run(() =>
|
||||
{
|
||||
this.Flush(default(TimeSpan)); // when default(TimeSpan) is provided, value is ignored and default timeout of 100 sec is used
|
||||
return Task.FromResult(true);
|
||||
}, cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Disposing the channel.
|
||||
/// </summary>
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
namespace Microsoft.ApplicationInsights.Channel
|
||||
{
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
internal static class TaskEx
|
||||
{
|
||||
/// <summary>
|
||||
/// Create cancelled task for .NET45.
|
||||
/// </summary>
|
||||
/// <param name="cancellationToken">CancellationToken.</param>
|
||||
/// <returns>Canceled task.</returns>
|
||||
internal static Task FromCanceled(CancellationToken cancellationToken)
|
||||
{
|
||||
#if NET452
|
||||
return Task.Factory.StartNew(() => { }, cancellationToken);
|
||||
#else
|
||||
return Task.FromCanceled(cancellationToken);
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Generic method to create cancelled task for .NET45.
|
||||
/// </summary>
|
||||
/// <typeparam name="TResult">Determines the type of task.</typeparam>
|
||||
/// <param name="cancellationToken">CancellationToken.</param>
|
||||
/// <returns>Return cancelled task of specified type.</returns>
|
||||
internal static Task<TResult> FromCanceled<TResult>(CancellationToken cancellationToken)
|
||||
{
|
||||
#if NET452
|
||||
return new Task<TResult>(() => { return default; }, cancellationToken);
|
||||
#else
|
||||
return Task.FromCanceled<TResult>(cancellationToken);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
|
@ -2,6 +2,7 @@
|
|||
{
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Net;
|
||||
|
@ -21,7 +22,8 @@
|
|||
|
||||
private static readonly TimeSpan DefaultTimeout = TimeSpan.FromSeconds(100);
|
||||
private static HttpClient client = new HttpClient() { Timeout = System.Threading.Timeout.InfiniteTimeSpan };
|
||||
|
||||
private static long flushAsyncCounter = 0;
|
||||
|
||||
private int isSending;
|
||||
|
||||
/// <summary>
|
||||
|
@ -75,7 +77,7 @@
|
|||
/// Gets or Sets an event notification to track ingestion endpoint response.
|
||||
/// </summary>
|
||||
public EventHandler<TransmissionStatusEventArgs> TransmissionStatusEvent { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Gets the Address of the endpoint to which transmission will be sent.
|
||||
/// </summary>
|
||||
|
@ -139,6 +141,16 @@
|
|||
get; private set;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the flush async id for the transmission.
|
||||
/// </summary>
|
||||
internal long FlushAsyncId { get; } = Interlocked.Increment(ref flushAsyncCounter);
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether FlushAsync is in progress.
|
||||
/// </summary>
|
||||
internal bool IsFlushAsyncInProgress { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// Executes the request that the current transmission represents.
|
||||
/// </summary>
|
||||
|
@ -156,6 +168,7 @@
|
|||
{
|
||||
HttpRequestMessage request = this.CreateRequestMessage(this.EndpointAddress, contentStream);
|
||||
HttpWebResponseWrapper wrapper = null;
|
||||
long responseDurationInMs = 0;
|
||||
|
||||
try
|
||||
{
|
||||
|
@ -171,7 +184,8 @@
|
|||
using (var response = await client.SendAsync(request, ct.Token).ConfigureAwait(false))
|
||||
{
|
||||
stopwatch.Stop();
|
||||
CoreEventSource.Log.IngestionResponseTime(response != null ? (int)response.StatusCode : -1, stopwatch.ElapsedMilliseconds);
|
||||
responseDurationInMs = stopwatch.ElapsedMilliseconds;
|
||||
CoreEventSource.Log.IngestionResponseTime(response != null ? (int)response.StatusCode : -1, responseDurationInMs);
|
||||
// Log ingestion respose time as event counter metric.
|
||||
CoreEventSource.Log.IngestionResponseTimeEventCounter(stopwatch.ElapsedMilliseconds);
|
||||
|
||||
|
@ -225,7 +239,7 @@
|
|||
try
|
||||
{
|
||||
// Initiates event notification to subscriber with Transmission and TransmissionStatusEventArgs.
|
||||
this.TransmissionStatusEvent?.Invoke(this, new TransmissionStatusEventArgs(wrapper ?? new HttpWebResponseWrapper() { StatusCode = 999 }));
|
||||
this.TransmissionStatusEvent?.Invoke(this, new TransmissionStatusEventArgs(wrapper ?? new HttpWebResponseWrapper() { StatusCode = 999 }, responseDurationInMs));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -356,6 +370,20 @@
|
|||
return Tuple.Create(transmissionA, transmissionB);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Serializes telemetry items.
|
||||
/// </summary>
|
||||
/// TODO: Refactor this method, it does more than serialization activity.
|
||||
internal void Serialize(Uri address, IEnumerable<ITelemetry> telemetryItems, TimeSpan timeout = default(TimeSpan))
|
||||
{
|
||||
this.EndpointAddress = address;
|
||||
this.Content = JsonSerializer.Serialize(telemetryItems);
|
||||
this.ContentType = JsonSerializer.ContentType;
|
||||
this.ContentEncoding = JsonSerializer.CompressionType;
|
||||
this.Timeout = timeout == default(TimeSpan) ? DefaultTimeout : timeout;
|
||||
this.Id = Convert.ToBase64String(BitConverter.GetBytes(WeakConcurrentRandom.Instance.Next()));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates an http request for sending a transmission.
|
||||
/// </summary>
|
||||
|
|
|
@ -12,14 +12,30 @@
|
|||
/// Initializes a new instance of the <see cref="TransmissionStatusEventArgs"/> class.
|
||||
/// </summary>
|
||||
/// <param name="response">Response from ingestion endpoint.</param>
|
||||
public TransmissionStatusEventArgs(HttpWebResponseWrapper response)
|
||||
[ObsoleteAttribute("This constructor is deprecated. Please use a constructor that accepts response and responseDurationInMs instead.", false)]
|
||||
public TransmissionStatusEventArgs(HttpWebResponseWrapper response) : this(response, default)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="TransmissionStatusEventArgs"/> class.
|
||||
/// </summary>
|
||||
/// <param name="response">Response from ingestion endpoint.</param>
|
||||
/// <param name="responseDurationInMs">Response duration in milliseconds.</param>
|
||||
public TransmissionStatusEventArgs(HttpWebResponseWrapper response, long responseDurationInMs)
|
||||
{
|
||||
this.Response = response;
|
||||
this.ResponseDurationInMs = responseDurationInMs;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the response from ingestion endpoint.
|
||||
/// </summary>
|
||||
public HttpWebResponseWrapper Response { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets response duration in milliseconds.
|
||||
/// </summary>
|
||||
public long ResponseDurationInMs { get; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,10 +12,10 @@
|
|||
internal const string DefaultLiveMetricsEndpoint = "https://rt.services.visualstudio.com/";
|
||||
|
||||
/// <summary>Default endpoint for Profiler.</summary>
|
||||
internal const string DefaultProfilerEndpoint = "https://agent.azureserviceprofiler.net/";
|
||||
internal const string DefaultProfilerEndpoint = "https://profiler.monitor.azure.com/";
|
||||
|
||||
/// <summary>Default endpoint for Snapshot Debugger.</summary>
|
||||
internal const string DefaultSnapshotEndpoint = "https://agent.azureserviceprofiler.net/";
|
||||
internal const string DefaultSnapshotEndpoint = "https://snapshot.monitor.azure.com/";
|
||||
|
||||
/// <summary>Sub-domain for Ingestion endpoint (aka Breeze). (https://dc.applicationinsights.azure.com/).</summary>
|
||||
internal const string IngestionPrefix = "dc";
|
||||
|
|
|
@ -77,11 +77,7 @@
|
|||
get => this.interval;
|
||||
set
|
||||
{
|
||||
if (value == null)
|
||||
{
|
||||
this.interval = DefaultHeartbeatInterval;
|
||||
}
|
||||
else if (value <= MinimumHeartbeatInterval)
|
||||
if (value <= MinimumHeartbeatInterval)
|
||||
{
|
||||
this.interval = MinimumHeartbeatInterval;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,61 @@
|
|||
namespace Microsoft.ApplicationInsights.Extensibility.Implementation.Tracing
|
||||
{
|
||||
using System;
|
||||
|
||||
/// <summary>
|
||||
/// Self diagnostics class captures the EventSource events sent by Application Insights
|
||||
/// modules and writes them to local file for internal troubleshooting.
|
||||
/// </summary>
|
||||
internal class SelfDiagnostics : IDisposable
|
||||
{
|
||||
/// <summary>
|
||||
/// Long-living object that hold relevant resources.
|
||||
/// </summary>
|
||||
private static readonly SelfDiagnostics Instance = new SelfDiagnostics();
|
||||
|
||||
// Long-living object that holds a refresher which checks whether the configuration file was updated
|
||||
// every 10 seconds.
|
||||
// private readonly SelfDiagnosticsConfigRefresher configRefresher;
|
||||
|
||||
static SelfDiagnostics()
|
||||
{
|
||||
AppDomain.CurrentDomain.ProcessExit += (sender, eventArgs) =>
|
||||
{
|
||||
Instance.Dispose();
|
||||
};
|
||||
}
|
||||
|
||||
private SelfDiagnostics()
|
||||
{
|
||||
// this.configRefresher = new SelfDiagnosticsConfigRefresher();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Trigger CLR to initialize static fields and static constructors of SelfDiagnosticsModule.
|
||||
/// No member of SelfDiagnosticsModule class is explicitly called when an EventSource class, say
|
||||
/// AspNetCoreEventSource, is invoked to send an event.
|
||||
/// This method needs to be called in order to capture any EventSource event.
|
||||
/// </summary>
|
||||
public static void EnsureInitialized()
|
||||
{
|
||||
}
|
||||
|
||||
/// <inheritdoc/>
|
||||
public void Dispose()
|
||||
{
|
||||
this.Dispose(true);
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Disposes config refresher.
|
||||
/// </summary>
|
||||
protected virtual void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
// this.configRefresher.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -64,6 +64,7 @@
|
|||
Activity.ForceDefaultIdFormat = true;
|
||||
}
|
||||
});
|
||||
SelfDiagnostics.EnsureInitialized();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
<PackageReference Include="Microsoft.Diagnostics.Tracing.EventRegister" Version="1.1.28" Condition="$(OS) == 'Windows_NT'">
|
||||
<PrivateAssets>All</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="5.0.0-rc.1.20451.14" />
|
||||
<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="5.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition="'$(TargetFramework)' != 'netstandard2.0'">
|
||||
|
@ -34,6 +34,5 @@
|
|||
<AdditionalFiles Include="$(PublicApiRoot)\$(AssemblyName).dll\$(TargetFramework)\PublicAPI.Shipped.txt" />
|
||||
<AdditionalFiles Include="$(PublicApiRoot)\$(AssemblyName).dll\$(TargetFramework)\PublicAPI.Unshipped.txt" />
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="..\Common\Common\Common.projitems" Label="Shared" />
|
||||
|
||||
</Project>
|
|
@ -8,6 +8,7 @@ using System.Runtime.InteropServices;
|
|||
[assembly: InternalsVisibleTo("Microsoft.ApplicationInsights.TelemetryChannel.Tests, PublicKey=" + AssemblyInfo.PublicKey)]
|
||||
[assembly: InternalsVisibleTo("Microsoft.ApplicationInsights.AspNetCore.Tests, PublicKey=" + AssemblyInfo.PublicKey)]
|
||||
[assembly: InternalsVisibleTo("Microsoft.ApplicationInsights.WorkerService.Tests, PublicKey=" + AssemblyInfo.PublicKey)]
|
||||
[assembly: InternalsVisibleTo("Microsoft.AI.ServerTelemetryChannel, PublicKey=" + AssemblyInfo.PublicKey)]
|
||||
|
||||
// Assembly dynamically generated by Moq in unit tests
|
||||
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=" + AssemblyInfo.MoqPublicKey)]
|
||||
|
|
|
@ -3,7 +3,9 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Globalization;
|
||||
using System.Globalization;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
using Microsoft.ApplicationInsights.DataContracts;
|
||||
using Microsoft.ApplicationInsights.Extensibility;
|
||||
|
@ -676,6 +678,39 @@
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Asynchronously Flushes the in-memory buffer and any metrics being pre-aggregated.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// Returns true when telemetry data is transferred out of process (application insights server or local storage) and are emitted before the flush invocation.
|
||||
/// Returns false when transfer of telemetry data to server has failed with non-retriable http status.
|
||||
/// FlushAsync on InMemoryChannel always returns true, as the channel offers minimal reliability guarantees and doesn't retry sending telemetry after a failure.
|
||||
/// </returns>
|
||||
/// TODO: Metrics flush to respect CancellationToken.
|
||||
public Task<bool> FlushAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
if (this.TryGetMetricManager(out MetricManager privateMetricManager))
|
||||
{
|
||||
privateMetricManager.Flush(flushDownstreamPipeline: false);
|
||||
}
|
||||
|
||||
TelemetryConfiguration pipeline = this.configuration;
|
||||
if (pipeline != null)
|
||||
{
|
||||
MetricManager sharedMetricManager = pipeline.GetMetricManager(createIfNotExists: false);
|
||||
sharedMetricManager?.Flush(flushDownstreamPipeline: false);
|
||||
|
||||
ITelemetryChannel channel = pipeline.TelemetryChannel;
|
||||
|
||||
if (channel is IAsyncFlushable asyncFlushableChannel && !cancellationToken.IsCancellationRequested)
|
||||
{
|
||||
return asyncFlushableChannel.FlushAsync(cancellationToken);
|
||||
}
|
||||
}
|
||||
|
||||
return cancellationToken.IsCancellationRequested ? TaskEx.FromCanceled<bool>(cancellationToken) : Task.FromResult(false);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets or creates a metric container that you can use to track, aggregate and send metric values.<br />
|
||||
/// Optionally specify a metric configuration to control how the tracked values are aggregated.
|
||||
|
|
|
@ -10,16 +10,3 @@ using System.Runtime.InteropServices;
|
|||
|
||||
// Assembly dynamically generated by Moq in unit tests
|
||||
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=" + AssemblyInfo.MoqPublicKey)]
|
||||
|
||||
internal static class AssemblyInfo
|
||||
{
|
||||
#if PUBLIC_RELEASE
|
||||
// Public key; assemblies are delay signed.
|
||||
public const string PublicKey = "0024000004800000940000000602000000240000525341310004000001000100b5fc90e7027f67871e773a8fde8938c81dd402ba65b9201d60593e96c492651e889cc13f1415ebb53fac1131ae0bd333c5ee6021672d9718ea31a8aebd0da0072f25d87dba6fc90ffd598ed4da35e44c398c454307e8e33b8426143daec9f596836f97c8f74750e5975c64e2189f45def46b2a2b1247adc3652bf5c308055da9";
|
||||
#else
|
||||
// Internal key; assemblies are public signed.
|
||||
public const string PublicKey = "0024000004800000940000000602000000240000525341310004000001000100319b35b21a993df850846602dae9e86d8fbb0528a0ad488ecd6414db798996534381825f94f90d8b16b72a51c4e7e07cf66ff3293c1046c045fafc354cfcc15fc177c748111e4a8c5a34d3940e7f3789dd58a928add6160d6f9cc219680253dcea88a034e7d472de51d4989c7783e19343839273e0e63a43b99ab338149dd59f";
|
||||
#endif
|
||||
|
||||
public const string MoqPublicKey = "0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7";
|
||||
}
|
|
@ -104,6 +104,8 @@
|
|||
// not in the whitelisted set to attempt retry.
|
||||
TelemetryChannelEventSource.Log.TransmissionDataNotRetriedForNonWhitelistedResponse(e.Transmission.Id,
|
||||
httpWebResponseWrapper.StatusCode.ToString(CultureInfo.InvariantCulture));
|
||||
// For non white listed response, set the result of FlushAsync to false.
|
||||
e.Transmission.IsFlushAsyncInProgress = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -122,6 +124,9 @@
|
|||
TelemetryChannelEventSource.Log.TransmissionDataLossError(e.Transmission.Id,
|
||||
"Unknown Exception Message");
|
||||
}
|
||||
|
||||
// For Unknown Exception set the result of FlushAsync to false.
|
||||
e.Transmission.IsFlushAsyncInProgress = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -89,6 +89,19 @@
|
|||
return newTransmissions;
|
||||
}
|
||||
|
||||
private static Transmission SerializeNewTransmission(TransmissionProcessedEventArgs args, string newTransmissions)
|
||||
{
|
||||
byte[] data = JsonSerializer.ConvertToByteArray(newTransmissions);
|
||||
Transmission transmission = new Transmission(
|
||||
args.Transmission.EndpointAddress,
|
||||
data,
|
||||
args.Transmission.ContentType,
|
||||
args.Transmission.ContentEncoding,
|
||||
args.Transmission.Timeout);
|
||||
|
||||
return transmission;
|
||||
}
|
||||
|
||||
private void HandleTransmissionSentEvent(object sender, TransmissionProcessedEventArgs args)
|
||||
{
|
||||
if (args.Exception == null && (args.Response == null || args.Response.StatusCode == ResponseStatusCodes.Success))
|
||||
|
@ -101,21 +114,24 @@
|
|||
if (args.Response != null && args.Response.StatusCode == ResponseStatusCodes.PartialSuccess)
|
||||
{
|
||||
int statusCode;
|
||||
Transmission transmission;
|
||||
string newTransmissions = ParsePartialSuccessResponse(args.Transmission, args, out statusCode);
|
||||
|
||||
if (!string.IsNullOrEmpty(newTransmissions))
|
||||
{
|
||||
this.DelayFutureProcessing(args.Response, statusCode);
|
||||
|
||||
byte[] data = JsonSerializer.ConvertToByteArray(newTransmissions);
|
||||
Transmission newTransmission = new Transmission(
|
||||
args.Transmission.EndpointAddress,
|
||||
data,
|
||||
args.Transmission.ContentType,
|
||||
args.Transmission.ContentEncoding,
|
||||
args.Transmission.Timeout);
|
||||
if (args.Transmission.IsFlushAsyncInProgress)
|
||||
{
|
||||
// Move newTransmission to storage on IAsyncFlushable.FlushAsync
|
||||
transmission = SerializeNewTransmission(args, newTransmissions);
|
||||
this.DelayFutureProcessing(args.Response, statusCode);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.DelayFutureProcessing(args.Response, statusCode);
|
||||
transmission = SerializeNewTransmission(args, newTransmissions);
|
||||
}
|
||||
|
||||
this.Transmitter.Enqueue(newTransmission);
|
||||
this.Transmitter.Enqueue(transmission);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
using Microsoft.ApplicationInsights.Extensibility;
|
||||
|
@ -168,6 +169,46 @@
|
|||
/// Passes all <see cref="ITelemetry"/> items to the <see cref="TelemetrySerializer"/> and empties the queue.
|
||||
/// </summary>
|
||||
public virtual async Task FlushAsync()
|
||||
{
|
||||
List<ITelemetry> telemetryToFlush = this.GetBufferTelemetryAndResetBuffer();
|
||||
|
||||
if (telemetryToFlush != null)
|
||||
{
|
||||
TelemetryChannelEventSource.Log.SerializationStarted(telemetryToFlush.Count);
|
||||
|
||||
// Flush on thread pull to offload the rest of the channel logic from the customer's thread.
|
||||
// This also works around the problem in ASP.NET 4.0, does not support await and SynchronizationContext correctly.
|
||||
// See also: http://www.bing.com/search?q=UseTaskFriendlySynchronizationContext
|
||||
await Task.Run(() => this.serializer.Serialize(telemetryToFlush)).ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Passes all <see cref="ITelemetry"/> items to the <see cref="TelemetrySerializer"/>, empties the queue and returns a task.
|
||||
/// </summary>
|
||||
public virtual Task<bool> FlushAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
List<ITelemetry> telemetryToFlush = this.GetBufferTelemetryAndResetBuffer();
|
||||
|
||||
if (!cancellationToken.IsCancellationRequested)
|
||||
{
|
||||
return this.serializer.SerializeAsync(telemetryToFlush, cancellationToken);
|
||||
}
|
||||
|
||||
return TaskEx.FromCanceled<bool>(cancellationToken);
|
||||
}
|
||||
|
||||
public IEnumerator<ITelemetry> GetEnumerator()
|
||||
{
|
||||
return this.itemBuffer.GetEnumerator();
|
||||
}
|
||||
|
||||
IEnumerator IEnumerable.GetEnumerator()
|
||||
{
|
||||
return this.GetEnumerator();
|
||||
}
|
||||
|
||||
private List<ITelemetry> GetBufferTelemetryAndResetBuffer()
|
||||
{
|
||||
List<ITelemetry> telemetryToFlush = null;
|
||||
if (this.itemBuffer.Count > 0)
|
||||
|
@ -184,25 +225,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
if (telemetryToFlush != null)
|
||||
{
|
||||
TelemetryChannelEventSource.Log.SerializationStarted(telemetryToFlush.Count);
|
||||
|
||||
// Flush on thread pull to offload the rest of the channel logic from the customer's thread.
|
||||
// This also works around the problem in ASP.NET 4.0, does not support await and SynchronizationContext correctly.
|
||||
// See also: http://www.bing.com/search?q=UseTaskFriendlySynchronizationContext
|
||||
await Task.Run(() => this.serializer.Serialize(telemetryToFlush)).ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
|
||||
public IEnumerator<ITelemetry> GetEnumerator()
|
||||
{
|
||||
return this.itemBuffer.GetEnumerator();
|
||||
}
|
||||
|
||||
IEnumerator IEnumerable.GetEnumerator()
|
||||
{
|
||||
return this.GetEnumerator();
|
||||
return telemetryToFlush;
|
||||
}
|
||||
|
||||
private void HandleApplicationStoppingEvent(object sender, ApplicationStoppingEventArgs e)
|
||||
|
|
|
@ -553,6 +553,18 @@
|
|||
this.ApplicationName);
|
||||
}
|
||||
|
||||
[Event(76, Message = "Flush telemetry events using IAsyncFlushable.FlushAsync.", Level = EventLevel.Verbose)]
|
||||
public void TelemetryChannelFlushAsync(string appDomainName = "Incorrect")
|
||||
{
|
||||
this.WriteEvent(76, this.ApplicationName);
|
||||
}
|
||||
|
||||
[Event(77, Message = "TransmissionFlushAsyncFailed. Exception:{0}", Level = EventLevel.Warning)]
|
||||
public void TransmissionFlushAsyncWarning(string exception, string appDomainName = "Incorrect")
|
||||
{
|
||||
this.WriteEvent(77, exception ?? string.Empty, this.ApplicationName);
|
||||
}
|
||||
|
||||
private static string GetApplicationName()
|
||||
{
|
||||
//// We want to add application name to all events BUT
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
|
||||
internal class TelemetrySerializer
|
||||
|
@ -48,9 +50,35 @@
|
|||
throw new Exception("TelemetrySerializer.EndpointAddress was not set.");
|
||||
}
|
||||
|
||||
var transmission = new Transmission(this.EndpointAddress, items)
|
||||
{ TransmissionStatusEvent = this.TransmissionStatusEvent };
|
||||
var transmission = new Transmission(this.EndpointAddress, items)
|
||||
{ TransmissionStatusEvent = this.TransmissionStatusEvent };
|
||||
this.Transmitter.Enqueue(transmission);
|
||||
}
|
||||
|
||||
public virtual Task<bool> SerializeAsync(ICollection<ITelemetry> items, CancellationToken cancellationToken)
|
||||
{
|
||||
if (this.EndpointAddress == null)
|
||||
{
|
||||
throw new Exception("TelemetrySerializer.EndpointAddress was not set.");
|
||||
}
|
||||
|
||||
if (items == null || !items.Any())
|
||||
{
|
||||
return this.Transmitter.MoveTransmissionsAndWaitForSender(cancellationToken);
|
||||
}
|
||||
|
||||
var transmission = new Transmission() { TransmissionStatusEvent = this.TransmissionStatusEvent };
|
||||
// serialize transmission and enqueue asynchronously
|
||||
return Task.Run(() => this.SerializeTransmissionAndEnqueue(transmission, items, cancellationToken), cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Serializes transmission and enqueue.
|
||||
/// </summary>
|
||||
private Task<bool> SerializeTransmissionAndEnqueue(Transmission transmission, ICollection<ITelemetry> items, CancellationToken cancellationToken)
|
||||
{
|
||||
transmission.Serialize(this.EndpointAddress, items);
|
||||
return this.Transmitter.FlushAsync(transmission, cancellationToken);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -44,6 +44,12 @@
|
|||
this.MaxBufferCapacity = 0;
|
||||
this.MaxStorageCapacity = 0;
|
||||
}
|
||||
else if (e.Transmission.IsFlushAsyncInProgress)
|
||||
{
|
||||
// Move rejectedTransmission to storage on IAsyncFlushable.FlushAsync
|
||||
this.MaxBufferCapacity = 0;
|
||||
this.MaxStorageCapacity = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.MaxBufferCapacity = null;
|
||||
|
|
|
@ -1,19 +1,25 @@
|
|||
namespace Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implementation
|
||||
{
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
using Microsoft.ApplicationInsights.Common.Extensions;
|
||||
using Microsoft.ApplicationInsights.Extensibility;
|
||||
using Microsoft.ApplicationInsights.Extensibility.Implementation;
|
||||
|
||||
internal class TransmissionSender
|
||||
{
|
||||
{
|
||||
private static readonly HttpWebResponseWrapper DefaultHttpWebResponseWrapper = default(HttpWebResponseWrapper);
|
||||
// Stores all inflight requests using this dictionary, before SendAsync.
|
||||
// Removes entry from dictionary after response.
|
||||
private ConcurrentDictionary<long, Task<HttpWebResponseWrapper>> inFlightTransmissions = new ConcurrentDictionary<long, Task<HttpWebResponseWrapper>>();
|
||||
private int transmissionCount = 0;
|
||||
private int capacity = 10;
|
||||
|
||||
|
@ -134,6 +140,41 @@
|
|||
return enqueueSucceded;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Wait for inflight transmissions to complete. Honors the CancellationToken set by an application on IAsyncFlushable.FlushAsync.
|
||||
/// </summary>
|
||||
internal Task<TaskStatus> WaitForPreviousTransmissionsToComplete(CancellationToken cancellationToken)
|
||||
{
|
||||
var transmissionFlushAsyncId = this.inFlightTransmissions.LastOrDefault().Key;
|
||||
return this.WaitForPreviousTransmissionsToComplete(transmissionFlushAsyncId, cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Wait for inflight transmissions to complete. Honors the CancellationToken set by an application on IAsyncFlushable.FlushAsync.
|
||||
/// </summary>
|
||||
internal async Task<TaskStatus> WaitForPreviousTransmissionsToComplete(long transmissionFlushAsyncId, CancellationToken cancellationToken)
|
||||
{
|
||||
if (cancellationToken.IsCancellationRequested)
|
||||
{
|
||||
return TaskStatus.Canceled;
|
||||
}
|
||||
|
||||
var activeTransmissions = this.inFlightTransmissions.Where(p => p.Key <= transmissionFlushAsyncId).Select(p => p.Value);
|
||||
|
||||
if (activeTransmissions?.Count() > 0)
|
||||
{
|
||||
// Wait for all transmissions over the wire to complete.
|
||||
var inTransitTasks = Task<HttpWebResponseWrapper>.WhenAll(activeTransmissions);
|
||||
// Respect passed Cancellation token from FlushAsync call
|
||||
var inTransitTasksWithCancellationToken = Task<HttpWebResponseWrapper>
|
||||
.WhenAny(inTransitTasks, new Task<HttpWebResponseWrapper>(() => { return DefaultHttpWebResponseWrapper; }, cancellationToken));
|
||||
await inTransitTasksWithCancellationToken.ConfigureAwait(false);
|
||||
return cancellationToken.IsCancellationRequested ? TaskStatus.Canceled : inTransitTasksWithCancellationToken.Status;
|
||||
}
|
||||
|
||||
return TaskStatus.RanToCompletion;
|
||||
}
|
||||
|
||||
protected void OnTransmissionSent(TransmissionProcessedEventArgs args)
|
||||
{
|
||||
this.TransmissionSent?.Invoke(this, args);
|
||||
|
@ -142,6 +183,7 @@
|
|||
private async Task StartSending(Transmission transmission)
|
||||
{
|
||||
SdkInternalOperationsMonitor.Enter();
|
||||
Task<HttpWebResponseWrapper> transmissionTask = null;
|
||||
|
||||
try
|
||||
{
|
||||
|
@ -155,7 +197,9 @@
|
|||
try
|
||||
{
|
||||
TelemetryChannelEventSource.Log.TransmissionSendStarted(acceptedTransmission.Id);
|
||||
responseContent = await acceptedTransmission.SendAsync().ConfigureAwait(false);
|
||||
transmissionTask = acceptedTransmission.SendAsync();
|
||||
this.inFlightTransmissions.TryAdd(transmission.FlushAsyncId, transmissionTask);
|
||||
responseContent = await transmissionTask.ConfigureAwait(false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
@ -204,6 +248,7 @@
|
|||
};
|
||||
}
|
||||
|
||||
this.inFlightTransmissions.TryRemove(transmission.FlushAsyncId, out _);
|
||||
this.OnTransmissionSent(new TransmissionProcessedEventArgs(acceptedTransmission, exception, responseContent));
|
||||
}
|
||||
}
|
||||
|
@ -266,14 +311,20 @@
|
|||
|
||||
Transmission acceptedTransmission = transmissions.Item1;
|
||||
Transmission rejectedTransmission = transmissions.Item2;
|
||||
|
||||
|
||||
// Send rejected payload back for retry
|
||||
if (rejectedTransmission != null)
|
||||
{
|
||||
TelemetryChannelEventSource.Log.TransmissionThrottledWarning(this.ThrottleLimit, attemptedItemsCount, acceptedItemsCount);
|
||||
if (transmission.IsFlushAsyncInProgress)
|
||||
{
|
||||
acceptedTransmission.IsFlushAsyncInProgress = true;
|
||||
rejectedTransmission.IsFlushAsyncInProgress = true;
|
||||
}
|
||||
|
||||
this.SendTransmissionThrottleRejection(rejectedTransmission);
|
||||
}
|
||||
|
||||
|
||||
return acceptedTransmission;
|
||||
}
|
||||
|
||||
|
@ -285,8 +336,8 @@
|
|||
System.Net.WebExceptionStatus.Success,
|
||||
null);
|
||||
this.OnTransmissionSent(new TransmissionProcessedEventArgs(
|
||||
rejectedTransmission,
|
||||
exception,
|
||||
rejectedTransmission,
|
||||
exception,
|
||||
new HttpWebResponseWrapper()
|
||||
{
|
||||
StatusCode = ResponseStatusCodes.ResponseCodeTooManyRequests,
|
||||
|
|
|
@ -27,6 +27,9 @@
|
|||
private bool sizeCalculated;
|
||||
private Random random = new Random();
|
||||
private Timer clearBadFiles;
|
||||
// Storage dequeue is not permitted with FlushAsync
|
||||
// When this counter is set, it blocks storage dequeue
|
||||
private long flushAsyncInProcessCounter = 0;
|
||||
|
||||
public TransmissionStorage()
|
||||
{
|
||||
|
@ -122,7 +125,7 @@
|
|||
|
||||
public virtual Transmission Dequeue()
|
||||
{
|
||||
if (this.folder == null)
|
||||
if (this.folder == null || this.flushAsyncInProcessCounter > 0)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
@ -134,18 +137,21 @@
|
|||
IPlatformFile file = null;
|
||||
try
|
||||
{
|
||||
file = this.GetOldestTransmissionFileOrNull();
|
||||
if (file == null)
|
||||
if (this.flushAsyncInProcessCounter == 0)
|
||||
{
|
||||
return null; // Because there are no more transmission files.
|
||||
}
|
||||
file = this.GetOldestTransmissionFileOrNull();
|
||||
if (file == null)
|
||||
{
|
||||
return null; // Because there are no more transmission files.
|
||||
}
|
||||
|
||||
long fileSize;
|
||||
Transmission transmission = LoadFromTransmissionFile(file, out fileSize);
|
||||
if (transmission != null)
|
||||
{
|
||||
Interlocked.Add(ref this.size, -fileSize);
|
||||
return transmission;
|
||||
long fileSize;
|
||||
Transmission transmission = LoadFromTransmissionFile(file, out fileSize);
|
||||
if (transmission != null)
|
||||
{
|
||||
Interlocked.Add(ref this.size, -fileSize);
|
||||
return transmission;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (UnauthorizedAccessException uae)
|
||||
|
@ -180,6 +186,16 @@
|
|||
}
|
||||
}
|
||||
|
||||
internal void IncrementFlushAsyncCounter()
|
||||
{
|
||||
Interlocked.Increment(ref this.flushAsyncInProcessCounter);
|
||||
}
|
||||
|
||||
internal void DecrementFlushAsyncCounter()
|
||||
{
|
||||
Interlocked.Decrement(ref this.flushAsyncInProcessCounter);
|
||||
}
|
||||
|
||||
private static string GetUniqueFileName(string extension)
|
||||
{
|
||||
string fileName = Guid.NewGuid().ToString("N", CultureInfo.InvariantCulture);
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
using Microsoft.ApplicationInsights.Channel.Implementation;
|
||||
|
||||
|
@ -17,6 +19,8 @@
|
|||
internal readonly TransmissionStorage Storage;
|
||||
private readonly IEnumerable<TransmissionPolicy> policies;
|
||||
private readonly BackoffLogicManager backoffLogicManager;
|
||||
private readonly Task<bool> successTask = Task.FromResult(true);
|
||||
private readonly Task<bool> failedTask = Task.FromResult(false);
|
||||
|
||||
private bool arePoliciesApplied;
|
||||
private int maxSenderCapacity;
|
||||
|
@ -169,10 +173,101 @@
|
|||
|
||||
if (!this.Storage.Enqueue(transmissionGetter))
|
||||
{
|
||||
transmission.IsFlushAsyncInProgress = false;
|
||||
TelemetryChannelEventSource.Log.TransmitterStorageSkipped(transmission.Id);
|
||||
}
|
||||
}
|
||||
|
||||
internal Task<bool> FlushAsync(Transmission transmission, CancellationToken cancellationToken)
|
||||
{
|
||||
TaskStatus taskStatus = TaskStatus.Canceled;
|
||||
if (!cancellationToken.IsCancellationRequested)
|
||||
{
|
||||
transmission.IsFlushAsyncInProgress = true;
|
||||
this.Enqueue(transmission);
|
||||
|
||||
try
|
||||
{
|
||||
this.Storage.IncrementFlushAsyncCounter();
|
||||
taskStatus = this.MoveTransmissionsAndWaitForSender(transmission.FlushAsyncId, cancellationToken);
|
||||
}
|
||||
catch (Exception exp)
|
||||
{
|
||||
taskStatus = TaskStatus.Faulted;
|
||||
TelemetryChannelEventSource.Log.TransmissionFlushAsyncWarning(exp.ToString());
|
||||
}
|
||||
finally
|
||||
{
|
||||
this.Storage.DecrementFlushAsyncCounter();
|
||||
}
|
||||
}
|
||||
|
||||
Task<bool> flushTaskStatus = null;
|
||||
if (taskStatus == TaskStatus.Canceled)
|
||||
{
|
||||
flushTaskStatus = TaskEx.FromCanceled<bool>(cancellationToken);
|
||||
}
|
||||
else if (taskStatus == TaskStatus.RanToCompletion && transmission.IsFlushAsyncInProgress)
|
||||
{
|
||||
flushTaskStatus = this.successTask;
|
||||
}
|
||||
else
|
||||
{
|
||||
flushTaskStatus = this.failedTask;
|
||||
}
|
||||
|
||||
return flushTaskStatus;
|
||||
}
|
||||
|
||||
internal Task<bool> MoveTransmissionsAndWaitForSender(CancellationToken cancellationToken)
|
||||
{
|
||||
if (cancellationToken.IsCancellationRequested)
|
||||
{
|
||||
return TaskEx.FromCanceled<bool>(cancellationToken);
|
||||
}
|
||||
|
||||
TaskStatus senderStatus = TaskStatus.Canceled;
|
||||
bool isStorageEnqueueSuccess = false;
|
||||
|
||||
try
|
||||
{
|
||||
this.Storage.IncrementFlushAsyncCounter();
|
||||
isStorageEnqueueSuccess = MoveTransmissions(this.Buffer.Dequeue, this.Storage.Enqueue, this.Buffer.Size, cancellationToken);
|
||||
TelemetryChannelEventSource.Log.MovedFromBufferToStorage();
|
||||
senderStatus = this.Sender.WaitForPreviousTransmissionsToComplete(cancellationToken).ConfigureAwait(false).GetAwaiter().GetResult();
|
||||
}
|
||||
catch (Exception exp)
|
||||
{
|
||||
senderStatus = TaskStatus.Faulted;
|
||||
TelemetryChannelEventSource.Log.TransmissionFlushAsyncWarning(exp.ToString());
|
||||
}
|
||||
finally
|
||||
{
|
||||
this.Storage.DecrementFlushAsyncCounter();
|
||||
}
|
||||
|
||||
if (senderStatus == TaskStatus.Canceled)
|
||||
{
|
||||
return TaskEx.FromCanceled<bool>(cancellationToken);
|
||||
}
|
||||
|
||||
return senderStatus == TaskStatus.RanToCompletion && isStorageEnqueueSuccess ? this.successTask : this.failedTask;
|
||||
}
|
||||
|
||||
internal TaskStatus MoveTransmissionsAndWaitForSender(long transmissionFlushAsyncId, CancellationToken cancellationToken)
|
||||
{
|
||||
var isStorageEnqueueSuccess = MoveTransmissions(this.Buffer.Dequeue, this.Storage.Enqueue, this.Buffer.Size, cancellationToken);
|
||||
TelemetryChannelEventSource.Log.MovedFromBufferToStorage();
|
||||
var senderStatus = this.Sender.WaitForPreviousTransmissionsToComplete(transmissionFlushAsyncId, cancellationToken).ConfigureAwait(false).GetAwaiter().GetResult();
|
||||
|
||||
if (!isStorageEnqueueSuccess && senderStatus != TaskStatus.Canceled)
|
||||
{
|
||||
return TaskStatus.Faulted;
|
||||
}
|
||||
|
||||
return senderStatus;
|
||||
}
|
||||
|
||||
internal virtual void ApplyPolicies()
|
||||
{
|
||||
this.arePoliciesApplied = true;
|
||||
|
@ -240,6 +335,31 @@
|
|||
while (transmissionMoved);
|
||||
}
|
||||
|
||||
private static bool MoveTransmissions(Func<Transmission> dequeue, Func<Func<Transmission>, bool> enqueue, long size, CancellationToken cancellationToken)
|
||||
{
|
||||
bool transmissionMoved = false;
|
||||
do
|
||||
{
|
||||
if (cancellationToken.IsCancellationRequested)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
var transmission = dequeue();
|
||||
if (transmission == null)
|
||||
{
|
||||
transmissionMoved = true;
|
||||
break;
|
||||
}
|
||||
|
||||
transmissionMoved = enqueue(() => transmission);
|
||||
size -= transmission.Content.Length;
|
||||
}
|
||||
while (transmissionMoved && size > 0);
|
||||
|
||||
return transmissionMoved;
|
||||
}
|
||||
|
||||
private void ApplyPoliciesIfAlreadyApplied()
|
||||
{
|
||||
if (this.arePoliciesApplied)
|
||||
|
|
|
@ -1,94 +0,0 @@
|
|||
namespace Microsoft.ApplicationInsights
|
||||
{
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
#if NET452 || NET46
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Threading;
|
||||
#endif
|
||||
|
||||
internal class PreciseTimestamp
|
||||
{
|
||||
/// <summary>
|
||||
/// Multiplier to convert Stopwatch ticks to TimeSpan ticks.
|
||||
/// </summary>
|
||||
internal static readonly double StopwatchTicksToTimeSpanTicks = (double)TimeSpan.TicksPerSecond / Stopwatch.Frequency;
|
||||
|
||||
#if NET452 || NET46
|
||||
private static readonly Timer SyncTimeUpdater;
|
||||
private static TimeSync timeSync = new TimeSync();
|
||||
|
||||
[SuppressMessage("Microsoft.Performance", "CA1810:InitializeReferenceTypeStaticFieldsInline", Justification = "Enforcing static fields initialization.")]
|
||||
static PreciseTimestamp()
|
||||
{
|
||||
SyncTimeUpdater = InitializeSyncTimer();
|
||||
}
|
||||
#endif
|
||||
|
||||
/// <summary>
|
||||
/// Returns high resolution (1 DateTime tick) current UTC DateTime.
|
||||
/// </summary>
|
||||
public static DateTimeOffset GetUtcNow()
|
||||
{
|
||||
#if NET452 || NET46
|
||||
// DateTime.UtcNow accuracy on .NET Framework is ~16ms, this method
|
||||
// uses combination of Stopwatch and DateTime to calculate accurate UtcNow.
|
||||
|
||||
var tmp = timeSync;
|
||||
|
||||
// Timer ticks need to be converted to DateTime ticks
|
||||
long dateTimeTicksDiff = (long)((Stopwatch.GetTimestamp() - tmp.SyncStopwatchTicks) * StopwatchTicksToTimeSpanTicks);
|
||||
|
||||
// DateTime.AddSeconds (or Milliseconds) rounds value to 1 ms, use AddTicks to prevent it
|
||||
return tmp.SyncUtcNow.AddTicks(dateTimeTicksDiff);
|
||||
#else
|
||||
return DateTimeOffset.UtcNow;
|
||||
#endif
|
||||
}
|
||||
|
||||
#if NET452 || NET46
|
||||
private static void Sync()
|
||||
{
|
||||
// wait for DateTime.UtcNow update to the next granular value
|
||||
Thread.Sleep(1);
|
||||
timeSync = new TimeSync();
|
||||
}
|
||||
|
||||
private static Timer InitializeSyncTimer()
|
||||
{
|
||||
Timer timer;
|
||||
// Don't capture the current ExecutionContext and its AsyncLocals onto the timer causing them to live forever
|
||||
bool restoreFlow = false;
|
||||
try
|
||||
{
|
||||
if (!ExecutionContext.IsFlowSuppressed())
|
||||
{
|
||||
ExecutionContext.SuppressFlow();
|
||||
restoreFlow = true;
|
||||
}
|
||||
|
||||
// fire timer every 2 hours, Stopwatch is not very precise over long periods of time,
|
||||
// so we need to correct it from time to time
|
||||
// https://docs.microsoft.com/en-us/windows/desktop/SysInfo/acquiring-high-resolution-time-stamps
|
||||
timer = new Timer(s => { Sync(); }, null, 0, 7200000);
|
||||
}
|
||||
finally
|
||||
{
|
||||
// Restore the current ExecutionContext
|
||||
if (restoreFlow)
|
||||
{
|
||||
ExecutionContext.RestoreFlow();
|
||||
}
|
||||
}
|
||||
|
||||
return timer;
|
||||
}
|
||||
|
||||
private class TimeSync
|
||||
{
|
||||
public readonly DateTimeOffset SyncUtcNow = DateTimeOffset.UtcNow;
|
||||
public readonly long SyncStopwatchTicks = Stopwatch.GetTimestamp();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
|
@ -4,16 +4,18 @@
|
|||
using System.ComponentModel;
|
||||
using System.Diagnostics;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.ApplicationInsights.Channel;
|
||||
using Microsoft.ApplicationInsights.Common;
|
||||
using Microsoft.ApplicationInsights.Extensibility;
|
||||
using Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implementation;
|
||||
using TelemetryBuffer = Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.Implementation.TelemetryBuffer;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a communication channel for sending telemetry to Application Insights via HTTP/S.
|
||||
/// </summary>
|
||||
public sealed class ServerTelemetryChannel : ITelemetryChannel, ITelemetryModule
|
||||
public sealed class ServerTelemetryChannel : ITelemetryChannel, IAsyncFlushable, ITelemetryModule
|
||||
{
|
||||
internal TelemetrySerializer TelemetrySerializer;
|
||||
internal TelemetryBuffer TelemetryBuffer;
|
||||
|
@ -326,6 +328,24 @@
|
|||
this.TelemetryBuffer.FlushAsync().ConfigureAwait(false).GetAwaiter().GetResult(); // Don't use Task.Wait() because it wraps the original exception in an AggregateException.
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Asynchronously flushes the telemetry buffer.
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// Returns true when telemetry data is transferred out of process (application insights server or local storage) and are emitted before the flush invocation.
|
||||
/// Returns false when transfer of telemetry data to server has failed with non-retriable http status code.
|
||||
/// </returns>
|
||||
public Task<bool> FlushAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
if (!this.isInitialized)
|
||||
{
|
||||
TelemetryChannelEventSource.Log.StorageNotInitializedError();
|
||||
}
|
||||
|
||||
TelemetryChannelEventSource.Log.TelemetryChannelFlushAsync();
|
||||
return cancellationToken.IsCancellationRequested ? TaskEx.FromCanceled<bool>(cancellationToken) : this.TelemetryBuffer.FlushAsync(cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Initialize method is called after all configuration properties have been loaded from the configuration.
|
||||
/// </summary>
|
||||
|
|
|
@ -44,5 +44,4 @@
|
|||
<PackageReference Include="System.IO.FileSystem.AccessControl" Version="4.7.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="..\Common\Common\Common.projitems" Label="Shared" />
|
||||
</Project>
|
31
CHANGELOG.md
31
CHANGELOG.md
|
@ -1,7 +1,32 @@
|
|||
# Changelog
|
||||
# Changelog
|
||||
|
||||
## VNext
|
||||
|
||||
|
||||
|
||||
## Version 2.18.0-beta1
|
||||
- [Fix PropertyFetcher error when used with multiple types](https://github.com/microsoft/ApplicationInsights-dotnet/issues/2194)
|
||||
- [New Task Based Flush API - FlushAsync](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1743)
|
||||
- [End support for net45 and net46 in AspNetCore](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2252)
|
||||
|
||||
## Version 2.17.0
|
||||
- [Fix: telemetry parent id when using W3C activity format in TelemetryDiagnosticSourceListener](https://github.com/microsoft/ApplicationInsights-dotnet/issues/2142)
|
||||
- [Add ingestion response duration for transmission to data delivery status - TransmissionStatusEventArgs](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2157)
|
||||
- [Update default Profiler and Snapshot Debugger endpoints](https://github.com/microsoft/ApplicationInsights-dotnet/issues/2166)
|
||||
|
||||
## Version 2.17.0-beta1
|
||||
- [Fix: Missing Dependencies when using Microsoft.Data.SqlClient v2.0.0](https://github.com/microsoft/ApplicationInsights-dotnet/issues/2032)
|
||||
- [Add RoleName as a header with Ping Requests to QuickPulse.](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2113)
|
||||
- [QuickPulseTelemetryModule takes hints from the service regarding the endpoint to ping and how often to ping it](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2120)
|
||||
- [Upgrade Log4Net to version 2.0.10 to address CVE-2018-1285](https://github.com/microsoft/ApplicationInsights-dotnet/issues/2149)
|
||||
|
||||
## Version 2.16.0
|
||||
- [QuickPulseTelemetryModule and MonitoringDataPoint have a new Cloud Role Name field for sending with ping and post requests to QuickPulse Service.](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2100)
|
||||
- [Upgrade to System.Diagnostics.DiagnosticSource v5.0.0](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1960)
|
||||
|
||||
## Version 2.16.0-beta1
|
||||
- [ILogger LogError and LogWarning variants write exception `ExceptionStackTrace` when `TrackExceptionsAsExceptionTelemetry` flag is set to `false`](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2065)
|
||||
- [Upgrade to System.Diagnostics.DiagnosticSource v5.0.0-rc.2.20475.5](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2091)
|
||||
- [The `{OriginalFormat}` field in ILogger will be emitted as `OriginalFormat` with the braces removed](https://github.com/microsoft/ApplicationInsights-dotnet/pull/2071)
|
||||
- ApplicationInsightsLoggerProvider populates structured logging key/values irrespective of whether Scopes are enabled or not.
|
||||
|
||||
|
@ -41,11 +66,11 @@
|
|||
|
||||
## Version 2.14.0-beta5
|
||||
- [Stop collecting EventCounters from Microsoft.AspNetCore.Hosting](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1759)
|
||||
- [Enable ILogger provider for apps targetting .NET Framework](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1312)
|
||||
- [Enable ILogger provider for apps targeting .NET Framework](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1312)
|
||||
|
||||
## Version 2.14.0-beta4
|
||||
- [Fix: SQL dependency names are bloated when running under the .NET Framework and using Microsoft.Data.SqlClient package](https://github.com/microsoft/ApplicationInsights-dotnet/pull/1723)
|
||||
- [Fix: Disabling HeartBeats in Asp.Net Core projects causes Error traces every heart beat interval (15 minutes defualt)](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1681)
|
||||
- [Fix: Disabling HeartBeats in Asp.Net Core projects causes Error traces every heart beat interval (15 minutes default)](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1681)
|
||||
- [Standard Metric extractor (Exception,Trace) populates all standard dimensions.](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1738)
|
||||
- [Add an explicit reference to System.Memory v4.5.4. This fixes a bug in System.Diagnostics.DiagnosticSource. We will remove this dependency when DiagnosticSource is re-released.](https://github.com/microsoft/ApplicationInsights-dotnet/issues/1707)
|
||||
|
||||
|
|
|
@ -4,13 +4,19 @@
|
|||
<PropertyGroup>
|
||||
<!-- USE THESE VARIABLES TO CONTROL THE BUILD TASKS.-->
|
||||
<Internal_Logging>false</Internal_Logging>
|
||||
|
||||
<!-- This is used to disable some build properties. -->
|
||||
<IsExamplesSolution Condition="'$(SolutionName)' == 'Examples' ">true</IsExamplesSolution>
|
||||
</PropertyGroup>
|
||||
|
||||
<Target Name="Info_InternalSettings" BeforeTargets="Build">
|
||||
<Message Text="Internal_Logging is set to $(Internal_Logging)." Importance="high"/>
|
||||
<Message Text="Directory.Build.props: Internal_Logging is set to $(Internal_Logging)." Importance="high"/>
|
||||
</Target>
|
||||
|
||||
<Target Name="Info_DirectoryBuildProps" BeforeTargets="Build" Condition=" $(Internal_Logging) == 'true' ">
|
||||
<Message Text="Info: SolutionName: $(SolutionName)." Importance="high"/>
|
||||
<Message Text="Info: ProjectName: $(MSBuildProjectName)." Importance="high"/>
|
||||
<Message Text="Info: TargetFramework: $(TargetFramework)." Importance="high"/>
|
||||
<Message Text="Info: Directory.Build.props imported by $(MSBuildProjectName)." Importance="high"/>
|
||||
</Target>
|
||||
|
||||
|
|
|
@ -7,8 +7,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.ApplicationInsigh
|
|||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TelemetryChannel", "BASE\src\ServerTelemetryChannel\TelemetryChannel.csproj", "{C30A7EB8-A86C-49EE-927E-7D9E03572E82}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Common.Base", "BASE\src\Common\Common\Common.Base.shproj", "{936AF739-4297-4016-9D70-4280042709BE}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DependencyCollector", "WEB\Src\DependencyCollector\DependencyCollector\DependencyCollector.csproj", "{96A6E04E-CEDA-4C30-8ECA-48113382AFBA}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EventCounterCollector", "WEB\Src\EventCounterCollector\EventCounterCollector\EventCounterCollector.csproj", "{13335EB8-3936-407A-9363-1C428318BEA8}"
|
||||
|
@ -171,7 +169,6 @@ Global
|
|||
LOGGING\test\CommonTestShared\CommonTestShared.projitems*{7a903abd-d7fb-4610-aed8-32eb2cbaeebf}*SharedItemsImports = 5
|
||||
LOGGING\test\Shared\Adapters.Shared.Tests.projitems*{7a903abd-d7fb-4610-aed8-32eb2cbaeebf}*SharedItemsImports = 5
|
||||
WEB\Src\Common\Common.projitems*{7b5d95ee-50ee-4222-a03c-fae5905b3dfd}*SharedItemsImports = 5
|
||||
BASE\src\Common\Common\Common.projitems*{936af739-4297-4016-9d70-4280042709be}*SharedItemsImports = 13
|
||||
LOGGING\test\CommonTestShared\CommonTestShared.projitems*{93a35062-6aa4-4778-9769-428a942adcf9}*SharedItemsImports = 5
|
||||
LOGGING\test\Shared\Adapters.Shared.Tests.projitems*{93a35062-6aa4-4778-9769-428a942adcf9}*SharedItemsImports = 5
|
||||
WEB\Src\Common\Common.projitems*{96a6e04e-ceda-4c30-8eca-48113382afba}*SharedItemsImports = 5
|
||||
|
@ -184,7 +181,6 @@ Global
|
|||
NETCORE\src\Shared\Shared.projitems*{ac399f09-b465-4cfd-8d82-f1d1c5c9347e}*SharedItemsImports = 5
|
||||
LOGGING\test\CommonTestShared\CommonTestShared.projitems*{b1650e9b-6764-4dc0-8c71-96f0ff335c80}*SharedItemsImports = 5
|
||||
LOGGING\test\Shared\Adapters.Shared.Tests.projitems*{b1650e9b-6764-4dc0-8c71-96f0ff335c80}*SharedItemsImports = 5
|
||||
BASE\src\Common\Common\Common.projitems*{c30a7eb8-a86c-49ee-927e-7d9e03572e82}*SharedItemsImports = 5
|
||||
LOGGING\test\CommonTestShared\CommonTestShared.projitems*{ca21ed5e-ab4e-4277-a28d-e8840e92833f}*SharedItemsImports = 5
|
||||
LOGGING\test\Shared\Adapters.Shared.Tests.projitems*{ca21ed5e-ab4e-4277-a28d-e8840e92833f}*SharedItemsImports = 5
|
||||
WEB\Src\Common\Common.projitems*{ccab7a34-8dc5-4a6f-b637-46ceba93c687}*SharedItemsImports = 13
|
||||
|
@ -192,7 +188,6 @@ Global
|
|||
WEB\Src\PerformanceCollector\Perf.Shared.NetStandard\Perf.Shared.NetStandard.projitems*{d13c3ec7-b300-4158-9054-216156b203be}*SharedItemsImports = 13
|
||||
NETCORE\src\Shared\Shared.projitems*{d56f2979-d6bc-4ef2-bb9b-4077b3290599}*SharedItemsImports = 13
|
||||
WEB\Src\Common\Common.projitems*{deeaf599-83f9-4a05-add6-f612cdabe570}*SharedItemsImports = 5
|
||||
BASE\src\Common\Common\Common.projitems*{e3d160e8-7f8c-416f-946f-6fdfc6787461}*SharedItemsImports = 5
|
||||
BASE\Test\TestFramework\Shared\TestFramework.Shared.projitems*{f76c6cbd-29b0-4564-bdcb-c969f8fec136}*SharedItemsImports = 13
|
||||
LOGGING\test\Shared\Adapters.Shared.Tests.projitems*{fa775630-7917-4a99-a78c-fba46edf685c}*SharedItemsImports = 13
|
||||
WEB\Src\TestFramework\Shared\TestFramework.Shared.projitems*{fac049e4-7011-45ff-bd06-69aca28921e8}*SharedItemsImports = 5
|
||||
|
|
|
@ -16,7 +16,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".Solution Items", ".Solutio
|
|||
..\CHANGELOG.md = ..\CHANGELOG.md
|
||||
CodeCov.ps1 = CodeCov.ps1
|
||||
Directory.Build.props = Directory.Build.props
|
||||
NuGet.Config = NuGet.Config
|
||||
README.md = README.md
|
||||
EndProjectSection
|
||||
EndProject
|
||||
|
@ -84,7 +83,6 @@ Global
|
|||
test\CommonTestShared\CommonTestShared.projitems*{d46fdab7-289d-4990-8289-c0b0fdb3b8ab}*SharedItemsImports = 5
|
||||
test\Shared\Adapters.Shared.Tests.projitems*{d46fdab7-289d-4990-8289-c0b0fdb3b8ab}*SharedItemsImports = 5
|
||||
src\CommonShared\CommonShared.projitems*{e3766dd1-f376-43f8-b242-6cf06e186179}*SharedItemsImports = 5
|
||||
..\BASE\src\Common\Common\Common.projitems*{ed1e83b0-8656-4e2d-bb8b-158a84c45477}*SharedItemsImports = 5
|
||||
test\Shared\Adapters.Shared.Tests.projitems*{fa775630-7917-4a99-a78c-fba46edf685c}*SharedItemsImports = 13
|
||||
test\CommonTestShared\CommonTestShared.projitems*{fe9b0be5-6ddd-41a2-adab-fdae3017fe47}*SharedItemsImports = 5
|
||||
test\Shared\Adapters.Shared.Tests.projitems*{fe9b0be5-6ddd-41a2-adab-fdae3017fe47}*SharedItemsImports = 5
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<!-- This file belongs into the EnlistmentRoot folder next to EnlistmentRoot.marker. -->
|
||||
<!-- See the comments in Directory.Build.props for explanations. -->
|
||||
<config>
|
||||
<add key="repositoryPath" value="..\..\packages" />
|
||||
</config>
|
||||
<packageSources>
|
||||
<add key="nuget.org" value="https://www.nuget.org/api/v2/" />
|
||||
</packageSources>
|
||||
</configuration>
|
Двоичные данные
LOGGING/NuGet.exe
Двоичные данные
LOGGING/NuGet.exe
Двоичный файл не отображается.
|
@ -1,12 +1,12 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="$(PropsRoot)\Product.props" />
|
||||
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>netstandard2.0;net452</TargetFrameworks>
|
||||
<RootNamespace>Microsoft.ApplicationInsights.DiagnosticSourceListener</RootNamespace>
|
||||
<AssemblyName>Microsoft.ApplicationInsights.DiagnosticSourceListener</AssemblyName>
|
||||
</PropertyGroup>
|
||||
|
||||
|
||||
<PropertyGroup>
|
||||
<!--Nupkg properties-->
|
||||
<PackageId>Microsoft.ApplicationInsights.DiagnosticSourceListener</PackageId>
|
||||
|
@ -22,7 +22,7 @@
|
|||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\BASE\src\Microsoft.ApplicationInsights\Microsoft.ApplicationInsights.csproj" />
|
||||
<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="5.0.0-rc.1.20451.14" />
|
||||
<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="5.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
<PrivateAssets>All</PrivateAssets>
|
||||
</PackageReference>
|
||||
<ProjectReference Include="..\..\..\BASE\src\Microsoft.ApplicationInsights\Microsoft.ApplicationInsights.csproj" />
|
||||
<PackageReference Include="log4net" Version="2.0.8" />
|
||||
<PackageReference Include="log4net" Version="2.0.12" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
</ItemGroup>
|
||||
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.Diagnostics.Tracing.TraceEvent" Version="2.0.42" />
|
||||
<ProjectReference Include="..\..\..\BASE\src\Microsoft.ApplicationInsights\Microsoft.ApplicationInsights.csproj" />
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
</ItemGroup>
|
||||
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="2.2.0" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.4" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.2.3" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
|
||||
</ItemGroup>
|
||||
|
||||
|
|
Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше
Загрузка…
Ссылка в новой задаче