TAG | .NET Monitoring
I received another X-Ray from Covis Software GmbH in Germany who provides CRM solutions. They’ve been managing their .NET application performance with AppDynamics Pro for several months now in production. In the below X-Ray (as documented by the customer), Covis were able to rapidly identify a poor performing remote web service call which was impacting their application, business transactions and end user experience of their customers.
A week has passed since we officially launched our free version of AppDynamics Lite for .NET to the public, and so far its been garnering attention and positive reviews from the APM community. For example, someone from a major Canadian telecommunications company downloaded .NET Lite and informed us on how quickly they were able to gain value from using it.
We’re equally impressed and delighted that they’re heavily pushing our Lite product internally and on the path to becoming an AppDynamics Pro user. Even though we hear praises from customers often, it’s always satisfying to hear about our products delivering real, quantifiable results in under 24 hours.
We also received this blog review from another .NET Lite user just the other day. They deployed AppDynamics Lite to monitor their overall site performance called Everymarket.ru – an open e-commerce market that connects resellers with a community of buyers for products that are discounted when purchased in bulk. The users of Lite are also able to monitor the outbound web service calls to VK.com which is Russia’s version of Facebook to ensure outbound requests to the social site are responsive.
EveryMarket.ru Describes the Entire .NET Lite Experience
AppDynamics Lite looks nice and catchy. Right after installation we started to obtain information about our application and performance metrics immediately. The following screenshot nicely illustrates that there are some hidden errors occurring for three of the business transactions in the following list. We have actually seen these errors before, but it was quite hard to estimate their frequency and severity. Now it can be easily understood from this view here and on the Business Transactions view, though it is limited to only 20 transactions.
The first thing I did after the installation, I decreased the snapshot frequency from 100 to 50. It was more out of curiosity without much purpose. It’s nice to see the historical information about errors and requests presented on one screen. We then changed the default sorting “By timestamp” in order to see errors as they happened by recency.
In this case, the error in question didn’t involve a SQL query. The Bad Request details were quite simple and repeated what we could find in a set of stack trace logs. However, the main advantage for us is that AppDynamics can catch these errors and notify our team immediately by email. Once inside the tool, the information is well organized for faster root cause diagnosis.
In general I found it very useful that AppDynamics operates with business transaction logic. The semantic of transaction is easy to understand and one can have a detailed overview of a precise transaction. And of course the “red bar” matters. In case of many errors it is straightforward that “more red” means “look first”.
From two examples you can see that our .NET Lite users are able to install and run our product with ease while gaining insight into their application’s health and performance bottlenecks to improve upon for faster runtime. If you have a success story using AppDynamics Lite, please let us know!
Link to this post:
If you’d asked me 12 months ago whether I’d be sat in a luxury hotel, on the spanish island of Mallorca, hosting AppDynamics first ever EMEA customer conference with 50+ attendees. I would have kindly asked you to put your crack pipe down. Yet, over the past few days that’s exactly what we did. Due to the phenomenal growth of AppDynamics in 2011, we felt it was only right to host our first EMEA customer conference–”App Jam.” Here’s a write-up of the event along with some media to help you understand the experience.
Welcome to App Jam:
App Jam kicked off in style with an intro video. Our CEO Jyoti Bansal then took to the stage, welcomed the audience, and explained the reasoning behind App Jam. “Our customers are passionate – they need a community that harnesses that vision,” said Jyoti. “We want to bring the best minds together, and help you achieve the best possible deployments and benefits from AppDynamics.” The key principles of App Jam were for customers to Share, Learn, Guide and Jam with each other over two days.
Jyoti then talked about his experiences as Chief Architect at Wily Technology, and why first generation APM was no longer serving the needs of customers in today’s modern distributed applications. Jyoti then talked about the core design principles and cultural values behind AppDynamics as a company, specifically outlining the importance of solving real problems, and why it’s critical for AppDynamics to make our customers successful. “When you buy software from AppDynamics, you’re getting a partner, not just software.”
Jyoti then finished with a call to action for attendees, asking them to be very open with feedback “Tell us what you need, help us solve your real problems – we want to become the undisputed leader in APM and can’t do this without you.”
Using AppDynamics in a highly distributed Java System Z environment:
This session was lead by Stephan Ehlen, Systems Architect at Provinzial and Mirko Novakovic, CEO of Codecentric AG. Running Java on System Z might sound like a complex, expensive and unnatural proposition for many. For Provinzial, Application Performance Management (APM) played a critical role in ensuring their applications and business was able to perform on System Z. Stephan talked about the limitations and challenges he faced around ensuring application performance and scalability.
Mirko then gave a great insight into the common problems and resource constraints of using Java on System Z, specifically around remote invocations, session management and data access. “Using SOAP might sound cool, but its actually a very expensive activity when you’re forced to marshal and un-marshal data between JVMs.” He then talked about the need to use binary protocols, so serialization and latency were kept to a minimum.
Stephan then gave a brief history of their brief experiences using toolsets from IBM, HP and dynaTrace before they eventually settled with AppDynamics in 2011. Stephan then highlighted the fact that “AppDynamics was able to auto-discover 95% of our application out-of-the-box, meaning I can spend more time managing application performance than telling my APM solution what to monitor.”
“With System Z the truth is always in Production,” added Mirko, explaining the fact that developers can only test components of an application in isolation using tools like profilers. Overall a great, deep insight into the world of managing Java application performance on System Z.
AppDynamics 2012 Product Roadmap
Next up was Bhaskar Sunkara, our VP of Product Experience. This was probably one of the most exciting product roadmap sessions I’ve ever witnessed – the level of interaction and excitement in the room from customers was simply staggering. To see customers engaged, firing questions at Bhaskar left, right and center was a sure sign that our roadmap was compelling. Bhaskar’s uncanny ability to pre-empt questions and give customers confident answers that AppDynamics would deliver, was pretty inspiring. For obvious reasons I can’t reveal our product roadmap here in this blog, needless to say this session went down extremely well with attendees.
Managing Agile .NET application in Production
After a brief break Kristof Berger, Chief Software Architect at Covis took to the stage. Kristof began by outlining his team’s agile methodology around 4 week sprint cycles, and why delivering releases on time with quality was so important – “When we commit features to the business, it’s all about hitting deadlines,” said Kristof.
Kristof then talked about monitoring prior to AppDynamics, and how his dev team had built custom performance collectors into the application. Operations were using traditional monitoring solutions like SCOM to view this performance data. “Monitoring server health is a misleading indicator,” Kristof said. “Legacy tools are not suitable for distributed production environments.” Kristof pointed out that troubleshooting customer issues in production was a long, drawn out, manual process, whereby development would have to request log files and performance data which often took several hours.
AppDynamics was able to give both Dev and Ops complete visibility of their application, business transactions, and code execution in production. “We reduced our MTTR from an average of 16 hours to under 30 minutes, with most issues now taking 10 to 15 minutes to resolve,” Kristof said. “AppDynamics fundamentally changed the culture between Dev and Ops. Our teams no longer blame each other; they sit down together and collaborate using the same information to find root cause with AppDynamics.”
Kristof then walked the audience through several examples of how AppDynamics had helped his team resolve slowdowns within their business rules engine – identifying locking with SQL queries, as well as reducing the memory footprint of specific business transactions that were persisting too much data.
Customer Panel – Battle of the Architects
The last session of day one was a customer panel between Johan Sandberg from SEB (Performance Architect), Andrew Mulholland from Expedia (Operations Arch) and Kristof from Covis (Software Arch). Having different roles on the panel made the discussions and perspectives very interesting. For example, Kristof made the point that “Operations need to make more of an effort to better understand how applications are built,” rather than just being responsible for their deployment. Johan also said “Non-functional requirements like performance should not be optional throughout the application lifecycle,” explaining how production is often the first place where application performance is tested.
Time to Jam
With the day sessions over, attendees were left to “Jam” with cocktails on the hotel roof, which in our case happened to overlook the bay of Mallorca. This was a great opportunity for everyone to network, share experiences, and learn from the range of APM customers and deployments present.
Overall, A great first day which ended with cocktails and dinner overlooking the coast of Mallorca (as shown by the photos below )
AppDynamics Tips and Tricks
Bhaskar kicked off day two with a tips and tricks session on how best to use AppDynamics. Covering some of the new features and functionality of the recent AppDynamics 3.4 release, specifically around policy management, end user monitoring, information points and regression analysis.
EAN’s Journey to the Cloud:
Andrew Mulholland, Operations Architect led the first customer session of day two by talking about Expedia’s journey to the Cloud. Andrew used a car racing analogy throughout his presentation to describe the goals, requirements, challenges, processes and people associated with migrating to the public cloud. EAN’s application serves 10,000 partners around the world, so for Andrew it’s all about delivering performance and a great end-user experience across multiple geographies. EAN’s motto last year was “2 seconds is too long”–this year it’s become “Deliver 1000 hotels from anywhere in under 1 second.”
Andrew talked about the importance of moving data closer to the customer, with cloud being a natural fit for that. Building data centers around the world was ruled out because “They’re a commodity, and being competitive is about the application and its performance.” With Cloud, EAN gets capacity on-demand around the world without having to sign long-term contracts with managed service providers. To do this, EAN would need several Cloud providers to cover partners and customers in the US, EMEA and Asia-Pac. The Cloud OpenStack alliance and the need for standards across Cloud providers is of great interest and importance to EAN.
“You can’t drive with slick tires on a wet race track, and in the cloud it’s the same thing. Preparing for failure is critical,” said Andrew, highlighting the constant need to embrace failure and learn from it. EAN aren’t planning to migrate their entire application to the cloud at once: “We want to take small steps and offer a beta for some partners first.” Andrew also mentioned the hidden hazards of cloud, specially around tax, data privacy and security along with the need to standardize on technology and automate processes.
“Race drivers rely on their dashboard gauges and dials throughout a race,” said Andrew, “It’s exactly the same for us running a website.”
Monitoring therefore becomes key to success in the Cloud, especially in EAN’s case where performance was a key driver. ”AppDynamics ability to auto-discover, and monitor application nodes, on-the-fly makes it a perfect fit for Cloud applications” said Andrew, “We don’t have time to manually tell our monitoring solution what to monitor; we have to be agile and automation is key to that.” Andrew finished by saying that his migration would be a continuous process, with feedback being king from both partners and their monitoring solutions.
Hatim Shafique, VP of Customer Success at AppDynamics, then delivered a 30 minute session on why AppDynamics is laser focused on making customer deployments successful. “I see it like each of you going to the doctors every year for a check-up to make sure you’re OK and healthy. We want your deployments to be the same so you’re successful.” Hatim then covered his team’s structure, along with processes used like customer feedback surveys and the Net Promoter Survey (NPS) which is just one KPI AppDynamics uses to measure customer satisfaction. “Right now, we’re above Apple in terms of our NPS and customer satisfaction score, ensuring that you get the best possible level of service from AppDynamics.” Overall, a great session which was received well by the audience.
Enabling APM for Dev, Ops and the Business:
The final session came from Benoit Villaumie (Lead Architect) and Guillaumie Postaure (Infra Manager) at Karavel, France’s number 1 travel portal. Benoit began by talking about their transition from a monolithic application architecture to an SOA architecture. “We hit a brick wall in terms of scalability with the original architecture, as it became to expensive to maintain and scale,” said Benoit. Moving to a SOA architecture in 2009 eased the maintainability and scalability side of their applications–but as Guillaumie pointed out, it became incredibly complex to manage as a result: “We have 80 applications with 2 releases a week. This kind of constantly changing environment is difficult to manage.”
Karavel had a history of architecture issues from slow SQL queries, 3rd party web services, open source framework bugs and resource leakages. “Firefighting was long and painful for us,” said Guillaumie. “We’d manually try to piece together log files and heap dumps from multiple servers.”
Benoit then talked our their AppDynamics experience, “We downloaded the free version and deployed it in production–after 2 hours we requested a Pro trial. We deployed Pro across our 200 tomcat production instances with no consultants or services.” The net impact of this was a 10x improvement in response times with some business transactions dropping from 5 seconds to under 500 milliseconds. Mean-time-to-Detect (MMTD) dropped from hours to minutes and Mean-time-to-Resolution (MTTR) dropped from days to hours. One user (Adrien B) called AppDynamics “a magic wand to spot issues quickly.” Benoit added, “When issues occur it’s no longer a ping pong match between Dev and Ops.”
Benoit then walked the audience through five different roles at Karavel who were using AppDynamics. For each role Benoit outlined their job title and key use cases which were accompanied by a series of screenshots that visualized which AppDynamics views/data were relevant. “AppDynamics is like a rosetta stone for Dev, Ops and the Business,” Guillaume said. “Today we have over 50 people at Karavel using AppDynamics.” This session was a perfect example of what’s possible when an organization embraces APM, it was also another example of how development and operations culture can change from being the blame game to team collaboration.
AppDynamics Exec Panel
The final session of App Jam allowed attendees to ask our AppDynamics Exec team any question. Questions ranged from product features to integration points along with an interesting question which was “What aren’t you planning to do?” Jyoti smiled and replied “I can categorically say, we won’t be providing support for Cobol,” which as greeted with laughter from the audience.
With that, App Jam came to an end after two days of sessions and Jamming. We received lots of positive feedback from attendees – and we’re expecting App Jam 2013 to be bigger and better! A big thank you to all our customers, speakers and partners who attended. Finally I’d like to apologize for not attending App Jam in my usual attire; several attendees expressed their dissatisfaction at not being able to meet the real App Man. Don’t worry folks–they’ll be plenty of App Man time next year I promise!
How was App Jam for you? We’d love to hear your comments and feedback below.Link to this post:
When we launched AppDynamics Pro back in October 2009, it redefined the way organizations could monitor and manage the performance of their production Java applications. The feedback we’ve received to date can be summed up as “Simple, Smart, Powerful and easy to use.” Over the last decade, words like “simple” and “smart” were rarely associated with Application Performance Management (APM) solutions. Why? Because APM solutions were only as good as the users that configured them. For most organizations it was a full-time job just to keep their APM instrumentation, metrics, thresholds and alerts up-to-date so they could safely run in production, albeit with limited visibility because of overhead concerns.