Comments (5)
Hi,
Two questions:
- Do you use any telemetry modules or initializers beyond what the library has in it? Check your
ApplicationInsights.config
- When you use the AI directly, without this lib, do you get 300 req/s? Do you get the same telemetry?
from applicationinsights-owinextensions.
- I am using just the default
ApplicationInsights.config
file, haven't added or removed any Initializers
<TelemetryInitializers>
<Add Type="Microsoft.ApplicationInsights.DependencyCollector.HttpDependenciesParsingTelemetryInitializer, Microsoft.AI.DependencyCollector"/>
<Add Type="Microsoft.ApplicationInsights.WindowsServer.AzureRoleEnvironmentTelemetryInitializer, Microsoft.AI.WindowsServer"/>
<Add Type="Microsoft.ApplicationInsights.WindowsServer.AzureWebAppRoleEnvironmentTelemetryInitializer, Microsoft.AI.WindowsServer"/>
<Add Type="Microsoft.ApplicationInsights.WindowsServer.BuildInfoConfigComponentVersionTelemetryInitializer, Microsoft.AI.WindowsServer"/>
<Add Type="Microsoft.ApplicationInsights.Web.WebTestTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="Microsoft.ApplicationInsights.Web.SyntheticUserAgentTelemetryInitializer, Microsoft.AI.Web">
<Filters>search|spider|crawl|Bot|Monitor|AlwaysOn</Filters>
</Add>
<Add Type="Microsoft.ApplicationInsights.Web.ClientIpHeaderTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="Microsoft.ApplicationInsights.Web.OperationNameTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="Microsoft.ApplicationInsights.Web.OperationCorrelationTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="Microsoft.ApplicationInsights.Web.UserTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="Microsoft.ApplicationInsights.Web.AuthenticatedUserIdTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="Microsoft.ApplicationInsights.Web.AccountIdTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="Microsoft.ApplicationInsights.Web.SessionTelemetryInitializer, Microsoft.AI.Web"/>
<Add Type="ApplicationInsights.OwinExtensions.OperationIdTelemetryInitializer, ApplicationInsights.OwinExtensions"/>
</TelemetryInitializers>
I am still getting AI telemetry without the library, I wasn't using any of the features the library gives yet but just installing it and adding it to my request pipeline seemed to have the said performance impact. I am not sure if its identical telemetry with and without the library.
It was concerning though that just installing the library had such a big performance impact.
from applicationinsights-owinextensions.
Ok, follow up questions:
- What is your performance test doing exactly? What endpoints are called and what do they do (simple hello world or actual application code that calls a db, etc.)
- You need to verify if you get the same telemetry and 300 req/s when not using the lib. Do you get requests and dependencies?
from applicationinsights-owinextensions.
- Yeah its a simple hello world type of test, just returns a string, no resources like db etc.
public IHttpActionResult Get()
{
return Ok("Hello World");
}
- Yes I am getting telemetry, requests, dependencies, exceptions etc
from applicationinsights-owinextensions.
Using a simple "Hello world" may be the reason you see this performance drop. The overhead of creating telemetry is significant compared to super fast operation of returning a string constant. If you ran another test with more real-life endpoint, you'd probably experience less relative perf drop.
That being said, I should also mention the lib was never optimized for performance. I also do not plan any work in this field, because Owin is now superseded with ASP.NET Core pipeline and the problems this lib solved are not present there.
from applicationinsights-owinextensions.
Related Issues (20)
- Add paramters from OwinContext? HOT 4
- When to remove the optional TelemetryInitializers HOT 2
- HTTP 500s not being logged HOT 4
- Support for DependencyCollector? HOT 3
- Assembly Not Signed HOT 3
- Under Load we see this exception HOT 12
- Service Fabric Owin OperationIdContext is null HOT 3
- Support for getContextPropertiesAsync HOT 5
- Support HTTP Protocol for Correlation HOT 4
- Set requestId and parentId to correlate dependencies to requests in the azure portal HOT 7
- System.OperationCanceledException and System.ObjectDisposedException HOT 8
- Could not install package 'ApplicationInsights.OwinExtensions 0.6.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.5.2' HOT 2
- System.Threading.Tasks.TaskCancelledException: HOT 7
- ObjectDisposedException at ApplicationInsights.OwinExtensions.HttpRequestTrackingMiddleware HOT 11
- How to set the user context of RequestTelemetry HOT 1
- Nuget package is missing strong name HOT 1
- operation_Name Missing From Custom Event Data HOT 4
- ApplicationInsights.OwinExtensions.HttpRequestTrackingMiddleware+<Invoke>d__4.MoveNext HOT 1
- Conflicting version of Microsoft.Owin HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from applicationinsights-owinextensions.