“Hey, you there? The site isn’t loading, and we have no ***** idea whats happening, can you help???”
-A post-launch IM from a client
What is LeanSentry?
It is a realtime diagnostic service for web applications on the Microsoft web platform.
LeanSentry uses expert troubleshooting techniques to automatically solve common errors and performance problems for production IIS/ASP.NET apps, so you don’t have to waste time doing it.
Why did you build it?
We built LeanSentry after years of helping developers and ops of both large and small web apps work through the same issues over and over. Application bugs, crashes, hangs, slow requests, performance regressions. You know, all the stuff that takes up most of your precious time when running production apps, preventing you from focusing on actually building your product.
And even though we helped build the IIS/ASP.NET platform, we often found it challenging to solve these problems ourselves given the realities of limited access, missing data, and complexity of the web stack.
We realized that this is a job software should handle. So, we set out to build a service that:
Ok, so how does it work?
It works like this:
Step 1: You download a small monitoring service to install in your environment.
Our wizard walks you through the few steps you need depending on your environment (e.g. Windows Azure, Amazon EC2, or a dedicated server).
||We built the monitoring service so it could run on a separate VM in your environment, and be completely sandboxed away from your production servers.
This means virtually 0 impact on your production systems AND no third party software to install on them.
Once installed, the LeanSentry Monitoring service begins to monitor your servers using a variety of time-tested Windows Server protocols, including IIS log files, currently executing requests, Event Logs, Performance Counters, and so on.
Step 2: Minutes later, you can see your data in the LeanSentry dashboard.
|Immediately, you get a complete picture of your servers and application, including every request served, every error, every URL, every server.
We intentionally kept things simple at the top level, so you can decide quickly to dive in or not. But once you do, the gory details are at most 2 clicks away.
Step 3: LeanSentry begins to send you alerts / expert insights.
We’ll alert you about any problems in your application, AND periodically send you suggestions for how to improve your application health and performance.
Together with automatic problem troubleshooters, the insight emails help us shift the troubleshooting burden from you, and let you focus more on improving your application with our guidance.
Making it accessible to everyone …
When we started, our vision was to create a service that everyone on the Microsoft platform will use to spend less time troubleshooting, and more time building better apps. So, we set out to make this service affordable to everyone, whether you are running a 100 server megasite or hosting a hobby website in your garage.
To do this, we worked hard to build a very efficient data processing architecture on top of Windows Azure that brings our costs down while allowing us to crunch and store tons of troubleshooting data.
Bottom line, we wanted to make LeanSentry a no-brainer decision. Our math goes like this: if you work in OPs, and we saved you even 5 minutes a day of hunting for some logfiles, you already paid for LeanSentry (now, we think we’ll be saving you close to 2-3 hours a day).
Right now, we are also offering a great launch discount AND giving the Advanced version of LeanSentry (the one that automatically diagnoses the problems for you) for free for 2 months.
So come try it out, and think about what you will do with your free 3 hours a day.
Go check out our totally live demo, and set up your free trial to see what LeanSentry will give you in your own application.
Mike Volodarsky and the LeanSentry Team
LeanSentry is now publicly available! | LeanSentry Blog
does LeanSentry work on Windows Server 2003?
Hi there, LeanSentry was made specifically for Windows Vista and Windows Server 2008 and above, because it relies on the new diagnostic capabilities not present in Windows Server 2003.
We are planning a lightweight version of LeanSentry that can provide some monitoring for Windows Server 2003 in the future.
But, in the meantime, when you upgrade to Windows Server 2008/2012, definitely check us out!
Nice answer! I was actually going to ask you the same question. I hope that this software will be available to older versions of Windows Server so that it can be more accessible.
Looks interesting. One question though, if you provide cpu cost of functions in the application, you”ve gotta be loading a profiler? Or how do you do it.
And who was the client with the busted launch? Just curious.
@Anonymous. Hehe, I can””t say! In my experience though most successful sites find themselves in this situation sooner or later.
Its just to hard to anticipate what happens in production when real users start using your app, when your hardware changes, you bring more instances online, etc.
So I guess the whole idea is that you cant really just use tools when a problem happens, you should continuously monitor to catch any problems as they develop … or see when performance takes a turn for the worse.
@TN. We actually don”t load a profiler or debugger into your application! Thats one of the main ways we reduce production overhead of monitoring and avoid destablizing your app.
We use a completely external ETW-based profiler which collects CPU profiling information in the background without interfering with your processes. Credit goes to Vance Morrison @ Microsoft who wrote some of the libraries we are using internally, as well as lots of hard work to get it working just right. I”ll be sure to blog about it some time.
How does this work when the application is running on a web-farm and scattered across multiple tiers?
Is it required we send data to the cloud as the ”backend”? Can this be a service installed on-prem?
We can monitor all nodes in a web farm pretty well, and do a lot of work to meaningfully aggregate data for an application across all member servers/instances.
We are working on adding the different tiers of an application into our pipeline still, so more on this coming over the next few months. Right now, we are primarily focused on the web tier, with some database tier monitoring at the application level (e.g. SQL queries).
Re: sending data to backend, yes, we currently require this since all of our analysis is built out using cloud infrastructure. People who want to use us have to be comfortable with that, like with any SAAS APM product. We are looking into creating an on-premises version of LeanSentry in the future, but no clear plan yet.
I will say though that we do a lot to make LeanSentry lightweight and secure, including not loading any code into your app processes, collecting only non-sensitive data, and insuring transport and storage security throughout the stack. More on that here: https://www.leansentry.com/Howitworks.