TABLE OF CONTENTS
- Java SDK improvements
- Configuration-based Java Trace SDK
- Google Cloud Datastore
- Google Cloud Run Support
- Google Cloud Pub/Sub
- Grouping on Custom Dashboards
- Helm Chart
- Account & Billing
- Scoped Pipeline Feedback
- Unbounded Analytics enhancements (Closed Beta)
- AWS Lambda Support for Java (Technology Preview)
- AWS Lambda Support for Go
- PHP 8 Support
- Agent: Configuration From Process Environment & Files
- API Token Management On Unit-Level
- Instana Cloud Native Buildpack for Google Cloud Run
- Instana Pipeline Feedback Orb for CircleCI
- vSphere vMotion events
- Custom Payload in Alerts
- Solace JMS support for the Java Trace Sensor
- Authentication support for Git-based Configuration Management
- DBmarlin integration
- Other features
The Instana Java SDK in version
1.2.0 brings two new major features.
It is now possible to not only create new and manage started spans by the Instana Java SDK, but also to manage spans created by Instana AutoTrace.
To do so the methods of
SpanSupport can now handle both kinds of spans.
A major use-case for this feature is adding custom annotations to automatically generated spans from known frameworks.
Furthermore, two new annotations were added to the SDK. Methods can be annotated with
@TagReturn the easily capture their return
value in the currently active span, regardless if it's an SDK or AutoTrace one. A method parameter can be annotated with
@TagParam to capture its value in the currently active span.
The Configuration-based Java Trace SDK enables a declarative approach to instrumentation that, unlike the Java Trace SDK, requires no code modification; the configuration-based nature comes at the cost of expressiveness (you can do more things with the Java Trace SDK), but it is a new tool in your arsenal ;-)
We are extending our Google Cloud Run support with .Net Core instrumentation and monitoring.
Check out our Google Cloud Run documentation to get started.
We released support for the
googleapis/java-pubsub, starting with release 1.105, and the Spring Cloud GCP for Pub/Sub, starting with version 1.2.5.RELEASE. We also added support for the Node.js client library
@google-cloud/pubsub to our Node.js tracer with
Also, we added support for the .Net Core client library Google.Cloud.PubSub.V1. All operations are automatically supported except Consume which can be supported via
Instana.Tracing.Core.Sdk. For more information, how to support Consume using SDK, please see the example here.
On Custom Dashboards, you can now group the results for area line charts and stacked bar charts. You can group by a tag and display the Top/Bottom five results on your chart widgets. If you want to know the count of the items that were not grouped, then you can also aggregate the remaining groups using the "Display aggregation of other groups" toggle. For more information and an example, please see the documentation here.
We released several improvements over the past few weeks. (As a reminder, there is a new home for the Instana agent chart in the Instana Helm Charts repository, and it is also indexed in ArtifactHub.)
- New feature: Bring-your-own secret for agent keys: using the new
agent.keysSecretsetting, you can specify the name of the secret that contains the agent key and, optionally, the download key; refer to Bring your own Keys secret for more details.
- New feature: Add support for affinities for the agent pod via the
- Improvement: Seamless support for Instana static agent images. When using an agent.image.name starting with
containers.instana.io, automatically create a secret called
_as username and
agent.downloadKeyor, if missing,
agent.keyas password. If you want to control the creation of the image pull secret, or disable it, you can use
agent.image.pullSecrets, passing to it the YAML to use for the
imagePullSecretsfield of the Daemonset spec, including an empty array
to mount no pull secrets, no matter what.
- Fix: Automatically recreate agent pods if there is a change in the ConfigMap created by this Helm chart.
Go to Settings > Account & Billing > Technologies Reporting to see the technologies you are monitoring.
Pipeline Feedback Release Markers can now be defined with a scope. The scope which can be defined are
- Service within an Application
The Release Markers will only be shown in dashboards for the given scope. The scopes can be mixed to define even complex Release Marker requirements. Read the Pipeline feedback documentation for further information.
Unbounded Analytics for calls and traces has been completely redesigned with more capabilities. You will be able to create much more
sophisticated filters using brackets and an
OR operator in addition to previously supported
AND operator. You will be able to quickly
peek into groups to see their calls or traces. For more information watch this preview video https://www.youtube.com/watch?v=OP1ybt80JTk.
Please, let us know if you would like to sign up for the closed beta program.
In addition to the existing Node.js and Python support, Instana now offers AutoTrace support for AWS Lambda functions built in Java.
The work to set up Instana tracing is minimal and in line with the Node.js and Python Lambda experience: include adding our AWS Lambda Layer and specifying three environment variables.
The AWS Lambda Java runtimes
java11 are supported.
Head to our AWS Lambda documentation for full information.
With the new
github.com/instana/go-sensor you can trace AWS Lambda functions written in Go with Instana.
github.com/instana/go-sensor/instrumentaion/instalambda instrumentation package provides wrappers to instrument AWS Lambda handlers with Instana.
For more details, refer to the instrumentation README and Instana AWS Lambda Go documentation pages.
The Instana trace extension version beginning v1.13.0 ships support for the PHP 8 runtime environment. To put it in context, we support PHP 8 from day 1 and, as always, the PHP extension will be automatically delivered over your Instana agents with automatic updates and automatically installed in your shiny PHP 8 runtimes.
The host agent is capable to read configuration values in configuration.yaml from process specific environment variables and files. This way multiple instances of the same technology (e.g. multiple MySQL database instances) with different credentials can be configured. Reading configuration values from files alignes with th way kubernetes mounts secrets into containers. For more details refere to the host agent configuration instructions.
Many of our customers have what we call multiple Instana units like prod-example.instana.io and qa-example.instana.io (belonging to tenant example). As part of our investment to improve Instana's access control mechanisms, we are today changing how Instana's Web REST API tokens work.
Previously, a single Web REST API token granted access to all Instana units belonging to the same tenant. This behavior created access-control challenges. For example, when one wanted to open up a development unit's access control to a broader audience. With this release, you can manage Web REST API tokens for each unit. A Web REST API token created for qa-example will not grant access to prod-example and vice versa.
Web REST API tokens existing at the time of the migration were duplicated for each tenant unit. This duplication means that existing Web REST API tokens will continue just as they did before.
We released the Instana Buildpack for Google Cloud Run, a shiny Cloud Native Buildpack to be used together with the Google Cloud Buildpacks builder to create Google Cloud Run images that already contains everything you need to monitor applications running on managed Google Cloud Run written in:
- .NET Core
When you use the Instana Buildpack for Google Cloud Run together with the
pack utility, all you need to do to is to add the
INSTANA_AGENT_KEY environment variables to your service revision and you are good to go ;-)
As always, you will find the instructions to use this new way of instrumenting your Cloud Run applications in the "Installing Instana Agents" dialog.
Instana agent collects various vMotion event types and reports them as Instana events. For more details, refer to the vMotion events collection.
The payload of alerts can now be customized. This allows to either include relevant information of your monitored system as part of your alert notification, or to enable advanced alert routing use-cases using your alert management tool of choice. for further details, please check out the Configure Custom Payload in Alerts docs.
The Git-based Configuration Management now supports authentication at remote repositories through environment variables. This feature is especially handy to access repositories hosted by one of the main git-hosting providers using private token. How to set up such an integration is described in this easy example.
Instana now integrates with DBmarlin. Several Instana database dashboards include a link towards DBmarlin in case you want a deeper insight of your database and application performance.
- OpenTelemetry trace ingestion using Agent as Collector is in (early) technical preview. For more information about supported scope and setup instructions, please refer to the OpenTelemetry documentation.
- Custom dashboards can now be created via our Web REST API.
- Custom dashboards' configuration can now be inspected as JSON directly from within our user interface even without write access.
- Account & Billing tab is now only visible to users with enabled
Access to account and billing informationpermission.
Instana agent Helm chart:
- Allow using user-specified memory measurement units in
agent.pod.limits.memory. If the value set is numerical, the Chart will assume it to be expressed in Mi for backwards compatibility.
- Allow using user-specified memory measurement units in
- Synthetic calls: automatic detection of Spring Cloud Consul Config Watch jobs.
- Stored dashboard links maintain selection of tabs and metric aggregations.
- The TV mode of custom dashboards now persists across page refreshes.
- The Node.js tracer (
@instana/collector) now supports automatic aggregation of very short (< 10 ms), high frequency database calls. This helps to keep the performance overhead of tracing at a minimum in scenarios where such calls are executed in rapid succession. This capability is opt-in at the moment. It will become the default behaviour in one of the next releases. Refer to the Node.js configuration docs to learn how to enable it right away.
- Tracing SDK: support for GraphQL spans.
Our website monitoring user agent parser gets an update to support many new user agents and to improve detection for existing user agents. Notable changes:
- Improved detection for Android 9 and Android 10.
- Improved detection for mobile web views.
- For Windows operating systems, we now correctly differentiate between operating system name and version.
- New detection for less commonly used web browsers, e.g., QQ Browser Mobile, MiuiBrowser, QQ Browser Mobile and others.
- JVM: Display heap memory usage percentage at Heap Memory dashboard
- MySQL Sensor: Add support for monitoring replica metrics
Java Trace Sensor
- Official support for Solace JMS
- Prevent instrumentation of JVMs that already use the Dynatrace agent
- Improve Kotlin Coroutine support
- Small UI improvements in the Event Details View
- Maintenance Windows: fixed problem that Incidents have not been properly filtered in case an Issue was correlated that started outside of the maintenance window's timeframe.
- Fix duplicated endpoints in different cases in frameworks where the path and path template are case insensitive such as asp.net.
- Kubernetes: Sorting on deployments, deploymentConfigs, daemonSets, statefulSets and pods for Namespaces, Clusters, and Cluster > Namespaces
- Incidents: we changed the definition of the displayed start time to the point in time when the Incident is triggered, instead of the earliest start time of all correlated events. This prevents side-effects when a long-running Issue is correlated to an Incident, such as listing the new Incident in the past or showing a duration that is different from when we send open or *close+ notifications.