Join us for Flagship 2024: April 16-17 – Register Now.

Querying Split Impressions in New Relic for More Insight into Your Metrics

Contents

Increased competition in the market is challenging organizations to build product features faster in incremental chunks and use data to measure the efficacy of feature releases and help guide investment decisions.

With the widespread adoption of feature flags as one of the primary mechanisms to release features faster, reporting success and operational metrics must adapt to have feature level context — both in terms of engineering and business performance.

New Relic and Split enable customers to make data-driven decisions, with a shared fundamental belief that you can’t improve what you can’t measure. New Relic and Split tools allow you to move faster and safer, so you can focus on building more valuable products.

Split’s integration with New Relic’s performance and transaction level data empowers engineering, product, and DevOps teams to fix issues faster and accelerate innovation. Through this integration, New Relic provides a unified approach to observe and measure all contextual changes to customers’ applications at a feature level.

Mark Weitzel, Vice President and General Manager, Developer Ecosystem at New Relic.

Find and fix problems faster, build high-performing teams, and accelerate your digital transformation with Split impressions in New Relic.

Configure the New Relic integration in Split’s SDK

Split’s existing New Relic integration can be configured within your accounts admin settings. Learn more in our documentation. The existing integration annotates New Relic transactions with Split feature flags information that can be used to correlate application metrics with feature flag changes.

Learn more below about how to enrich Split’s existing integration by using real-time impressions to filter your New Relic transaction data.

Using Split’s Java SDK, implement the integration as a synchronous impression listener and it can be enabled as shown below or in our documentation:

SplitClientConfig config = SplitClientConfig.builder()
    .integrations(
        IntegrationsConfig.builder()
        .newRelicImpressionListener()
        .build())
    .build();

SplitFactoryBuilder.build("<API_TOKEN>").client();
Java

This integration is only enabled if the Split SDK detects the New Relic agent in the classpath. If the agent is not detected, the following error will be displayed in the logs (if logging is enabled):

WARN [main] (IntegrationsConfig.java:72) - New Relic agent not found. Continuing without it
Bash

If you’re not using Java and would like us to add this integration to Split’s additional supported languages please contact your Split account manager or email support@split.io.

View transaction data in New Relic by treatment

For demonstration, we have an application in New Relic called Origami Portal where we are running Split’s Java SDK with the integration configured and New Relic’s Java agent.

With each transaction, new columns will be automatically captured for each split evaluated with the value captured as the treatment shown:

NameValueTreatment
split.<split_name>TreatmentSplit name and treatment received.
split_keykeyKey used in the evaluation of the splits.

With the below basic query, you can see all transactions where the split_key is not null:

SELECT * FROM Transaction WHERE appName = 'Origami Portal' AND split_key IS NOT NULL since 1 hour ago
SQL

With our Split impressions added to the transaction level data in New Relic, we can easily query our New Relic data to understand changes in performance for users with different treatments.

Below we are querying for the response time faceting by the split treatment for a particular split.

Interested in learning more? We’re looking to make this experience even simpler and we’d love your feedback. Contact your Split account manager or email support@split.io to discover our projects and provide feedback directly from the teams that are building the products!

Get Split Certified

Split Arcade includes product explainer videos, clickable product tutorials, manipulatable code examples, and interactive challenges.

Switch It On With Split

The Split Feature Data Platform™ gives you the confidence to move fast without breaking things. Set up feature flags and safely deploy to production, controlling who sees which features and when. Connect every flag to contextual data, so you can know if your features are making things better or worse and act without hesitation. Effortlessly conduct feature experiments like A/B tests without slowing down. Whether you’re looking to increase your releases, to decrease your MTTR, or to ignite your dev team without burning them out–Split is both a feature management platform and partnership to revolutionize the way the work gets done. Switch on a free account today, schedule a demo, or contact us for further questions.

Want to Dive Deeper?

We have a lot to explore that can help you understand feature flags. Learn more about benefits, use cases, and real world applications that you can try.

Create Impact With Everything You Build

We’re excited to accompany you on your journey as you build faster, release safer, and launch impactful products.