Build 120

19 January, 2017

Features

PHP Call Stacks and Errors in Traces

We are now showing function calls in PHP traces showing the execution path through the trace. Likewise, we are collecting any uncaught exceptions and errors and will mark traces with an error when these occur.

traces errors

Automatic Web EUM XMLHttpRequest Instrumentation

In the last release we rolled out the first web end-user monitoring support. With this release, we are extending our web EUM support to automatic instrumentation to JavaScript initiated XMLHttpRequests (aka. AJAX requests).

Distributed tracing is supported by default and you can easily see how XMLHttpRequests are handled by backend systems. Additionally, you have the option to inspect the corresponding page load trace to learn more about the user which initiated the call.

traces

Better Integration and References between EUM services and EUM traces

In the first EUM release, we didn’t always deliver the full integration between services and EUM traces that Instana is known for. This changes in this release. Now, you will correctly see to which application an EUM trace belongs as well as the ability to jump from an EUM application to its traces.

eum table

Services are now correctly listed in the trace table.

traces

Jump from an EUM service to the associated traces.

Service impact correlated to traces

Instana already identifies service impacts and highlights these in the incident view. It does so, among others, by analyzing traces. With our latest addition to the incident view you can now more easily see which traces were recorded during an issue, what the key metrics were and even jump to these traces.

traces

Entity health in breadcrumbs

Health is a concept which is at the heart of Instana. Because of this, we now also show the health of entities in the breadcrumb next to the sidebar and in dashboards. This makes it easier to understand whether any components within the hierarchy of your applications and databases has a problem.

breadcrumbs

Jumping to traces touching any service

We now additionally support navigation from any service to the traces that touched this service. By touched we mean that, instead of only allowing navigation from a service which started a trace, you can now also navigate to traces which are in the middle or even at the end of the traces. Among others, this now allows navigation to traces which contain certain database calls.

mongo dashboard

Block layout for infrastructure view

When monitoring lots of infrastructure components in many different groups it can happen that the infrastructure map is not well laid out in terms of readability. All groups are just packed side by side, sorted by their name. With this release we introduce an alternative layout algorithm which sorts all groups in a more packed / quadratic way.

infrastructure map

This is an example of how the alternative infrastructure layout algorithm can improve readability.

Users can switch between the two available layout ways analog to the application map.

toggle switch

Furthermore, users can control the space between all groups for the packed layout algorithm. The screenshot above was created with 1 space in x direction and 2 spaces in y direction. These controls are places in the settings dialog under ‘user interface’.

infrastructure settings

With Instana it becomes very easy to monitor even very large deployments. To help you find the information you need we introduce the new search bar. As we add more functionality to the search it became obvious that the search needs more space.

You are also able to save, edit and delete filter presets to enable you to easily switch to often used filters and make sharing easier. The presets are available for all users.

search bar

Time window based metric aggregations

Most metrics in Instana show what value a metric had at a certain point in time, like what is the current CPU usage. For larger time windows we use rollups, for example 5 second rollups for time windows of 1 hour. Up until now, it was hard to identify how a component behaved over a configurable time window like how many calls did my service have yesterday?

With this release, you gain the ability to switch to a new mode to see metrics over the currently selected time window. As a start, you have the option to enable this modes in our infrastructure and application map, as well as the tables.

entity Option to enable metric aggregations within the infrastructure map

aggregate metrics Aggregating metrics in a table view over 10 minutes

metrics Calls, latency and error rate over 30 minutes in service dashboards

JBoss Connection Pool Monitoring

We now automatically monitor JBoss Connection Pools.

connection pools

Kafka Cluster Monitoring

Greatly enhanced Kafka Cluster Monitoring including automatic Cluster detection.

cluster detection

Agent Update Timing Configuration

New agent downloads will ship with a new default setting for auto updates. Previously the agent would update roughly every 24 hours. The new default will be a daily update around 4:30am - If desired it can be restricted to run on certain days or at a certain time.

Newly supported Technologies

  • Java Tracing now supports Flow style Akka http entries and exits, as well as Spymemcached exits. Cassandra tracing will now capture PreparedStatements.
  • PHP Tracing now now fully supports Distributed Tracing of HTTP calls made via HTTP stream wrappers, for example fopen, filegetcontents, get_headers but also any libraries utilizing HTTP streams wrappers, like ext/DOM.
  • Ruby now supports OpenTracing, RestClient, Excon & Dalli. Also a new Ruby EUM helper and the application gem bundle is now shown in the UI for Ruby applications:

dashboard

Improvements

  • Enhanced Kafka Monitoring and Dashboard.
  • Easier deployment of the agent: Putting the JDK to agent-dir/jvm will automatically use it without a JAVA_HOME set.
  • The Instana agent is now monitoring container networks that are brought up dynamically (e.g. with docker compose).
  • Agents that have been installed in 2015 and 2016 now start faster (Feel free to perform a fresh install on your own, to get rid of some baggage of early Instana days. Most recent downloads contain Bootstrap 1.1.5, the docker image id is a031cc1c777d).
  • Container networks that are local no longer show up as unmonitored remote servers.
  • Restricted agent socket to the required local networks, no longer listening on all interfaces.
  • Java Instrumentation is now much more robust against incomplete or buggy classloaders, as well as fully working in OSGi containers.
  • Reduced garbage produced during async tracing.
  • The postgres sensor will now respect command line arguments and additionally detect the postmaster process.
  • Better discovery of httpd.worker processes.
  • Tweaks for parsing the main class from SAP JVM.
  • Services running on mod_php on Apache are now connected to the Apache.
  • Agent is now correctly monitoring volumes if deployed in a docker container.
  • Agent will use the correct docker process on Rancher OS.
  • Oracle DB sensor will handle insufficient permissions more graceful.
  • Added INSTANA_ZONE environment variable to override zone config.
  • Redis sensor supports renamed CONFIG command.
  • Traces from bots are now ignored by our end-user monitoring as timing data from bots is not guaranteed to be accurate, nor valid (faked in fact by many bots, most commonly known the Google bots).
  • CPU usage metric colors are now aligned with the colors of the CPU usage colors in the infrastructure map.
  • A bug in Spring Boot can result in the creation of a lot of metrics. Instana safeguards against collecting of too many metrics and will now warn about this Spring Boot bug.
  • Database connection sidebars and dashboard now work as expected.
  • Elasticsearch Index and EJB service mapping is now configurable.
  • The trace count in the trace view now shows how many traces have matched within the selected time window for the currently active search query.
  • Chart tooltip for OracleDB wait states is now completely visible.
  • Chart time window drag area now closes consistently.
  • Changing the search query now produces less entries in the browser history.
  • You can now select the table view content. table view
  • Removing an EUM app configuration now requires explicit confirmation. remove configuring
  • Expandable entity links are now available for services in the application map, too entity links
  • User avatar in the header of the Instana UI is now provided by Gravatar. Change your avatar using gravatar.com. avatar
  • Always show the timeline time window size. timeline
  • Window titles now show where you are in the Instana UI and thereby makes the browser history much more useful.
  • The Instana UI now creates a dynamic favicon which will show how many open incidents exists and the highest severity (as the background color). traces UI

Fixed Issues

  • Fixed bug where docker networks could result in non-unique agent identifier.
  • Fixed misdetection of some processes as etcd. (requires an agent restart to fix).
  • Fixed exception preventing monitoring on a freshly started cassandra
  • Fixed severe typo on the EUM. Thirst Paint has been quenched and is now First Paint

Known Issues

Please send feedback via Slack or email to michael.krumm@instana.com about the new features, the improvements and especially your ideas and other points you have. We have a lot cooking so stay tuned - more to come soon!