Hunting and Fixing AWS DynamoDB Client Scalability Issues on Tomcat

As a performance consultant, I get called on to address various performance issues. One of our recent scalability issues happened on a micro service exposing a REST API. The micro service runs on Apache Tomcat, on an AWS EC2 instance, in a VPC. It uses ehcache as in-memory cache and Dynamo DB as persistent data source. DynamoDB gets updates from the source system using data pipeline built in Kinesis and Lambda functions. … read more

Correlating JavaScript Errors with Slow CDN Performance

JavaScript Errors can happen for many different reasons: special behavior of certain browsers that weren’t tested; a real coding mistake that slipped through the delivery pipeline; poorly handled timeouts, and I am sure the list goes on. In this blog we discuss yet a different reason which was brought to my attention by Gerald Madlsperger, one of our long term Dynatrace AppMon super users: A CDN server issue resulting in … read more

Hybrid Cloud Problem Patterns: Chasing DNS Lookup Times from AWS EC2

As a performance architect, I get called into various production performance issues. One of our recent production issues happened on Tomcat AppServer running on an AWS EC2 instance in a VPC. VPC is joined with an on-premise DNS server. This service calls another micro service. When service went live, we noticed a high response time from a downstream micro service, and the downstream service logs did not show any performance … read more

Inside the Black Box Part 4 – Perl

The fourth and, for now, final topic of the black box series brings us to Perl. For people interested in the first part, generated code, please click here, for the second part, Python, please click here and for the third part, VBScript, please click here. Perl was the first of the ADK wrappers created for the series, but due to time constraints I didn’t manage to clean it up for distribution … read more

Getting Started with Dynatrace AppMon 2017 May

Dynatrace AppMon 2017 May is available for everyone along the continuous delivery pipeline that wants to push better performing and scaling code into production. Whether you want to develop, test, architect or run your application in production – just sign up for the Dynatrace AppMon Personal License, learn how to best use it through my YouTube Tutorials or get started by following the steps in this blog post! In case you … read more

Why we love Dynatrace AppMon 2017 May

Just as Dynatrace has redefined monitoring for Cloud Native, Micro-Services and Web Scale DevOps through Dynatrace SaaS & Managed, we’ve also been innovating on our Dynatrace AppMon & UEM solution. Thanks to feedback from our users and our passionate engineering teams, Dynatrace AppMon 2017 May (= Version 7) clearly shows the biggest innovation leap that I can remember since my start at Dynatrace nine years ago. Here are some of my personal … read more

Monitoring .NET Core Applications with Dynatrace

This post was coauthored with Georg Schausberger. If you follow the development of the .NET framework you probably know that there are some tremendous changes in the Microsoft world: the cross-platform, open-source implementation of .NET, the .NET Core was released and with Visual Studio 2017 finally, the tooling for development also reached RTM state. So, the framework is RTM, the tooling for development is also RTM, and we believe that … read more

Automating Shared Infrastructure Impact Analysis: Why Monitoring Backend Jobs is as important as monitoring applications

This posting illustrates how to effectively automate shared infrastructure analysis to support both your back-end jobs and your applications. Last week Gerald, one of our Dynatrace AppMon super users, sent me a PurePath as part of my Share Your PurePath program. He wanted to get my opinion on high I/O time they sporadically see in some of their key transactions on their Adobe-based documentation management system. The hotspot he tried to … read more

Inside the Black Box Part 3 — VBScript

The third topic of the “black box” series brings us to VBScript. For people interested in the first part, Generated Code, please click here. For the second part, Python, please click here. The first question which came to my mind when someone wanted to instrument VBScript was “Why would someone want to instrument a script?”. The answer to that question is that VBScript is not only something used to script … read more

Inside the Black Box Part 2 – Python

This is the second topic of the “Black Box” series, bringing us to Python. For people interested in part one — Generated Code — please click here. In this post I’ll go through how to take a simple Python script and instrument it using the AppMon Native ADK. I will also shed some light on the most common pitfall when instrumenting Python scripts and how you might be able to … read more