Build 128

03 August 2017

Features

Call/s Aggregation in Charts

Instana captures data with 1-second granularity. However when inspecting longer time windows, it’s often useful to view aggregate calls rather than the average calls/second for any given roll-up interval. For that we’ve introduced bar charts to display these aggregates, which are dynamically rolled-up based on the current time window!

Better Search for Spans - New HTTP Keywords

Searching for certain spans can at times be difficult, so we’ve extended span search with new HTTP keywords:

  • span.http.host - search for the host header
  • span.http.method - search the method
  • span.http.parameters - search for parameters e.g. products=123
  • span.http.path - search for a certain path
  • span.http.status - search for a status
  • span.http.url - search for the request URL

Ignored Services

We’ve heard from many of you that there are some traces that Instana captures that you’d like to simply ignore. Now, within the Service Mapper rule definitions, you can do exactly that. With the “mark as ignored service” flag enabled, traces matching the service definition will not be persisted and their metric definition will be ignored so that no service is created.

New OS Supported for the Agent

The Instana agent can now be run on z/OS Unix System Services!

Capturing Custom HTTP Headers

A frequent requirement is to track extra http headers with Instana. While we cannot just capture “all” possible headers, we have added a configuration option where our End Users can decide which additional headers they want to capture.

For example, this allows integration with loadtesting tools which set a unique header for every synthetic call.

These headers are visualized in the trace view and can also be searched via the UI or API.

The configuration for that is quite simple:

com.instana.tracing:
 extra-http-headers:
   - 'x-loadtest-id'

Note: that currently this is only supported on Java. The other languages will follow soon.

Newly Supported Technologies

  • Java tracing now supports Axis calls, @Schedule EJBs, Grizzly Http Server and Google Cloud Datastore.
  • .NET tracing now supports Memcached via Enyim Caching.
  • Agent now supports z/OS.

Improvements

  • Overall reduction of impact of Java tracing.
  • JBoss Data Grid has cache manager statistics.
  • Agent now recovers when PHP trace collection breaks temporarily.
  • JBoss/WildFly sensor automatically activates statistics for DataSources.
  • Multiple redis nodes supported on a single docker host.
  • IIS worker processes now have a better name.
  • nginx sensor now respects custom-compiled —prefixPath.
  • Java attach now supports Docker containers which use user ids that are not mapped to existing users.
  • .NET tracing for WebApi and MVC no longer requires an IHttpModule.
  • Improved performance for .NET tracing.
  • Groupings on infrastructure map are now persisted for current session.
  • Ruby: Backport instrumentation to support Ruby on Rails v2.3.8 (and LTS) #81.
  • Go: Event API: Make duration configurable. #33.
  • Websphere instances can be searched by serverName / nodeName / cellName.
  • The agent is now available as Windows MSI for beta testing. Please contact us if you want to try it out and provide feedback.

Fixes

  • Work stealing Fork Join Pools in Java now trace reliably.
  • Spring WebMVC DeferredResults now trace also correctly under contention.
  • Some API calls could have failed because of unknown ids, which were in fact known.
  • Ruby: Lower runtime version requirement for ffi dependency #83.
  • Go: Fix event <—> service linking & Protect against Event API panic #37.

Known issues

When running the agent on z/OS USS, many infrastructure metrics like memory and cpu usage are unavailable. However, monitoring of databases, web servers, and runtimes like Java works normally.