The Smile-IT Blog » April 2015

Monthly Archives: April 2015

DevOps style performance monitoring for .NET

 

{{ this article has originally been published in DevOps.com }}

 

Recently I began looking for an application performance management solution for .NET. My requirements are code level visibility, end to end request tracing, and infrastructure monitoring in a DevOps production setup.

DotTrace is clearly the most well-known tool for code level visibility in development setups, but it can’t be used in a 24×7 production setup. DotTrace also doesn’t do typical Ops monitoring.

Unfortunately a Google search didn’t return much in terms of a tool comparison for .NET production monitoring. So I decided to do some research on my own. Following is a short list of well-known tools in the APM space that support .NET. My focus is on finding an end-to-end solution and profiler-like visibility into transactions.

New Relic was the first to do APM SaaS, focused squarely on production with a complete offering. New Relic offers web request monitoring for .NET, Java, and more. It automatically shows a component-based breakdown of the most important requests. The breakdown is fairly intuitive to use and goes down to the SQL level. Code level visibility, at least for .NET, is achieved by manually starting and stopping sampling. This is fine for analyzing currently running applications, but makes analysis of past problems a challenge. New Relic’s main advantage is its ease of us, intuitive UI, and a feature set that can help you quickly identify simple issues. Depth is the main weakness of NewRelic. As soon as you try to dig deeper into the data, you’re stuck. This might be a minor point, but if you’re used to working with a profiler, you’ll miss CPU breakdown as New Relic only shows response times.

net-1-newrelic

Dynatrace is the vendor that started the APM revolution and is definitely the strongest horse in this race. Its feature set in terms of .NET is the most complete, offering code level monitoring (including CPU and wait times), end to end tracing, and user experience monitoring. As far as I can determine, it’s the only tool with a memory profiler for .NET and it also features IIS web request insight. It supports the entire application life cycle from development environments, to load testing, to production. As such it’s nearly perfect for DevOps. Due to its pricing structure and architecture it’s targeted more at the mid to enterprise markets. In terms of ease of use it’s catching up to competition with a new Web UI. It’s rather light on infrastructure monitoring on its own, but shows additional strength with optional Dynatrace synthetic and network monitoring components.

net-2-dynatrace

Ruxit is a new SaaS solution built by Dynatrace. It’s unique in that it unites application performance management and real user monitoring with infrastructure, cloud, and network monitoring into a single product. It is by far the easiest to install, literally takes 2 minutes. It features full end to end tracing, code level visibility down to the method level, SQL visibility, and RUM for .NET, Java, and other languages, with insight into IIS and Apache. Apart from this it has an analytics engine that delivers both technical and user experience insights. Its main advantages are its ease of use, web UI, fully automated root cause analysis, and frankly, amazing breadth. Its flexible consumption based pricing scales from startups, cloud natives, and mid markets up to large web scale deployments of ten-thousands of servers.

net-3-ruxit

AppNetta‘s TraceView takes a different approach to application performance management. It does support tracing across most major languages including database statements and of course .NET. It visualizes things in charts and scatter plots. Even traces across multiple layers and applications are visualized in graphs. This has its advantages but takes some time getting used to it. Unfortunately while TraceView does support .NET it does not yet have code level visibility for it. This makes sense for AppNetta, which as a whole is more focused on large scale monitoring and has more of a network centric background. For DevOps in .NET environments however, it’s a bit lacking.

net-4-TraceView

Foglight, originally owned by Quest and now owned by Dell, is a well-known application performance management solution. It is clearly meant for operations monitoring and tracks all web requests. It integrates infrastructure and application monitoring, end to end tracing, and code level visibility on .NET, among other things. It has the required depth, but it’s rather complex to set up and obviously generates alert storms as far as I could experience. It takes a while to configure and get the data you need. Once properly set up though, you get a lot of insight into your .NET application. In a fast moving DevOps scenario though it might take too long to manually adapt to infrastructure changes.

net-5-foglight

AppDynamics is well known in the APM space. Its offering is quite complete and it features .NET monitoring, quite nice transaction flow tracing, user experience, and code level profiling capabilities. It is production capable, though code level visibility may be limited here to reduce overhead. Apart from these features though, AppDynamics has some weaknesses, mainly the lack of IIS request visibility and the fact that it only features walk clock time with no CPU breakdown. Its flash-based web UI and rather cumbersome agent configuration can also be counted as negatives. Compared to others it’s also lacking in terms of infrastructure monitoring. Its pricing structure definitely targets the mid market.

net-6-AppDynamics

Manage Engine has traditionally focused on IT monitoring, but in recent years they added end user and application performance monitoring to their portfolio called APM Insight. Manage Engine does give you metric level insight into .NET applications and transaction trace snap shots which give you code level stack traces and database interactions. However it’s apparent that Manage Engine is a monitoring tool and APM insight doesn’t provide the level of depth one might be accustomed to from other APM tools and profilers.

net-7-ME

JenniferSoft is a monitoring solution that provides nice real-time dashboarding and gives an overview of the topology of your environment. It enables users to see deviations in the speed of transactions with real time scatter charts and analysis of transactions. It provides “profiling” for IIS/.NET transactions, but only on single tiers and has no transaction tracing. Their strong suit is clearly cool dashboarding but not necessarily analytics. For example, they are the only vendor that features 3D animated dashboards.

net-8-JenniferSoft

Conclusion: There’s more buzz around on the APM space than a Google search would reveal on first sight and I did actually discover some cool vendors to target my needs; however, the field clears up pretty much when you dig for end-2-end visibility from code down to infrastructure, including RUM, any web service requests and deep SQL insights. And if you want to pair that with a nice, fluent, ease-of-use web UI and efficient analytics, there’s actually not many left …

Published by:

Skype-for-Business (Lync) on 1und1

Some time ago I promised to add a post about how to configure all the Lync DNS records on 1und1 (if in case you are hosting your domain there – might however be, that the information applies to other DNS providers as well).

Well … as time flies, 1und1 obviously has improved their domain management portal, hence all that “fancy stuff”, we originally did in order to make it work, is void now, and the best and pretty straight forward explanation on how to do it rightly can be found in the Office365 support pages.

Be happy and enjoy (I am and did – and it works perfect for us)

 

Published by:

Digitalization, IoT, networks and money

I am sitting at the Celtic-Plus spring event here in Vienna. Ridicolously high suit-rate compared to the fact that they intend to target future dynamics of how technology is going to be delivered to people and businesses. I’m in jeans and probably a bit of an outlaw – which fits pretty well in fact, because none of the pitched projects does really offer a mature collaboration opportunity for me.

However, it is still interesting to learn what’s the innovative potential in the field of wireless networking and media. Interested in more detail? You may wanna check out their hashtag: #celticevent

What’s pretty obvious here is that also mobile network providers and researchers in that area want to leverage and support innovation wrt Digital Business and the Internet of Things. Every other project is taking you onto a trip on how they will improve the world by providing people, businesses and things with an enhanced connectivity experience. 5G and the 5G Infrastructure Private Public Partnership is one of the most re-known and most heavily discussed topics here (heavily criticized, either, for their lack of reasearch into flexible broadband spectrum usage).

When listening to the project pitches, which mainly aim at finding partners within the community in order to execute on their research objectives, I was presented with a couple of really cool ideas; and also the project exhibition area offered a good insight into what is being done to improve worldwide connectivity (take e.g. the initiative to improve the reach of traditional wireless transmitter stations in order to bring wireless connectivity into remote areas; Serengeti area as a concrete example).

However, there was one particular problem with nearly all of the presented award winning or pitching projects: A severe lack of productizable and monetizeable results.

Here’s a few examples:

1. Tilas

TILAS explores possibilities to provide wireless to a huge amount of interconnected devices (like e.g. in heavily populated rural areas) and thereby making large deployments of huge amount of wearables and devices possible in the future.

On their folder, their achievements are described as “solutions to overcome the already detected technical problems in current large cities.” And it continues: “The demonstrator will highlight the main achievements in the different fields including figures that asset the benefits of the proposal in terms of capabilities and economic savings […]”. No tangible monetizable (product) results or implementation plans highlighted.

2. Seed4C

This is an acronym for “Security Embedded Element and Data privacy for Cloud”, and their objective is to propose an approach to attach hardware-based secure elements (SE) to “cloud nodes” in order to offer strong security enforcement and to support and end-2-end process ranging from security modelling to security assurance.

Good thought. Here’s their achieved results according to their flyer: “Seed4C has defined an end-2-end security process which consists of the following stages […]”, and then the stages are explained which include a modelling approach, an OpenStack platform for application deployment according to the model and security policy configuration. The project has ended in February 2015 after 3 years work. So, that’s it more or less. No claim of any company actually implementing this.

3. H2B2VS

The complete name of this is “HEVC Hybrid Broadcast Broadband Video Services”. And this is pretty interesting, as it proposes to use broadband networks in addition to broadcasting networks to allow for hybrid distribution of TV programs and services leveraging both in a synchronized way in order to overcome the limitations in capacity that traditional broadcasting methods have.

Achievements so far (as the project is going to end in October 2015):

  • 20 use cases on hybrid distribution described
  • 3 HEVC encoders and 2 decoders available
  • CDNs adapted to hybrid delivery
  • a proposal to MPEG how to efficiently synchronize broadcast and broadband (acceptance state not reported)

Tangible in a sense of productization? None, as far as I could see.

Future projects

The pitch session with about 20 differnt projects mostly asking for cooperation partners offered some interesting ideas as well, e.g. a framework to combine information from wearables (like e.g. about an accident of an elderly person) with location and mobile and skill data of close by healthcare personal, or a platform for predictable management of public transport, or a worldwide database for usable broadband spectrums in order to allow services to leverage any spectrum in a flexible dynamic, an agile, way (closing the gap of what’s claimed to be leaking in the 5G research projects’ scope)

None of them – however – offered any glimpse on competition analysis or tangible results and deliverables from which monetization opportunities could have been deducted.

So, in the end

… I was asking myself: With all those cool and highly innovative approaches being presented and with hundreds of millions of governmental money pumped into these initiatives – where is the results that companies take into their portfolios and products to be offered on the market or included in solutions? Where is the real practical change of ecosystems and services for consumers or businesses that show that the funds provided through collaboration under the Celtic-Plus cluster are rightfully used and spent? How can the European Union and EU governments spend huge sums of money to projects which (mostly) in the end do not come up with anything more than academic research results?

Don’t get me wrong: I thoroughly and fully trust, that funds are important, research on an innovative (maybe sometimes a bit academic) level is utterly necessary to drive digital innovation, that not every project can end with a tangible new solution being productive: But the spending for these kind of projects is tremendous, and the duration of most of the projects is pretty long, and the results, as I could see, are mostly so very limited that I would really love to demand funding organizations to bind their spendings to actual revenue achieved with the respective project results.

If any angel investor or private equity acted that way and not measured their engagement against real practically usable results, they’d be dead before having even started.

I think, in order to really be successful in terms of innovation, there needs to be innovative projects alongside monetizable and productizable business needs! And funds for the same — meaning that there’ll be less for purely academic research as long as it can’t be brought back into the market and – ultimately – benefits the end user and an improved (digital) world.

 

Published by:
%d bloggers like this: