Time is relative. — Einstein’s Special Theory of Relativity
Since the release of New Relic Insights, our customers have been able to use it to ask questions of their data relative to rolling time windows. That is, they could ask such questions as, “What’s the average load time of the most important pages on my website?” and when prompted for a time range to look at, they’d specify something like “since 1 hour ago.” This is often useful, but it may not always provide the information that is most relevant to the customer.
For example, what if your company does most of its business in the morning, and you’re running queries late in the afternoon to show information “SINCE 24 hours ago”? Are those queries relevant to a user who really wants to know what the average duration of those pages were during peak load times? Probably not.
Instead, that user might want to ask, “What was the average load time of the most important pages on my website during the mornings on weekdays?” Questions like this had been very difficult to get answered in Insights.
To provide answers to questions like this, along with a slew of other important use cases, we are happy to announce that we have released our new SINCE functionality to all Insights users as of today!
A new query syntax
This new query syntax for NRQL (Insights’ query language) lets you ask such questions as, “How many checkout events did we have from 9 a.m. – 5 p.m. today?” or “What was our backend response time like during our peak load hours today?” or even “How did our error rate change on Transactions during our maintenance window on Sunday?”
The new functionality also lets you implicitly exclude particular time ranges—maintenance windows, for example, or periods when you’re doing a reboot of your Web servers—by simply not including them in your queries.
To make this even easier, we’ve added several pre-set time ranges that customers can use to ask questions about their applications:
- SINCE today looks at all the data starting at 00:00 of the current day
- SINCE this week looks at all the data starting at the beginning of the current week
- SINCE this month looks at all the data starting at the beginning of the current month
- SINCE this quarter looks at all the data starting at the beginning of the current calendar quarter
- SINCE this year looks at all the data starting at the beginning of the current year
- SINCE Monday/Tuesday/Wednesday… looks at all the data starting at the beginning of a given weekday
In addition, we’ve added several “helper” keywords that you can use to further customize your results. For example:
- WITH TIMEZONE will give you a full list of autocompleted, human-readable timezones to which you can constrain your query (learn more in the documentation here)
- AT: allows you to specify an exact time during the day — for example, you might want to know the answer to a question starting at 8am on a Monday.
Bonus! Standard Deviation functionality
As a bonus, we’ve also added support for a stddev() function in Insights, which will return a single standard deviation for a given attribute in Insights. For example, perhaps you want to know how variant your load times are for key transactions since Monday at 8 a.m. You could use sttddev() to find this out, as shown below:
From here, you can see that a spike occurred sometime around 9:15 a.m. You could drill down by running additional queries to see what the behavior of the application was like during that time period:
The results show that immediately preceding this spike in standard deviation, there was a significant spike in Transaction Errors starting around 8:45 a.m. and tapering off around 9:15 a.m. Given this information, you might want to investigate those classes of errors and the affected services to understand if those services are acting healthily around peak periods. In this case, the stddev() function acts as a “tip of the iceberg” indicator that shows that there was something abnormal happening with Transaction load times.
These powerful new NRQL functions are designed to help New Relic Insights users further extend the range of questions they can ask about their applications and their businesses. The functionality is now generally available to anyone using Insights. To learn more, check out the documentation here!
We are very excited to share it with you all and welcome your feedback in the New Relic Forum: https://discuss.newrelic.com/t/date-selection-today-this-week-or-something/707/71!